Wo liegen deine Anwendungen, welche du mit ShellExecute ausführen willst? Lokal, auf nem
UNC-Pfad oder verbundenen Netzlaufwerk?
Läuft deine
DB-Anwendung in einem anderen Benutzerkontext, z.B. als Admin? Dann kriegst du Schwierigkeiten mit den
UNC-Pfaden und Netzlaufwerken.
Prüfe doch spaßeshalber mit FileExists ob die Datei überhaupt existiert bevor du sie mit ShellExecute ausführst.
Die
DB würde ich zu 100% ausschließen. Ich wüßte keinen Grund weshalb Firebird unter XP/Vista/7 das ShellExecute behindern sollte.
Könnte das
UAC von Vista das Starten der ("Netzwerk")-Anwendung behindern? Frage in die Runde!