Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Loading a raw File from Resource

Whats the easiest way to load a raw file from a resource in C++ using the WinAPI? I just want to load the file(for example .txt) into a char array. I searched on the internet but I couldn't really find something useful and simple like LoadStringFromFile(int idFromResource, char* buffer).

like image 526
user3075425 Avatar asked Jun 18 '26 07:06

user3075425


1 Answers

Take the following steps:

  1. Call FindResource passing module handle, resource type and resource name. This yields a HRSRC. Note that if you have a resource ID rather than a resource name, use MAKEINTRESOURCE to convert.
  2. Call LoadResource passing the HRSRC from the previous step. This yields an HGLOBAL.
  3. Call LockResource passing the HGLOBAL. This yields a pointer to the first byte of the resource.
  4. Call SizeofResource passing the HRSRC to find the size of the resource.
  5. Copy the content of the resource into your buffer using the pointer retrieved from step 3, and the size retrieved from step 4.
like image 193
David Heffernan Avatar answered Jun 20 '26 22:06

David Heffernan



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!