'Anderes Modul:
Public Function CreateKioskBatFile(Optional EnterKiosk As Boolean = True) As _
String
Dim path As String
path = CurrentProject.path
Dim fName As String
fName = CurrentProject.Name
Dim sRoot As String
sRoot = ""
#If Win64 Then
If RegistryKeyExists(REG_SZ, HKEY_LOCAL_MACHINE, _
"SOFTWARE\WOW6432Node\Microsoft\Office\" & SysCmd(acSysCmdAccessVer) & _
"\Access\InstallRoot", "Path") Then sRoot = RegistryKeyValue(REG_SZ, _
HKEY_LOCAL_MACHINE, "SOFTWARE\WOW6432Node\Microsoft\Office\" & SysCmd( _
acSysCmdAccessVer) & "\Access\InstallRoot", "Path")
#Else
If RegistryKeyExists(REG_SZ, HKEY_LOCAL_MACHINE, _
"SOFTWARE\Microsoft\Office\" & SysCmd(acSysCmdAccessVer) & _
"\Access\InstallRoot", "Path") Then sRoot = RegistryKeyValue(REG_SZ, _
HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Office\" & SysCmd( _
acSysCmdAccessVer) & "\Access\InstallRoot", "Path")
#End If
If sRoot = "" Then
CreateKioskBatFile = False
Exit Function
End If
Open path & "\" & fName & ".bat" For Output As #1
'Print #1, "@echo off & setlocal"
Print #1, "for /f " & Chr$(34) & "tokens=2 delims=:." & Chr$(34) & " %%i in (" & _
"'chcp') do set " & Chr$(34) & "CP=%%i" & Chr$(34)
Print #1, "chcp 1252>nul"
Print #1, Chr$(34) & sRoot & "MSACCESS.EXE" & Chr$(34) & " " & Chr$(34) & path _
& "\$" & fName & Chr$(34) '& "/x " & IIf(EnterKiosk, "enterKiosk", _
"exitKiosk")
Print #1, "chcp %CP%>nul"
Print #1, "del " & Chr$(34) & path & "\" & fName & ".bat" & Chr$(34)
'Print #1, "pause"
Close #1
CreateKioskBatFile = Chr$(34) & path & "\" & fName & ".bat" & Chr$(34)
End Function
Public Function tmpKioskDB() As String
tmpKioskDB = CurrentProject.path & "\$" & CurrentProject.Name
End Function
Public Function AccessRoot() As String
#If Win64 Then
If RegistryKeyExists(REG_SZ, HKEY_LOCAL_MACHINE, _
"SOFTWARE\WOW6432Node\Microsoft\Office\" & SysCmd(acSysCmdAccessVer) & _
"\Access\InstallRoot", "Path") Then AccessRoot = RegistryKeyValue(REG_SZ, _
HKEY_LOCAL_MACHINE, "SOFTWARE\WOW6432Node\Microsoft\Office\" & SysCmd( _
acSysCmdAccessVer) & "\Access\InstallRoot", "Path") & "MSACCESS.EXE"
#Else
If RegistryKeyExists(REG_SZ, HKEY_LOCAL_MACHINE, _
"SOFTWARE\Microsoft\Office\" & SysCmd(acSysCmdAccessVer) & _
"\Access\InstallRoot", "Path") Then AccessRoot = RegistryKeyValue(REG_SZ, _
HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Office\" & SysCmd( _
acSysCmdAccessVer) & "\Access\InstallRoot", "Path") & "MSACCESS.EXE"
#End If
End Function |