Чтение из встроенного потока ресурсов - PullRequest
0 голосов
/ 16 апреля 2010

Я пытался получить доступ к ресурсу изображения с именем «IndexPointer.jpg» во встроенном файле RESX с именем «Images.resx». GetManifestResourceNames () возвращает одно значение - SCtor.Images.resources ".

Монтаж :: GetExecutingAssembly () -> GetManifestResourceStream ( "SCtor.Images.resources.IndexPointer.jpg")

возвращает только nullptr. Очевидно, я неправильно указал название манифеста. Что будет правильным?

Ответы [ 2 ]

0 голосов
/ 29 апреля 2010

Ну, я наконец понял это. Странно, я вспоминаю, что сталкивался (и пробовал) с рабочим решением и не обращал на него внимания. В любом случае я создал экземпляр объекта ResourceManager с ресурсом моей сборки и использовал его метод GetObject для извлечения встроенного изображения.

ResourceManager^ resources = gcnew ResourceManager("<rootNamespace>.<resourceName>", Assembly::GetExecutingAssembly());
Bitmap^ Image1 = gcnew Bitmap(dynamic_cast<Image^>(resources->GetObject("<nameOfTheImageResourceWithoutItsExtension>")));
0 голосов
/ 29 апреля 2010

Откройте сборку с помощью Reflector, чтобы узнать правильное имя ресурса.

...