Visual C++で基本的な文字列テーブルリソースを作成しました。私はそのリソースにアクセスしようとしています。しかし、私のプログラムはリソースを見つけることができません。ここでは:Visual C++ 2010でリソース文字列を開く方法は?
int main(int argc, char* argv[])
{
HRSRC hRsrc;
hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDS_STRING102), RT_STRING);
if (hRsrc == NULL) {
printf("Not found\n");
} else {
printf("Found\n");
}
}
このプログラムはリソースを見つけることができず、常にnullを返します。
私は単純なビットマップリソースを作成しましたが、この新しいプログラムはちょうど良いことを識別します。ここで:
int main(int argc, char* argv[])
{
HRSRC hRsrc;
hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDB_BITMAP1), RT_BITMAP);
if (hRsrc == NULL) {
printf("Not found\n");
} else {
printf("Found\n");
}
}
これはビットマップを検索します。
文字列型リソースは何らかの形で処理されますか?
' MAKEINTRESOURCE((IDS_STRING102> > 4)+1) 'となる。 'LoadString'を使うのがずっと簡単です...'FindResource'は直感的な文字列読み込みのために作られたものではありません。 :( – Ben