Du liebe Zeit! Da war ich ja auf dem völlig falschen Dampfer!
Ich war durch die Fehlermeldung "objekterstellung durch activex-komponente nicht möglich" der Meinung du hättest selbst eine OCX erstellt in der die COMDLG32 verwendet wird. Dementsprechend war meine Antwort darauf ausgerichtet eine eigene OCX, welche die COMDLG32.ocx verwendet, unter MS-Visual Studio VB6.0 zu kompilieren.
Da das ganze Problem nur in einer Datenbank auftritt sieht die Sache natürlich wieder ganz anders aus. Das Doofe an der Sache ist nur, dass ich das Problem noch immer nicht nachvollziehen kann. Bei mir funktioniert der Code:
Public Sub test()
Set dlg = New CommonDialog
dlg.ShowOpen
End Sub
ohne jegliche Probleme.
Besonders ratlos macht mich, dass die Sache in Formularen funktioniert und in Modulen nicht. Das ergibt nicht viel Sinn für mich. Hier auf jeden Fall noch ein paar Fragen die mir jetzt noch so einfallen:
- Sind auf dem Rechner sowohl COMDLG32.OCX als auch COMDLG32.OCA und COMDLG32.DLL vorhanden?
- Waren die Dateien schon vorhanden oder habt Ihr sie nachträglich auf den Rechner kopiert?
- Sind die Dateien sicher registriert?
- Habt Ihr schon versucht einfach die VB-Runtime zu installieren?
|