2011-01-17 11 views
5

esta es mi primera pregunta aquí.C# - Integración de datos (imágenes) en .exe

He hecho un pequeño proyecto de cuestionario sobre los 199 estados del mundo a través de Visual Studio C#. por lo tanto, recogí todas las banderas de todos los países y las puse en una carpeta; te puedes imaginar que recogí MUCHAS.

Para ejecutar mi proyecto actual, necesito la carpeta con todas estas imágenes .gif - de lo contrario, el inicio finalizará en un error fatal. :-(

Mi pregunta es si es posible integrar las imágenes en mi archivo .exe para que pueda ejecutarlo sin esa carpeta desagradable. (También es importante para el futuro proyecto con aún más contenido!)

Y si es posible, ¿cómo? También sería bueno si me dejaras saber cómo usar las imágenes, qué pathes tienen, etc. ... =)

¡Gracias de antemano!

Robbepop

Respuesta

9

se puede añadir un archivo de recursos a su aplicación, yendo al Proyecto

>> propiedades del proyecto >> Recursos >> Crear un archivo de recursos.

Puede simplemente agregar cualquier imagen a su aplicación y hacer referencia a ella a través de su código. Seleccionar Images en el menú desplegable en la parte superior del menú, y luego haga clic en Add Resource >> From existing file.

Después de guardar el archivo de recursos, a continuación, puede acceder a sus imágenes a través de código, por ejemplo,

> Image img = 
> YourProject.Properties.Resources.Image1 

Sin embargo, con el número de imágenes que tiene, y lo que yo creo que los utilizan con, se recomienda usar un Image List, el cual puede añadir todas sus imágenes a, y acceder a ellos a través de su clave o índice. p.ej.

Image img = imageList1[0]; 

O

Image img = imageList1["US"]; 

esto se puede encontrar en su caja de herramientas.

3

Cada ensamblaje en .NET pueden contener los llamados recursos. Puede agregarlos en las propiedades de un proyecto en la pestaña de recursos. Después de eso, puede acceder a ellos a través del ProjectNameSpace.Properties.Resources.

5

Puede agregar las imágenes como recursos incrustados. A continuación, utilice ManifestResourceStream del ensamblado para extraer los datos de bytes sin formato y, a continuación, cargarlos como una imagen.

Nota: esto es diferente de la respuesta/enfoque de Femaref a continuación.

Cuestiones relacionadas