2015-08-16 4 views
2

У меня есть проект C#, и я использую некоторые встроенные изображения в этом проекте. Эти изображения находятся в ресурсах проекта, и я использую их в нескольких частях моего приложения. Теперь мне нужно, чтобы некоторые из этих изображений были рядом с моим .exe file. И мне нужно сделать это динамически, когда программа запущена. Итак, как я упоминал в названии этого вопроса, я собираюсь извлечь файлы, встроенные в мое приложение. Функция, как это:Как извлечь изображение из ресурсов?

public static void Extract(Bitmap imageToExtract, string destination); 

Это будет называться так:

Extract(WindowsFormsApplication1.Properties.Resources.PICT); 

Edit: Я не могу использовать то, что описано в How can I extract a file from an embedded resource and save it to disk?. Потому что мне нужны мои ресурсы, чтобы быть приватными, и поэтому не позволяйте другим забирать это.

+1

возможно дубликат [Как я могу извлечь файл из внедренного ресурса и сохранить его на диск] (http://stackoverflow.com/questions/13031778/how-can-i-extract -a-file-from-in-embedded-resource-and-save-it-to-disk), а также [This] (http://stackoverflow.com/questions/864140/write-file-from-assembly-resource -stream-to-disk), и вы можете найти ответ даже [здесь] (http://stackoverflow.com/questions/17936679/save-image-from-resource-file-to-computer-c-sharp) – Banana

+0

@Banana: Теперь я попробовал это. Поверь мне, это не сработает. –

+0

В таком случае, пожалуйста, напишите в своем вопросе, что вы пробовали, и почему он не работает для вас (ошибка, исключение? И т. Д.) – Banana

ответ

3

Я думаю, это не так сложно. Попробуйте это:

public static void Extract(Bitmap imageToExtract, string destination) { 
    System.IO.File.WriteAllBytes(
     destination, 
     ImageToByte(
      imageToExtract 
     ) 
    ); 
} 
Смежные вопросы