Danke für die Antwort, aber das geht bei mir garnicht. Wenn ich versuche die Application auf zu rufen bekomme ich einene Error ohne Error-Nummer und Meldung
__________________________
Da das wirklich Grausig aussieht noch mal die erste Meldung:
Hallo Leute, ich habe ein Problem mit meinem Code und hoffe ihr könnt mir weiter helfen.
Und zwar muss ich den "Datei Öffnen"-Dialog aufrufen und habe mir dazu das vorgeschlagenen Modul zusammen geschrieben. Mit der normalen Access Version (2010) klappt alles sehr gut, doch wenn ich es mit der Access Runtime auf einem anderen PC öffnen bekommt ich sofort die Meldung das das Programm wegen einem Laufzeitfehler angehalten wurde. Doch leider auch keine Laufzeitfehler Nummer oder ähnliches. Auch der Versuch den Fehler ab zu fangen schlug fehl.
Ich konnte das Problem auf die "Declare Function" der comdlg32.dll begrenzen. Da wider alles Geht wenn ich dies Auskommentiere. Code:
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Der gesamte Code des Modul lautet:
Option Compare Database
Option Explicit
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long
Type OPENFILENAME
lStructSize As Long
hwndOwner As Long
hInstance As Long
lpstrFilter As String
lpstrCustomFilter As String
nMaxCustFilter As Long
nFilterIndex As Long
lpstrFile As String
nMaxFile As Long
lpstrFileTitle As String
nMaxFileTitle As Long
lpstrInitialDir As String
lpstrTitle As String
Flags As Long
nFileOffset As Integer
nFileExtension As Integer
lpstrDefExt As String
lCustData As Long
lpfnHook As Long
lpTemplateName As Long
End Type
Public Const OFN_FILEMUSTEXIST = &H1000
Public Const OFN_READONLY = &H1
Public Const OFN_HIDEREADONLY = &H4
Public Function DateiOeffnen(Optional Titel, Optional Filter, Optional DefExtension, Optional AktDir) As String
On Error GoTo Err_DateiOeffnen
Dim strDateiname As String
Dim strDlgTitel As String
Dim strFilter As String
Dim strDefExtension As String
Dim strAktDir As String
Dim strNull As String
Dim OpenDlg As OPENFILENAME
strNull = Chr$(0)
strDateiname = String$(512, 0)
If IsMissing(Titel) Then
strDlgTitel = "Datei öffnen" & strNull
Else
strDlgTitel = Titel & strNull
End If
If IsMissing(Filter) Then
strFilter = "Alle Dateien" & strNull & "*.*" & strNull & strNull
Else
strFilter = Filter & strNull
End If
If IsMissing(DefExtension) Then
strDefExtension = strNull
Else
strDefExtension = DefExtension & strNull
End If
If IsMissing(AktDir) Then
strAktDir = CurDir$ & strNull
Else
strAktDir = AktDir & strNull
End If
With OpenDlg
.lStructSize = Len(OpenDlg)
.hwndOwner = Screen.ActiveForm.hwnd
.lpstrFilter = strFilter
.nFilterIndex = 1
.lpstrFile = strDateiname
.nMaxFile = Len(strDateiname)
.lpstrInitialDir = strAktDir
.lpstrTitle = strDlgTitel
.Flags = OFN_FILEMUSTEXIST Or OFN_READONLY
.lpstrDefExt = strDefExtension
If GetOpenFileName(OpenDlg) <> 0 Then
DateiOeffnen = Left$(.lpstrFile, InStr(.lpstrFile, strNull) - 1)
Else
DateiOeffnen = ""
End If
End With
Exit_DateiOeffnen:
Exit Sub
Err_DateiOeffnen:
writeLogError Forms.start.getMitarbeiterID, Me.Name, Err.Source, Err.Description
MsgBox "Ein Fehler ist aufgetreten!" & vbCrLf & "Bitte geben sie dem Administrator bescheit." & vbCrLf & vbCrLf & "Schließen sie das Tool und öffnen sie es erneut!", vbCritical
Resume Exit_DateiOeffnen
End Function
Function Ich hoffe ihr könnt mir weiter helfen und Danke schon im Vorraus
|