[Visual Studio] Uninstall Projekt?

Es tut mir wirklich unendlich leid, nenn mich total blöd, aber es klappt einfach nicht. Ich hab jetzt den ordner mit ALLES Dateien meines Programms hier rein gestellt. Ich bin am Ende Sorry

Bitte gebt mich nicht auf =)
 

Anhänge

  • SMS-Archiv.zip
    3,5 MB · Aufrufe: 15
Keine Sorge... habe im Moment leider keine Gelegenheit den Code zu testen, ich werde, wenn es zeitlich passt, das heute Abend mal ausprobieren.

Die grundsätzliche Funktionsweise ist eben die, dass das Programm die Parameter auswertet, die beim Programmstart mit übergeben werden und auf den Parameter "/u" reagiert. Daraufhin sollte die Deinstallation gestartet werden und das Programm beendet werden.

Prüfe bitte nochmal, ob du tatsächlich das Programm mit Programmname.exe /u startest. Debugge, ob dieser Parameter entsprechend verarbeitet wird und Process.Start(si); aufgerufen wird.
 
Ich weiß jetzt wwerde ich übermütig, aber wenns nicht all zu viele umstände macht, kannste dann auch mal einen blick auf die f_Auslesen Form werfen und schaun warum meine im dataGridView geänderten daten nicht in die datenbank geschrieben werden.

dataadapter.update(dataTable) ist zwar nicht mehr drinnen, aber als es drin war, hats auch nicht funktioniert.

und... Tausend dank für eine Mühe
 
Hi

Hast du mal geprüft, ob die Argumente korrekt sind?
Was steht genau in der Verknüpfung? Hast du mal geprüft, ob es für die GUID auch einen Eintrag in der Registry gibt?
Außerdem muss glaub ich statt /i /uninstall als Parameter an msiexec übergeben werden.
Und: Da du den Code in die Main-Methode gepackt hast, kannst du auch den Aufruf der Funktion Close entfernen.
 
Also, nochmal: Hast du mit deinem Debugger geprüft, ob der Code ausgeführt wird? Ob die Parameter soweit stimmen, ob genau das ankommt, was erwartet wird. Ob Proccess.Start tatsächlich ausgeführt wird...

Mehr als dir zu sagen wie es gehen könnten, geht ja nicht...
 
Okay, ich habe rum getestet und einiges an Debugg_MessagesBoxen eingebaut um zu sehen bei welcher Zeile er aufhört. Also, er geht 2 mal durch die Foreach schleife und bricht dann ab, also geht normal im porgramm weiter und startet normal mein programm.
Soll also heißen, dass er garnicht bis zum Proccess.Start kommt.

Ich hab dir doch das komplette programm mal hier online gestellt, du wolltest doch mal schaun woran es liegen könnte.


Code:
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Diagnostics;

namespace SMS_Archiv
{
    static class Program
    {
        /// <summary>
        /// Der Haupteinstiegspunkt für die Anwendung.
        /// </summary>
        [STAThread]
        static void Main()
        {
            string[] arguments = Environment.GetCommandLineArgs();
            MessageBox.Show("schritt 1");
            foreach (string argument in arguments)            
            {
                MessageBox.Show("schritt 2");
                if (argument.Split(new char[] { '=' }, 0).ToString().ToLower() == "/u")
                {
                    MessageBox.Show("schritt 3");
                    string guid = argument.Split(new char[] { '=' }, 1).ToString();
                    string path = Environment.GetFolderPath(Environment.SpecialFolder.System);
                    ProcessStartInfo si = new ProcessStartInfo(path + "\\msiexec.exe", "/i " + guid);
                    MessageBox.Show("schritt 4");
                    Process.Start(si);
                    //Close();
                    Application.Exit();
                    System.Environment.Exit(0);
                    MessageBox.Show("schritt 5");
                }
            }


            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new f_Hauptmenue());
        }
    }
}
 
Zuletzt bearbeitet:
:-(
Es tut mir leid, dass ich wieder nach einer möglichen Antwort frage, die zur Lösung meines Problemes beiträgt.
 
Zuletzt bearbeitet:
Und ich werde langsam müde, ständig auf unsere Netiquette hinzuweisen. Groß- und Kleinschreibung, korrekte Grammatik und eine lesbare Satzstellung sind bei uns ein essentieller Bestandteil der Forums-Kultur. Halte dich bitte daran.
 
Der Code funktioniert soweit. Ich schätze du fütterst die Kommandozeilenparameter nicht korrekt, du musst das Programm entsprechend mit Dateiname.exe /u=[ProductCode] aufrufen.
Was du genau machen sollst ist exakt im Codeproject-Link weiter oben beschrieben.

Desweiteren solltest du den DEBUGGER nutzen. Dieses Werkzeug ermöglicht es dir unter anderen deinen Code Schrittweise zu durchlaufen um eventuelle Fehler aufzuspüren. Das mit den Messageboxen führt zu nichts vernünftigen.
 

Neue Beiträge

Zurück