這裏的情況:GET字符串中另一個DLL
我做了一個DLL與功能1裏面如下:在最後一行outVal指向dn.commonname
int function1(char *inVal, char *outVal)
{
....
strcpy(outVal,dn.commonname.c_str());
}
這是一個字符串。
我用LoadLibrary成功加載了另一個dll的dll。在第二個DLL我有:
int function1(string inval, string &outVal)
{
typedef int (WINAPI *func1Ptr)(char *, char *);
char outValPtr[128] = {0};
int retVal = func1Lnk((char *)inVal.c_str(), outValPtr);
string outVal = outValPtr;
}
現在,我加載的dll第二在我的代碼,並呼籲fnuction1,但是當我檢查函數的第二個參數,我得到空。
任何人都可以對此有所瞭解嗎?
EDIT-1
我改變了我的代碼:
int function1(string inVal, string &outVal)
{
typedef int (WINAPI *func1Ptr)(char *, char *);
char outValPtr[128] = {0};
int retVal = func1Lnk((char *)inVal.c_str(), outValPtr);
outVal = outValPtr;
}
但問題並沒有解決。任何線索?
如果您發現答案有幫助,請點擊答案左邊的複選標記以表明您的接受。 – 2013-03-05 07:21:20