Вопрос

  

Возможный дубликат:
   .NET-приложение Windows, можно ли его сжать в один .exe?

Для запуска моего приложения мне нужны AxInterop.WMPLib.dll и Interop.WMPLib.dll, которые находятся в папке Debug and Release. Есть ли способ включить эти библиотеки в exe, чтобы мое приложение было доступно только в одном файле?

Это было полезно?

Решение

Если ваши библиотеки DLL являются сборками .NET, то ILMerge должен иметь возможность объединить ваш exe-файл и все его зависимости в один файл.

Другие советы

Вы можете использовать такой инструмент, как boxedapp или thinstall ...

Я также рекомендую boxedapp. Это отличное приложение!

Включите их как встроенные. Затем вы можете извлечь их во время выполнения.

Да, я пропустил код для записи файла ...

FileStream so=new FileStream("c:\\\wherever\\\x.dll",FileMode.Create);

so.Write(buf,0,ssize);

so.Close();

Никаких дополнительных утилит не требуется.

Например, добавьте x.dll в проект и установите для его действия Build Action значение Embedded Resource.

Извлечь:

 string AppPath=Assembly.GetExecutingAssembly().Location;
 Assembly ThisAssembly=Assembly.LoadFrom(AppPath);
 System.IO.Stream fs=ThisAssembly.GetManifestResourceStream("yourproectname.x.dll");
 int ssize=(int)fs.Length;
 byte [] buf=new byte[ssize];
 fs.Read(buf,0,ssize);
 fs.Close();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top