Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VB2010 close aus Form-Load heraus, vermeidung von System.ObjectDisposedException

Frage Entwicklung VB for Applications

Mitglied: mpmichael

mpmichael (Level 1) - Jetzt verbinden

26.05.2011 um 15:51 Uhr, 4517 Aufrufe, 10 Kommentare

wie kann man das besser lösen - oder eleganter

warum ich die Fehlermeldung bekomme ist mir klar - ich schreibe in eine TextBox innerhalb des Sub Load_Forms und löse auf Grund eines Ereignisses (IF) einen close() befehl aus.

Wie kann ich den
01.
Load_Form1 
zuende laufen lassen und danach den Close auslösen?

Stausvariable und über
01.
Shown 
gehen?

Bin wie immer für Tips sehr dankbar
Beste Grüße
mpmichael
Mitglied: MrTrebron
26.05.2011 um 17:08 Uhr
Hi

verstehe ich nicht so ganz.

Du lässt in der Load_Form eine Textbox befüllen vom System, darauf machst du eine If Abfrage und je nach Ergebnis der If Abfrage dann ein Form Close.

Bin ich da jetzt richtig? Woher kommen die Daten die in die Textbox geschrieben werden?

Gruß
Norbert
Bitte warten ..
Mitglied: mathe172
26.05.2011 um 17:10 Uhr
Hallo,

vielleicht wäre es hilfreich, wenn du die betreffenden Subs mal reinkopierst, damit man dir auch besser helfen kann.

Mit freundlichen Grüßen,
Mathe172
P.S.:Du bekommst mehr Antworten, wenn deine Frage mit "Hallo" oder "Guten Tag" beginnt
Bitte warten ..
Mitglied: mpmichael
26.05.2011 um 21:25 Uhr
Sorry ,

Es war so heiss das ich vergessen habe eine höfliche Anrede zu wählen. Sollte natürlich nicht sein.
Source stelle ich am Montag ein. Komme vermutlich vorher nicht ran.
Beste Grüße
Mpmichael
Bitte warten ..
Mitglied: mpmichael
26.05.2011 um 21:27 Uhr
Hallo,

Ja Du liebte richtig. Die Texte werden wie eine Art Log durch das Programm automatisch erzeugt.
Beste Grüße
Mpmichael
Bitte warten ..
Mitglied: mpmichael
27.05.2011 um 11:23 Uhr
Guten Morgen,

anbei die Sub's - habe sie auf die wesentlichen Zeilen Reduziert:

01.
    Private Sub LogBoxing(ByVal logtext As String) 
02.
 
03.
        '******************************************************************************************** 
04.
        '*** Log Schreibung 
05.
        '********************************************************************************************* 
06.
 
07.
        Dim ADInfo 
08.
        ADInfo = CreateObject("wscript.network") 'Abfrage der Netzwerkinformationen 
09.
        logtext = DateString & " " & TimeString & " : " & logtext & vbNewLine 
10.
        LogBox1.AppendText(logtext) 
11.
 
12.
 
13.
    End Sub
Hier der Code aus Form1_Load
01.
 
02.
   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
03.
 
04.
        Dim MeldungsText As String      'Meldungstext falls Programme offen sind 
05.
        MeldungsText = "NIX" 
06.
 
07.
        Call LogBoxing("Programmstart") 
08.
 
09.
        ' Abfrage Status IpAgent 
10.
 
11.
        If IsProcessOpen("IpAgent") = True Then 
12.
            Call LogBoxing("IPAGENT läuft bereits!") 
13.
            MeldungsText = "Achtung: Das AVAYA IP Agent (Softphone) ist bereits gestartet. Dieser muss erst geschlossen werden bevor dieses Programm ausgeführt werden kann! TelefonSwitcher wird nun beendet!" 
14.
        Else 
15.
            Call LogBoxing("IpAgent ist nicht gestartet (OK!)") 
16.
        End If 
17.
 
18.
         If MeldungsText <> "NIX" Then 
19.
            MsgBox(MeldungsText, MsgBoxStyle.Critical) 
20.
        End If 
21.
 
22.
' hier feht Code, der nicht relevant ist 
23.
 
24.
        If MeldungsText <> "NIX" Then Close() 
25.
 
26.
    End Sub
Ich hoffe das hilft weiter
Beste Grüße und Danke
mpmichael
Bitte warten ..
Mitglied: MrTrebron
27.05.2011 um 11:45 Uhr
Hi mpmichael

leider kann ich den Fehler nicht reproduzieren.

Ich gehe aber mal stark davon aus das dass letzte If noch mit einem End If abgeschlossen wird.

Da die aktuelle Form geschlossen werden soll wäre Me.Close() schöner, aber egal.

Proniere doch mal

Application.Exit()

Gruß
Norbert
Bitte warten ..
Mitglied: mpmichael
27.05.2011 um 11:50 Uhr
Hallo,

ich denke der Fehler rührt daher, das ich wärend des ladevorgangs bereits logge. Das geht auch ok, wenn nicht die Bedingungen eintreten, die in der Zeile 24 den Close auslösen - denn dann wird das Form geschlossen bevor die Meldung angezeigt wird.

Aber danke ich sehe mir mal
01.
Application.Exit() 
02.
 
an.
Beste Grüße
mpmichael
Bitte warten ..
Mitglied: mathe172
28.05.2011 um 12:34 Uhr
Hallo,

wenn ich das richtig verstehe, versucht er nach dem Close-Befehl noch weitere Befehle auszuführen, die aber fehlschlagen.

Wenn Application.Exit nicht hilft (und wenn's hilft, mach bitte einen grünen Hacken dran), versuch doch mal nach dem Close noch ein "Exit Sub" einzubauen.

Mit freundlichen Grüßen,
Mathe172
Bitte warten ..
Mitglied: mpmichael
28.05.2011 um 18:39 Uhr
Danke ich werde es am Montag gleich testen.
Bitte warten ..
Mitglied: mpmichael
30.05.2011 um 12:40 Uhr
Hallo Norbert,

besten Dank Application.Exit() ist super und der Fehler tritt nun nicht mehr auf.
Beste Grüße
mpmichael
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Microsoft Office
Visio 2003 auf aktuellem System (5)

Frage von ratzla zum Thema Microsoft Office ...

Monitoring
System Monitoring für Windows, Linux (5)

Frage von manuelw zum Thema Monitoring ...

Server-Hardware
Lenovo Server System X 3650 M5 Festplatten (9)

Frage von Hendrik2586 zum Thema Server-Hardware ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (18)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...