How To Store Files In An EXE

S3THST4 picture S3THST4 · Feb 8, 2009 · Viewed 25.1k times · Source

Alright, so I'm working on programming my own installer in C#, and what I'd like to do is something along the lines of put the files in the .exe, so I can do File.Copy(file, filedir);

Or, if this isn't possible, is there another way of doing what I am attempting to do?

Answer

Shawn Miller picture Shawn Miller · Feb 9, 2009

I wouldn't code my own installer, but if you truely want to embed files into your assembly you could use strongly typed resources. In the properties dialog of your project open up the "Resources" tab and then add your file. You'll then be able to get the file using:

ProjectNamespace.Properties.Resources.MyFile

Then you'll be able to write the embedded resource to disk using:

System.IO.File.WriteAllBytes(@"C:\MyFile.bin", ProjectNamespace.Properties.Resources.MyFile);