私は問題があります。私のdllには、次のように定義されている関数があります。
int function(char *inVal, char *outVal, int *retVal)
LoadLibraryを使用してコンソールアプリケーションにdllを正常にロードし、関数ポインターを使用して関数を呼び出します。
typedef int (__cdecl *functionPtr)(char *, char *,int *);
次に、inValを関数に渡します。
char * inVal = "input";
ここで、outValとretValを取得したいのですが、retValは正常に取得されましたが、outValはNULLです。
int retVal = 0;
char outVal[200] = {0};
次に、関数を呼び出します。
int return = functionLNK(inVal , outVal, &retVal)
どんな手掛かり?!!
編集1:
コードは次のとおりです。
int function(char *inVal, char *outVal, int *retVal)
{
PKI_Buf inBuf, signBuf, pemBuf;
......
outVal = (char*)pemBuf.data;
//I check outVal in this point and it is not NULL
}