Example #1
0
    public static void BuildGeneralSample(string msiFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Prerequisite =
            {
                FileName    = "Prerequisite.msi",
                PostVerify  = true,
                RegKeyValue = @"HKLM:Software\My Company\My Product:Installed"
            },

            Primary = { FileName = msiFile },

            OutputFile = "MyProduct.exe",
            IconFile   = "app_icon.ico",

            VersionInfo = new VersionInformation("1.0.0.0")
            {
                ProductName      = "Test Application",
                LegalCopyright   = "Copyright Test company",
                FileDescription  = "Test Application",
                FileVersion      = "1.0.0",
                CompanyName      = "Test company",
                InternalName     = "setup.exe",
                OriginalFilename = "setup.exe"
            },

            SplashScreen = new SplashScreen("wixsharp.bmp")
        };

        bootstrapper.Build();
    }
Example #2
0
    public static void BuildScriptSample(string msiFile, string prerequisiteFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Prerequisite = { FileName = prerequisiteFile },
            Primary      = { FileName = msiFile },
            OutputFile   = "MyProduct" + Path.GetExtension(prerequisiteFile) + ".exe"
        };

        bootstrapper.Build();
    }
Example #3
0
    static public void Main()
    {
        var setup = new NsisBootstrapper();

        setup.DoNotPostVerifyPrerequisite = true;
        setup.PrerequisiteFile            = "NDP451-KB2859818-Web.exe";
        setup.PrimaryFile             = "MainProduct.msi";
        setup.OutputFile              = "MainProduct.exe";
        setup.PrerequisiteRegKeyValue = @"HKLM:SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.5:";

        setup.Build();
    }
Example #4
0
    public static void BuildScriptSampleWithOSValidationWin7(string msiFile, string prerequisiteFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Prerequisite = { FileName = prerequisiteFile },
            Primary      = { FileName = msiFile },
            OutputFile   = "NotSupported7" + Path.GetExtension(prerequisiteFile) + ".exe"
        };

        bootstrapper.OSValidation.UnsupportedVersions.Add(new WindowsVersion(WindowsVersionNumber._7));

        bootstrapper.Build();
    }
Example #5
0
    public static void BuildScriptWithCompressor(string msiFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Primary    = { FileName = msiFile },
            OutputFile = "BuildScriptWithCompressor.exe"
        };

        // Uncomment following to see resulting NSIS script in console
        // bootstrapper.NsiSourceGenerated += builder => Console.WriteLine(builder);
        bootstrapper.Compressor = new Compressor(Compressor.Method.Lzma, Compressor.Options.Final | Compressor.Options.Solid);
        bootstrapper.Build();
    }
Example #6
0
    public static void BuildScriptSampleWithOsValidationMultiple(string msiFile, string prerequisiteFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Prerequisite = { FileName = prerequisiteFile },
            Primary      = { FileName = msiFile },
            OutputFile   = "NotSupportedMultiple" + Path.GetExtension(prerequisiteFile) + ".exe"
        };

        bootstrapper.OSValidation.MinVersion = WindowsVersionNumber._7;
        bootstrapper.OSValidation.UnsupportedVersions.Add(new WindowsVersion(WindowsVersionNumber._7, 1));
        bootstrapper.OSValidation.UnsupportedVersions.Add(new WindowsVersion(WindowsVersionNumber._10));

        bootstrapper.OSValidation.TerminateInstallation = false;
        bootstrapper.OSValidation.ErrorMessage          = "Hello from custom error message!";

        bootstrapper.Build();
    }
Example #7
0
    public static void Main(string[] args)
    {
        // If `Prerequisite.msi` does not exist yet execute <Wix# Samples>\Bootstrapper\NsisBootstrapper\Build.cmd

        var project = new ManagedProject("MainProduct",
                                         new ManagedAction(CustomActions.MyAction, Return.ignore, When.After, Step.InstallInitialize, Condition.NOT_Installed));

        project.ManagedUI = ManagedUI.Default;

        var msiFile = project.BuildMsi();

        if (System.IO.File.Exists(msiFile))
        {
            var bootstrapper = new NsisBootstrapper
            {
                DoNotPostVerifyPrerequisite = false,
                PrerequisiteFile            = "Prerequisite.msi",
                PrimaryFile             = msiFile,
                OutputFile              = "MyProduct.exe",
                PrerequisiteRegKeyValue = @"HKLM:Software\My Company\My Product:Installed",

                IconFile = "app_icon.ico",

                VersionInfo = new VersionInformation("1.0.0.0")
                {
                    ProductName      = "Test Application",
                    LegalCopyright   = "Copyright Test company",
                    FileDescription  = "Test Application",
                    FileVersion      = "1.0.0",
                    CompanyName      = "Test company",
                    InternalName     = "setup.exe",
                    OriginalFilename = "setup.exe"
                },

                SplashScreen = new SplashScreen("wixsharp.bmp")
            };

            bootstrapper.Build();
        }
    }
Example #8
0
    // Arguments passing examples:
    //  MyProductArgs.exe /primary:"/qn" /prerequisite:"/passive /norestart"
    //  MyProductArgs.exe /primary:"PARAM1=VAL1"
    //  MyProductArgs.exe /qn
    public static void BuildArgumentsSample(string msiFile)
    {
        var bootstrapper = new NsisBootstrapper
        {
            Prerequisite =
            {
                // See @"Assets\DotNet.ps1" for VBS example
                FileName       = @"Assets\DotNet.ps1",
                OptionName     = "/prerequisite:",
                Arguments      = @"/log %TEMP%\MyProductArgs_DotNetLog.html",
                CreateNoWindow = false,
                // Condition to check for presence of .Net 4.5 Framework.
                // PrerequisiteRegKeyValue = @"HKLM:SOFTWARE\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.5:"

                Payloads       =
                {
                    new Payload(@"Assets\Payload.txt"),
                    new Payload(@"Assets\Payload.txt")
                    {
                        Name   = @"Destination\Payload.txt"
                    }
                }
            },

            Primary =
            {
                FileName   = msiFile,
                OptionName = "/primary:",
                // $EXEPATH - The full path of the installer executable.
                Arguments  = @"/L*V %TEMP%\MyProductArgs_Msi.log EXEPATH=""$EXEPATH"""
            },

            OutputFile = "MyProductArgs.exe"
        };

        bootstrapper.Build();
    }