Forum: PC-Programmierung "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
hallo ich habe bei einen programm was ich in inet gefunden habe ein 
problem ich kann keine pdf öffnen der fehler

1
"System.ComponentModel.Win32Exception" ist in System.dll aufgetreten

ein ausschnitt von code
1
private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
2
        {
3
            Process p = new Process();
4
            // Redirect the output stream of the child process.
5
            p.StartInfo.UseShellExecute = false;
6
            p.StartInfo.RedirectStandardOutput = true;
7
            p.StartInfo.FileName = "pdftoppm";
8
            p.StartInfo.Arguments = "-mono -f 1 -l 1 -r 600 " + openPdfDialog.FileName + " C:/Windows/Temp/";
9
            p.Start();
10
            // Do not wait for the child process to exit before
11
            // reading to the end of its redirected stream.
12
            // p.WaitForExit();
13
            // Read the output stream first and then wait.
14
            string output = p.StandardOutput.ReadToEnd();
15
            p.WaitForExit();

wer kann mir weiter helfen
mfg jens

von bluppdidupp (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Die erste Maßnahme wäre wohl im Debugger nachzuschauen, welche Message 
denn in der Win32Exception steht.
Es könnte beispielsweise irgendwas mit "file not found" sein, weil vllt. 
die "pdftoppm" nicht im Suchpfad der Anwendung vorhanden ist.

von jens (Gast)


Bewertung
0 lesenswert
nicht lesenswert
das wäre die ausgabe
1
"ExposerControl.vshost.exe" (CLR v4.0.30319: ExposerControl.vshost.exe): "C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" geladen. Das Laden von Symbolen wurde übersprungen. Das Modul ist optimiert, und die Debugoption "Nur eigenen Code" ist aktiviert.
2
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
3
Der Thread 0x1cd8 hat mit Code 259 (0x103) geendet.
4
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
5
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
6
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
7
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
8
Eine Ausnahme (erste Chance) des Typs "System.ComponentModel.Win32Exception" ist in System.dll aufgetreten.
9
Der Thread 0x1b8c hat mit Code 259 (0x103) geendet.
10
Der Thread 0x2644 hat mit Code 259 (0x103) geendet.

von Peter II (Gast)


Bewertung
0 lesenswert
nicht lesenswert
jens schrieb:
> das wäre die ausgabe

du must Exceptions abfangen.

Try - catch ist das Stichwort.

https://msdn.microsoft.com/de-de/library/0yd65esw.aspx

von Florian S. (sevenacids)


Bewertung
0 lesenswert
nicht lesenswert
Wenn die Ausnahme beim Debugging in Visual Studio auftritt solltest du 
wie bereits erwähnt dir mal die Details dazu anzeigen lassen. 
Normalerweise erscheint beim Auftreten einer Ausnahme ein Dialogfeld bei 
dem es unten einen entsprechenden Link gibt. Dort sind die Eigenschaften 
"ErrorCode" und "Message" ausschlaggebend. Die reine Debug-Ausgabe ist 
dabei wenig hilfreich, denn die protokolliert nur, dass eine Ausnahme 
aufgetreten ist, aber ohne jegliche weitere Information.

Ich würde auch ins Blaue vermuten, dass die "pdftoppm" nicht gefunden 
werden kann. Einfach mal die "pdftoppm" ins Ausgabeverzeichnis kopieren 
(inkl. etwaiger Abhängigkeiten) und probieren ob es dann funktioniert.

PS: Ein try-catch-Block wäre zwar sinnvoll, richtig elegant ist es 
jedoch, wenn die Anwendung bereits zu Beginn überprüft, ob die 
"pdftoppm" gefunden werden kann (z.B. per File.Exists()-Methode) und 
falls nicht direkt eine Fehlermeldung ausgibt (d.h. etwaige Ausnahmen 
schon vorher ausschließen).

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.