调用动态库!
导读:本文共1379字符,通常情况下阅读需要5分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: #include<windows.h>#include<iostream>//客户端初始化 获取handle上下typedef int(*CltSocketInit)(void **handle);//客户端发报文typedef int(*CltSocketSend)(void *handle, unsigned char *buf, i... ...
目录
(为您整理了一些要点),点击可以直达。#include<windows.h>
#include<iostream>
//客户端初始化 获取handle上下
typedef int(*CltSocketInit)(void **handle);
//客户端发报文
typedef int(*CltSocketSend)(void *handle, unsigned char *buf, int buflen);
//客户端收报文
typedef int(*CltSocketRev)(void *handle, unsigned char *buf, int *buflen);
//客户端释放资源
typedef int(*CltSocketDestory)(void *handle);//以上都是指针函数
int main(){
HINSTANCE hinstance = NULL;
hinstance = ::LoadLibrary("D:\\SocketClient.dll");//获得句柄
CltSocketInit cltSocketInit = (CltSocketInit)GetProcAddress(hinstance, "cltSocketInit");//获取函数地址传给函数指针!
CltSocketSend cltSocketSend = (CltSocketSend)GetProcAddress(hinstance, "cltSocketSend");
CltSocketRev cltSocketRev = (CltSocketRev)::GetProcAddress(hinstance, "cltSocketRev");
CltSocketDestory cltSocketDestory = (CltSocketDestory)::GetProcAddress(hinstance, "cltSocketDestory");
void *handle = NULL;
unsigned char buf[100];
int buflen = 10;
memcpy(buf, "ddddddddddssssssssss", 10);
unsigned char out[100] = { 0 };
int outlen = 0;
int ret = cltSocketInit(&handle);
ret = cltSocketSend(handle, buf, buflen);
ret = cltSocketRev(handle, out, &outlen);
ret = cltSocketDestory(handle);
printf("out:%s", out);
system("pause");
}
调用动态库!的详细内容,希望对您有所帮助,信息来源于网络。