問題: テキスト ファイルの内容を実行可能バイナリに埋め込む方法を探しています。リソース、次の場所でアクセス可能runtime.
解決策: これを実現するには、ネイティブ Windows アプリケーションのカスタム リソースを利用します。
MSDN で定義されたユーザー定義リソース、は:
nameID typeID filename
ここで:
リソースにエントリを追加してテキスト ファイルを埋め込みますfile:
IDR_MYTEXTFILE TEXTFILE "mytextfile.txt"
リソース ID (nameID および typeID) と resource.h ファイルが一貫していることを確認してください。
に必要な Windows ヘッダーを組み込み、ファイルをロードする関数を定義します。 resource:
#include <windows.h> #include <cstdio> #include "resource.h" void LoadFileInResource(int name, int type, DWORD& size, const char*& data) { // ... (Error checking omitted for clarity) HRSRC rc = ::FindResource(handle, MAKEINTRESOURCE(name), MAKEINTRESOURCE(type)); HGLOBAL rcData = ::LoadResource(handle, rc); size = ::SizeofResource(handle, rc); data = static_cast<const char*>(::LockResource(rcData)); }
使用例:
int main() { DWORD size = 0; const char* data = NULL; LoadFileInResource(IDR_MYTEXTFILE, TEXTFILE, size, data); // ... (Use the data pointer to access the resource contents) return 0; }
注:
以上がネイティブ Windows アプリケーションにテキスト ファイルをリソースとして埋め込むにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。