问题
I have created hallo.7z and used 7zxSD_LZMA.sfx as module. I think my configuration is right but while extracting sfx I receive
7-zip : unsupported method
void CreateExeFile()
{
try
{
SfxModule mdl = SfxModule.Extended;
SevenZipSfx sfx = new SevenZipSfx(mdl);
sfx.ModuleFileName = @"7zxSD_LZMA.sfx";
sfx.MakeSfx("D:\\hallo.7z",
new Dictionary<string, string>
{
{ "Title", "Extract Files" },
{ "InstallPath", ProgramFilesx86() + "\\ATIG Platform" },
{ "BeginPrompt", "Choose directory },
{ "CancelPrompt", "Extract Now" },
{ "OverwriteMode", "0" },
{ "GUIMode", "1" },
{ "ExtractDialogText", "Process Extract" },
{ "ExtractTitle", "Extract Files" },
{ "ErrorTitle", "Error" }
},
"D:\\hallo.exe");
MessageBox.Show("Success !");
}
catch (IOException ex)
{
MessageBox.Show(this, ex.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
static string ProgramFilesx86()
{
if (8 == IntPtr.Size
|| (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))))
{
return Environment.GetEnvironmentVariable("ProgramFiles(x86)");
}
return Environment.GetEnvironmentVariable("ProgramFiles");
}
7zxSD_LZMA.sfx and 7zxSD_All can't run the extraction because used password.
回答1:
I understood why it is showing so. This happended to me too. This is the reason which I found out: This SFX module does not support LZMA2 Archives and support only LZMA. So you will need to rebuild the archive as LZMA.
Regards :)
来源:https://stackoverflow.com/questions/20822163/why-sfx-sevenzipsharp-7-zip-unsupported-method-when-extract