GetProcAddress和函数指针 - 这是正确的吗?

时间:2013-05-10 01:26:14

标签: c++ dll

我目前在访问dll文件中的方法时遇到问题。我尝试访问的方法是类型。

int dstoch (float,float,float,float,float,float,float,float,float);

这是我正在使用的代码

typedef int (*LPMyfunct)(float,float,float,float,float,float,float,float,float);

HINSTANCE hDLL = NULL;
LPMyfunct lpdstoch;

hDLL = LoadLibrary("c:\\myfile.dll");

if(hDLL!=NULL)
{
    std::cout << "Library loaded \n";
    lpdstoch = (LPMyfunct)GetProcAddress((HMODULE)hDLL, "dstoch");

    int res = LPMyfunct(1,2,3,4,5,6,7,8,9); //this is where I am getting an error
}

编译时错误说明: a value of type LPMyfunct cannot be used to initialize an entity of type int

有关为什么它不会访问9个参数的任何建议?

1 个答案:

答案 0 :(得分:4)

LPMyfunct替换为lpdstoch