Question

I will appreciate so much an step-by-step guide of how to enable the SFX class inside the SevenZipSharp source as mentioned here:

How to create a SFX ZIP with SevenZipSharp?

...To get the functionality to create SFX files using SevenZipSharp.

The source files: http://sevenzipsharp.codeplex.com/downloads/get/145910

Was it helpful?

Solution

private void button1_Click(object sender, EventArgs e)
    {
        SevenZipCompressor comp = new SevenZipCompressor(@"c\Temp\");
        SevenZipCompressor.SetLibraryPath(@"C:\Users\i.cil\Desktop\7zip\SevenZip\7z.dll");
        comp.ArchiveFormat = OutArchiveFormat.SevenZip;
        comp.CompressionLevel = CompressionLevel.Ultra;
        comp.CompressionMethod = CompressionMethod.Lzma;
        comp.CompressionMode = CompressionMode.Create;
        comp.CompressFiles(@"c:\Temp\Temp.7z", @"C:\Temp\CentAppLOG13-Sep-13010004.bak");

        SfxModule mdl = SfxModule.Extended;

        SevenZipSfx sfx = new SevenZipSfx(mdl);

        sfx.ModuleFileName = @"C:\Users\i.cil\Desktop\7zip\SevenZip\sfx\7zxSD_LZMA.sfx";
        sfx.MakeSfx(@"c:\Temp\Temp.7z",
                    new Dictionary<string, string> 
                    { 
                        { "Title", "ATIG Platform" }, 
                        { "InstallPath", ProgramFilesx86() + "\\ATIG Platform" },
                        { "BeginPrompt", "Yükleme işlemi başlatılsın mı?" },
                        { "CancelPrompt", "Yükleme işlemi iptal edilecek?" },
                        { "OverwriteMode", "2" },
                        { "GUIMode", "1" },
                        { "ExtractDialogText", "Dosyalar ayıklanıyor" },
                        { "ExtractTitle", "Ayıklama İşlemi" },
                        { "ErrorTitle", "Hata!" }
                    }, 
                    @"c:\Temp\Temp.exe");
    }

    static string ProgramFilesx86()
    {
        if (8 == IntPtr.Size
            || (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))))
        {
            return Environment.GetEnvironmentVariable("ProgramFiles(x86)");
        }

        return Environment.GetEnvironmentVariable("ProgramFiles");
    }
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top