2016-04-13 1 views
0

Meine App wirft eine System.Printing.PrintQueueException, ich kann es in einem try-catch-Block mit "Ausnahme" abfangen, aber ich kann nicht mit der spezifischen Ausnahme umgehen, weil es nicht erkannt wird;System.Printing.PrintQueueException kann nicht abgefangen werden

Dies funktioniert;

 try 
     { 
      MethodThatThrowsException(); 
     } 
     catch (Exception) 
     { 
      Handle(); 
     } 

Aber das wird nicht bauen (intellisense Zustand, dass es PrintQueueException ' '' Kann Symbol nicht lösen');

 try 
     { 
      MethodThatThrowsException(); 
     } 
     catch (System.Printing.PrintQueueException) 
     { 
      Handle(); 
     } 

Was fehlt mir?

+3

Haben Sie den Verweis auf die Assembly aufgenommen ?! In welchem ​​Kontext versuchen Sie diesen Code zu verwenden? Netz? – Marco

+1

Da muss irgendwo ein Canonical sein. Um einen Typ zu verwenden, müssen Sie auf die Assembly für diesen Typ verweisen. Sie können die Assembly finden, indem Sie den Typ in der msdn-doc für es suchen. Die Assembly wird oben auf der Seite aufgelistet. Klicken Sie mit der rechten Maustaste auf den Knoten Verweise im Projekt, und fügen Sie seiner Assembly einen Verweis hinzu. Sobald Sie dies getan haben, nehmen Sie eine Kopie von CLR Via C#, gehen Sie zu Kapitel 4 und beginnen Sie mit dem Lesen. Sie werden innerhalb von 8 Stunden exponentiell besser in C# erfahren. Warum würdest du es nicht tun? – Will

+0

https://msdn.microsoft.com/en-us/library/wkze6zky.aspx – Will

Antwort