-1

既存の DLL の結果に基づいて、DLL のエクスポートされた関数を再作成しようとしています。その理由は、この DLL が非常に古いソフトウェアに読み込まれ、DLL の作成方法に関するドキュメントが不足しているためです。

これは DUMPBIN /exports の結果です ごみ箱の輸出

ドキュメントには、関数ヘッダーは次のようにする必要があると記載されています。

DLLEXPORT long WINAPI User_Write(char *Command, char *Parameter)

しかし、その正確な行を使用して出力を複製する方法が見つからないため、次の関数ヘッダーを使用して DLL を作成しました。

extern "C" __declspec(dllexport) long __cdecl User_Write(char *Command, char *Parameter)

この DLL を DUMPBIN /exports でエクスポートすると、次のようになります。

ここに画像の説明を入力

似ていますが同じではなく、ソフトウェアが DLL を受け入れていません。ここで本当に助けが必要です!

4

1 に答える 1

0

呼び出し規約を変更してみてください extern "C" __declspec(dllexport) long __stdcall User_Write(char *Command, char *Parameter)

于 2016-11-03T11:06:20.467 に答える