informatikerin86 Geschrieben 20. April 2009 Geschrieben 20. April 2009 Hey Leute, meine Anwendung steht mittlerweile soweit, dass ich mich gewagt habe einen Test mit der exe-Datei durchzuführen. Blöderweise kann ich meine Anwendung noch so oft schließen, der Prozess läuft weiterhin, dies wird natürlich bei nochmaligem starten des Programms ein Problem. Weiß jemand an was das liegen könnte? Ich hab mit VB.net programmiert. LG Informatikerin Zitieren
DominikJ Geschrieben 20. April 2009 Geschrieben 20. April 2009 Huhu, wie verhält sich denn dein Programm beim Debuggen und der gleichen 'Schließmethode'? Greifst du diese iwie ab? Vonwegen Abfrage ob man das Programm wirklich beenden will? (Ich hasse das, es sei denn es wird nach speichern gefragt) Beendest du alle Forms vorher korrekt oder versteckst du sie nur? Gib ma nen bissl Infos Gruß Dominik Zitieren
informatikerin86 Geschrieben 20. April 2009 Autor Geschrieben 20. April 2009 Danke für deine Antwort! Aber da stoße ich nicht mehr an Grenzen, da bin ich längst drüber hinweg... Was kann man denn gegen ein Speicherleck machen?? Zitieren
informatikerin86 Geschrieben 20. April 2009 Autor Geschrieben 20. April 2009 Beim debuggen bleibt die anwendung solange als Prozess bestehen bis ich den debugger beende. Die Frage nach den Forms ist gut! Ich denke hide() versteckt diese nur, d.h. ich sollte die erstmal beenden... Zitieren
TDM Geschrieben 20. April 2009 Geschrieben 20. April 2009 Was kann man denn gegen ein Speicherleck machen?? Evtl. Datenbankverbindungen schließen, Events detachen, Services entladen. Für sowas eignet sich IDisposable. Zitieren
DominikJ Geschrieben 20. April 2009 Geschrieben 20. April 2009 Ich denke hide() versteckt diese nur, d.h. ich sollte die erstmal beenden... Das ist vollkommen korrekt Wenn du diese nicht direkt schließen willst, gibt es die Möglichkeit alle offenen Forms zu durchlaufen und diese zu schließen. For i As Integer = My.Application.OpenForms.Count - 1 To 0 Step -1 If My.Application.OpenForms.Item(i) IsNot Me Then My.Application.OpenForms.Item(i).Close() End If Next i Wobei ich meine, dass ein Application.exit() reichen sollte... Zitieren
informatikerin86 Geschrieben 20. April 2009 Autor Geschrieben 20. April 2009 DANKE!! Application.Exit() klappt wunderbar, es beendet damit automatisch den debugger. Ist ne gute Alternative dazu jetzt alle me.hide() zu suchen und zu ersetzten, vor allem da ich diese absichtlich eingebaut habe! Jetzt habe ich allerdings noch ne andere, ähnliche, Frage: Ich öffne in der Anwendung eine Excel-Datei, normalerweise kann ich diese ja dann über beenden schließen. Der Prozess ist in dem Fall aber noch da, selbst mein xlsapp.Workbooks.Close() hat da nicht geholfen. Nach beenden der Anwendung habe ich immernoch den Excel-Prozess drin stehen. Zitieren
Gateway_man Geschrieben 20. April 2009 Geschrieben 20. April 2009 er hätte natürlich auch beim closing event vom hauptform einfach schreiben können form1.dispose() . Wäre zwar unsauber gewesen aber geschossen wäre diese dann. Zitieren
DominikJ Geschrieben 20. April 2009 Geschrieben 20. April 2009 Jetzt habe ich allerdings noch ne andere, ähnliche, Frage: Ich öffne in der Anwendung eine Excel-Datei, normalerweise kann ich diese ja dann über beenden schließen. Der Prozess ist in dem Fall aber noch da, selbst mein xlsapp.Workbooks.Close() hat da nicht geholfen. Nach beenden der Anwendung habe ich immernoch den Excel-Prozess drin stehen. Ja, Workbooks ist auch nicht ganz korrekt. Wenn musst du die Application beenden: xlsapp.Application.Quit() wobei dies bei meinen Tests auch nicht klappt ... Wenn ich ne Lösung find Poste ich sie, es sei denn du bist schneller Zitieren
informatikerin86 Geschrieben 20. April 2009 Autor Geschrieben 20. April 2009 Juhu es funktioniert. Ich habe jetzt zum einem überall Application.quit() eingefügt und dann doch mit xlsapp.Application.Quit() gearbeitet. Nun ist mein Anwendungs-Prozess und mein Excel-Prozess beendet!!! Danke Dominik, dich merk ich mir für mein nächstes Problem! Zitieren
DominikJ Geschrieben 20. April 2009 Geschrieben 20. April 2009 Grml... Und mein Excel geht und geht nicht zu Aber schön das es bei dir nun klappt How to automate Microsoft Excel from Visual Basic .NET Zitieren
grueni Geschrieben 3. Mai 2009 Geschrieben 3. Mai 2009 Mit bjiggers Problem geht es hier weiter: http://forum.fachinformatiker.de/anwendungssoftware/127277-ms-office-prozess-beendet.html Hat mit .NET nicht wirklich was zu tun, in der Anwendungsecke ist das besser aufgehoben. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.