If you are having problems launching things like setup.exe or applications that require admin rights you might suspect a problem with SWF Studio. What you are really running into is the UAC security system in Windows Vista and Windows 7.

There are several checks that Windows now performs to determine whether the application you are trying to launch requires administrator rights. If the application has a manifest that specifically requires administrator rights or if the application has the words "setup", "install" (and a few others) in the name then it will require privilege elevation - that's when you are presented with the user access control (UAC) prompt.

When your application runs it probably doesn't have administrator rights unless you've modified or added an application manifest. Trying to launch an application that requires administrator rights using ssCore.Shell.execute will result in a "create process failed" error. The new security model says that a child process cannot have a higher privilege than it's parent.

Your choices at this point are (i) make sure your application has administrator rights or (ii) find another way to launch applications that creates them as separate processes so UAC won't prevent us from launching them.

If you use ssCore.Shell.open to launch the application then the new application is not considered a child process. This time, when Windows sees that the new application requires administrator privileges the user will be asked if it's okay to elevate the privilege level of the new process. This puts control over who gets administrator rights on the machine firmly in the hands of the user, as it should be.

There only drawback to this approach is that you lose some of the power that ssCore.Shell.execute gives you over the application you are launching (like the ability to position the new application window). If you're just launching a setup application or an installer then this really isn't an issue.