2009-08-19 6 views
1

Ich habe diese Windows Mobile-Anwendung.Wie töte ich meine mobile App?

Ich möchte eine updater.exe starten, die meine mobile App aktualisieren wird. Aber ich muss meine mobile App stoppen, bevor der Aktualisierungsprozess gestartet wird. Wie kann ich das erreichen?

Antwort

3

Was ich getan habe ist, wenn Sie die Update-Anwendung sind startet von der eigenen, führen Sie den Updater mit Process.Start("\Path\To\Updater.exe");, dann sofort die Haupt-App schließen (mit this.Close(); oder Application.Quit();. Es sollte gut funktionieren.

um aus dem Inneren der Updater die Hauptanwendung zu töten, werden Sie p/aufrufen und Systemaufruf Methoden zu finden und zu töten, die Hauptanwendung müssen Es sollte so etwas wie dieses (nicht getestet) am Ende.

class CloseWindow 
{ 
    [DllImport("coredll.dll")] 
    private static extern IntPtr FindWindow(string lpClassName, string lpWindowName); 

    [DllImport("coredll")] 
    public static extern int SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam); 

    public const int WM_CLOSE = 0x0010; 

    public static void Close(string windowName) 
    { 
     IntPtr hWnd = FindWindow(null, windowName); 
     SendMessage(hWnd, WM_CLOSE, null, null); 
    } 
}

dann rufen Sie es mit CloseWindow.Close("My Application Title");.

+0

Danke, es war genau das, was ich gesucht habe! – pdiddy