トピックの説明/タイトルが示すように、Google やその他の情報源を検索していて、運が悪くて質問をするためにここに来たので、これは可能性があります...
をリソースとして最終的な実行可能ファイルに埋め込みDLL
、現在のディレクトリやシステム ディレクトリ内の外部ファイルであるかのように呼び出すことはできますか?
運が悪かったので、多くのことを試しましたが、多くの解決策がうまく機能していません。ファイルに埋め込んだように見えDLL
ます.rc
が、それを呼び出そうとするという問題に直面しています。ディスク上の物理ファイルに保存されるかどうかはわかりません。
[編集]
以下は現在、私が実装したコードですが、まだ成功していません。私はまだ直面しているThe program can't start because soandso.dll is missing from your computer.
以下のコード、-/
int WINAPI WinMain ( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd )
{
HRSRC hRes = FindResource( hInstance, MAKEINTRESOURCE("#101"), "IDR_DLLRESOURCE_101" );
HGLOBAL hData = LoadResource( hInstance, hRes );
LPVOID lpFile = LockResource( hData );
DWORD dwSize = SizeofResource( hInstance, hRes );
HANDLE hFile = CreateFile("soandso.dll", GENERIC_READ | GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
HANDLE hFilemap = CreateFileMapping(hFile, 0, PAGE_READWRITE, 0, dwSize, 0);
LPVOID lpBaseAddr = MapViewOfFile(hFilemap, FILE_MAP_WRITE, 0, 0, 0);
CopyMemory(lpBaseAddr, lpFile, dwSize);
UnmapViewOfFile(lpBaseAddr);
CloseHandle(hFilemap);
CloseHandle(hFile);
return 0;
}
提供されたすべてのヘルプに事前に感謝します。