Я делаю файл SFX с DotNetZip (Ionic.Zip.dll), но у меня есть это сообщение.Ошибки при компиляции логики извлечения!PATH \ ionic.zip- [SomeDate] .cs at Ionic.Zip.ZipFile._SaveSfxStub (параметры строки exeToGenerate, SelfExtractorSaveOptions) в объекте Ionic.Zip.ZipFile.SaveSelfExtractor (строка exeToGenerate, 100 вариантов выбора * и исключая ошибки 100) и SelfExtractorSСозданный файл cs имеет следующее сообщение: ошибка CS2005: отсутствует спецификация файла для опции '/ res:'
Я добавляю этот код в класс C # в программе, которую я поддерживаю, поэтому я делаю этоне знаю, есть ли какая-то конфигурация или разрешения, которые мне нужны, чтобы иметь возможность использовать эту DLL.У меня нет какого-либо типа подключения к Интернету, поэтому я использую DLL из "dll-found.com"
Я пытался использовать другую перегрузку этого метода, просто отправив параметр SelfExtractorFlavor.WinFormsApplication, но это делаетне работает и отправляет мне другое сообщение об ошибке (Файл не найден).
Я скачал и ссылался на Ionic.Zip.dll в моем проекте Visual Studio 2015 без Nuget или аналогичного.
try {
using (ZipFile zip = new ZipFile()) {
DirectoryInfo d = new DirectoryInfo(sRuta);
FileInfo[] Files = d.GetFiles();
foreach (FileInfo file in Files) {
if (file.Name.EndsWith(".zip") || file.Name.EndsWith(".bat") || file.Name.EndsWith(".exe") || file.Name.EndsWith(".vbs")) {
if (file.Name.EndsWith(".zip")) {
zip.CompressionLevel = Ionic.Zlib.CompressionLevel.None;
zip.AddFile(file.FullName, "");
zip.CompressionLevel = Ionic.Zlib.CompressionLevel.Default;
}
else {
zip.AddFile(file.FullName, "");
}
}
}
SelfExtractorSaveOptions options = new
SelfExtractorSaveOptions();
options.Flavor = SelfExtractorFlavor.WinFormsApplication;
options.DefaultExtractDirectory = @"E:\tmpEdify\Res_" + sBoletin;
options.ExtractExistingFile = ExtractExistingFileAction.OverwriteSilently;
zip.Save(sRuta + "\\Res_" + sBoletin + ".zip");
string sSelfExtractor = sRuta + "\\Res_" + sBoletin + ".exe";
zip.SaveSelfExtractor(sSelfExtractor, options);
}
}
catch(Exception ex) {
System.Windows.Forms.MessageBox.Show("Error:" + ex);
}
Я видел много учебных пособий, но ни один из них не представляет эту ошибку.