fafek2

Typ:
neutral
Postów: 35
Zarejestrowany: Sep 2002
|
|
Wykonywanie złego kodu
Piszę program, który w pliku konfiguracyjnym zapisuje jedną wartość ale bardzo ważną. Problem jest następujący. Choć błąd nie występuje program ładuje funkcje błędu. Sprawdzałem!!! Oto kod programu: Jest dosyć skomplikowany
Sub ZaladujRaport() On Error GoTo blad 'Deklaracja błędu
'Deklaracja pełnej obsługi Dim fso As New FileSystemObject Dim txtplik As File Dim tekst As TextStream Dim CoDalejRobic As String 'Sprawdzanie czy plik istnieje If fso.FileExists("" & App.Path & "\konfiguracja.dat" = False Then ' Jednak nie ' Trzeba go utworzyć fso.CreateTextFile "" & App.Path & "\konfiguracja.dat", True Set txtplik = fso.GetFile("" & App.Path & "\konfiguracja.dat" Set tekst = txtplik.OpenAsTextStream(ForWriting)
'Uprzedzenie programu aby zaproponował uruchomienie konfiguracji tekst.WriteLine "Plik nie istniał. Zaproponuj uruchomienie konfiguracji." 'Czytanie w tej funkcji nie będzie już potrzebne tekst.Close End If If fso.FileExists("" & App.Path & "\konfiguracja.dat" = True Then 'To samo co na górze automatyczna = "" Set txtplik = fso.GetFile("" & App.Path & "\konfiguracja.dat" Set tekst = txtplik.OpenAsTextStream(ForReading) automatyczna = tekst.ReadLine tekst.Close End If Select Case automatyczna Case "Plik nie istniał. Zaproponuj uruchomienie konfiguracji." CoDalejRobic = "Zaproponuj konfigurację" Case automatyczna = "[Generalne]" CoDalejRobic = "Ładować!!!" Case Else CoDalejRobic = "Błąd pliku konfiguracyjnego" End Select Select Case CoDalejRobic Case "Zaproponuj konfigurację" bytwybór = MsgBox("Program nie jest skonfigurowany. Czy chcesz to zrobić teraz?", vbQuestion + vbYesNo, "Konfiguracja" If bytwybór = vbYes Then frmkonfiguracja.Show End If Case CoDalejRobić = "Ładować!!!" automatyczna = "" Set txtplik = fso.GetFile("" & App.Path & "\konfiguracja.dat" Set tekst = txtplik.OpenAsTextStream(ForReading) tekst.ReadLine tekst.ReadLine automatyczna = tekst.ReadLine If Not IsNumeric(automatyczna) Then GoTo blad End If Case "Błąd pliku konfiguracyjnego" GoTo blad End Select Exit Sub blad: On Error Resume Next tekst.Close Unload txtfile On Error GoTo zaawansowanyblad fso.DeleteFile ("" & App.Path & "\konfiguracja.dat" Exit Sub zaawansowanyblad: MsgBox "Programowi nie udało się naprawić pliku :-(((. Spróbuj ręcznie usunąć plik 'konfiguracja.dat' z katalogu: " & App.Path & ". Po usunięciu pliku uruchom program ponownie.", vbCritical, "Zaawansowany Błąd" End End Sub
Aha! Te buźki to nawiasy! Nie wiem dlaczego to forum jest tak zmieniło
|