Good Resources

New process must be in a separate class

using namespace System::Threading;

(you can just create a new named class before the class you are currently in when working in a form etc)

	public ref class InstallerUpdaterClass
		public: static void UpdaterStartSilent(void)
				//Pause before starting
				Thread::Sleep(10000);		//mS

				String ^UpdaterFilename;
				UpdaterFilename = Path::GetDirectoryName(Application::ExecutablePath);
				UpdaterFilename += "\\" + INSTALLER_UPDATER_FILENAME;

				Process ^UpdaterProcess = Process::Start(UpdaterFilename, "/silent");
			catch (Exception ^)

Start the process in a seperate thread to the current thread

	ThreadStart ^threadDelegate = gcnew ThreadStart(&InstallerUpdaterClass::UpdaterStartSilent);
	Thread ^newThread = gcnew Thread(threadDelegate);
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.


Your email address will not be published. Required fields are marked *