1

我需要使用静态库加载 dll 我知道如何加载 dll 但我无法锻炼如何将我的字符数组添加到加载库。我曾尝试使用 for 循环,但它不会在加载库括号内运行。我不能使用字符串,因为它违反了我给出的规范。

int PlayARound(int &score, int &numAsked, char roundName[])
{
    HINSTANCE hinstLib;
    getQuesPnt ProcAdd;
    BOOL fFreeResult, fRunTimeLinkSuccess = FALSE;

    hinstLib = LoadLibrary();
}

我应该说这是家庭作业,所以我不是在寻找一个完整的解决方案,只是为了指向正确的方向。

4

1 回答 1

2

正如在评论中发现的那样,您只需将数组转换为LPCTSTR

hinstLib = LoadLibrary((LPCTSTR)roundName);

但是,正确的方法是更改​​声明

int PlayARound(int &score, int &numAsked, LPCTSTR roundName);

然后使用TEXT宏使您的程序具有 unicode 意识

PlayARound(score, numAsked, TEXT("demo.dll"));
于 2012-11-21T11:58:33.417 回答