001
29.10.2008, 08:12 Uhr
stephanw
localhorst
|
Du kannst das Laden ja in einen try-catch-Block stecken. Und ja, auch durch Speicherzugriffsfehler o.ä. werden Ausnahmen durch Windows generiert, das ist zumindest meine Erfahrung. Inwieweit das garantiert ist, findest Du sicherlich in irgendwelchen Dokumentationen von MicroSoft.
C++: |
void f() { try { ::LoadLibrary(...); // oder eine andere Funktion, die das kapselt } catch (const MyLibraryException& e) // Ausnahmen, die beim Laden des "Plugins" geworfen werden dürfen { // Mist } catch (...) // alles andere, z.B. auch Windows-Ausnahmen { // auch Mist } }
|
Du kannst sogar die Windows-Ausnahmen übersetzen in eine Exception-Klasse Deiner Wahl (z.B. eine von std::exception abgeleitete Klasse). Code dazu findet man im Netz. -- Reden ist Schweigen und Silber ist Gold. |