'' SHOULD BE IN 123.LSS, but LotusScript BUG Prevented this!
DECLARE PUBLIC FUNCTION OpenBookShelfFile LIB "FIXBOOK.DLL" ALIAS "_OpenBookShelfFile" (ByVal bookshelfname$) AS INTEGER
DECLARE PUBLIC FUNCTION CloseBookShelfFile LIB "FIXBOOK.DLL" ALIAS "_CloseBookShelfFile" () AS INTEGER
DECLARE PUBLIC FUNCTION AddBook LIB "FIXBOOK.DLL" ALIAS "_AddBook" (ByVal bookpath$, ByVal bookcaption$) AS INTEGER
''this is a call into bcfmod.dll
DECLARE PUBLIC FUNCTION BcfMod LIB "BCFMOD.DLL" ALIAS "_BcfMod@24" (ByVal BcfFilepath$, ByVal DNarg$, ByVal DLarg$, ByVal DCarg$, ByVal ACarg$, ByVal DDarg$) AS LONG
'' NEW!! add call to modify ODBC.INI
DECLARE PUBLIC FUNCTION FixODBCiniSources LIB "BCFMOD.DLL" ALIAS "_FixODBCiniSources@28" (ByVal IniFile$, ByVal Sect1$, ByVal Match1$, ByVal Repl1$, ByVal Sect2$, ByVal Match2$, ByVal Repl2$) AS LONG
'' End NEW!!
'** Do to a limitation in LotusScript, these Lotus declarations needed
'** to be here.
DECLARE PUBLIC FUNCTION FCleanFATPath LIB "lcomstf.dll" ALIAS "_FCleanFATPath@4" (ByVal szPath$) AS INTEGER
DECLARE PUBLIC FUNCTION FLotusInitialize LIB "lcomstf.dll" ALIAS "_FLotusInitialize@4" (ByVal sess&) AS INTEGER
DECLARE PUBLIC FUNCTION WhatPlatform LIB "lcomstf.dll" ALIAS "?WhatPlatform@@YGHXZ" () AS INTEGER
DECLARE PUBLIC FUNCTION Lot_IsDirWritable LIB "lcomstf.dll" ALIAS "_Lot_IsDirWritable@4" (ByVal szDir$) AS LONG
DECLARE PUBLIC FUNCTION Lot_DoesDirExist LIB "lcomstf.dll" ALIAS "_Lot_DoesDirExist@4" (ByVal szDir$) AS LONG
DECLARE PUBLIC FUNCTION Lot_DoesFileExist LIB "lcomstf.dll" ALIAS "_Lot_DoesFileExist@4" (ByVal szDir$) AS LONG
DECLARE PUBLIC FUNCTION Lot_ExecUninstall LIB "lcomstf.dll" ALIAS "_Lot_ExecUninstall@4" (ByVal szCmd$) AS LONG
DECLARE PUBLIC FUNCTION Lot_RegisterOCX LIB "lcomstf.dll" ALIAS "_Lot_RegisterOCX@4" (ByVal OCXpath$) AS LONG
DECLARE PUBLIC FUNCTION Lot_UnRegisterOCX LIB "lcomstf.dll" ALIAS "_Lot_UnRegisterOCX@4" (ByVal OCXpath$) AS LONG
DECLARE PUBLIC FUNCTION Lot_ValidPath LIB "lcomstf.dll" ALIAS "_Lot_ValidPath@4" (ByVal Path$) AS INTEGER
DECLARE PUBLIC FUNCTION Lot_DeleteFile LIB "lcomstf.dll" ALIAS "_Lot_DeleteFile@8" (ByVal Path$, ByVal cmo%) AS INTEGER
DECLARE PUBLIC FUNCTION Lot_ShellExec LIB "lcomstf.dll" ALIAS"_Lot_ShellExec@4" (ByVal File$) AS LONG
''DBCS support partially from Japan
DECLARE PUBLIC FUNCTION IsDBCSFirstAtOffset LIB "lcomstf.dll" ALIAS "_IsDBCSFirstAtOffset@8" (ByVal szStr$, ByVal cnt&) AS LONG
DECLARE PUBLIC FUNCTION FDBCSCharLen LIB "lcomstf.dll" ALIAS "_FDBCSCharLen@8" (ByVal szStr$, ByVal offset&) AS LONG
''Functions to configure AUTOEXEC.BAT
DECLARE PUBLIC FUNCTION IsShareInstalled LIB "lcomstf.dll" ALIAS "_IsShareInstalled@0" () AS INTEGER
DECLARE PUBLIC FUNCTION ExitWindows LIB "user32" ALIAS "ExitWindows" (ByVal dwReturnCode&, ByVal wReserved&) AS LONG
DECLARE PUBLIC FUNCTION FindWindow LIB "user32" ALIAS "FindWindowA" (ByVal lpszClassName$, ByVal lpszWindow$) AS INTEGER
DECLARE PUBLIC FUNCTION GetUserName LIB "advapi32" ALIAS "GetUserNameA" (ByVal lpszClassName$, wLength&) AS INTEGER
''Functions to configure Program Manager
DECLARE PUBLIC FUNCTION ProgmanManageGroup LIB "mscuistf.dll" ALIAS "_ProgmanManageGroup@8" (ByVal szName$, ByVal fDelete&) AS INTEGER
DECLARE PUBLIC FUNCTION FAddProgramGroupsToList LIB "mscuistf.dll" ALIAS "_FAddProgramGroupsToList@16" (ByVal hkeyRoot&, ByVal pszKeyName$, ByVal pszListName$, ByVal pszSuppressName$) AS LONG
DECLARE PUBLIC FUNCTION FAddItemToTree LIB "mscuistf.dll" ALIAS "_FAddItemToTree@8" (ByVal hDlg&, ByVal szNewName$) AS INTEGER
DECLARE PUBLIC FUNCTION FDeleteCurrTreeItem LIB "mscuistf.dll" ALIAS "_FDeleteCurrTreeItem@4" (ByVal hDlg&) AS INTEGER
DECLARE PUBLIC FUNCTION FChangeNameCurrTreeItem LIB "mscuistf.dll" ALIAS "_FChangeNameCurrTreeItem@8" (ByVal hDlg&, ByVal NewName$) AS INTEGER
'********************** Microsoft DLL Api ***********************************
'JMD
DECLARE PUBLIC FUNCTION FDoDialog3 LIB "msshlstf.dll" ALIAS "_FDoDialog3@16" (ByVal hwnd&, ByVal szDll$, ByVal Dlg&, ByVal szDlgProc$ ) AS INTEGER
DECLARE PUBLIC FUNCTION FKillNDialogs3 LIB "msshlstf.dll" ALIAS "_FKillNDialogs3@4" (ByVal n&) AS INTEGER
DECLARE PUBLIC FUNCTION FGetHandleForResourceDLL LIB "msshlstf.dll" ALIAS "_FGetHandleForResourceDLL@8" (ByVal id%, ByVal t%) AS LONG
DECLARE PUBLIC FUNCTION FGetNameForResourceDLL LIB "msshlstf.dll" ALIAS "_FGetNameForResourceDLL@16" (ByVal id%, ByVal t%, ByVal buffer$, ByVal bufsize&) AS LONG
DECLARE PUBLIC FUNCTION FRemoveIniSection LIB "msinsstf.dll" ALIAS "FRemoveIniSection" (ByVal szFile$, ByVal szSect$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FCreateIniKeyValue LIB "msinsstf.dll" ALIAS "FCreateIniKeyValue" (ByVal szFile$, ByVal szSect$, ByVal szKey$, ByVal szValue$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FRemoveIniKey LIB "msinsstf.dll" ALIAS "FRemoveIniKey" (ByVal szFile$, ByVal szSect$, ByVal szKey$, ByVal cmo&) AS INTEGER
DECLARE PUBLIC FUNCTION FCreateSysIniKeyValue LIB "msinsstf.dll" ALIAS "FCreateSysIniKeyValue" (ByVal szFile$, ByVal szSect$, ByVal szKey$, ByVal szValue$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FCreateProgManGroup LIB "msinsstf.dll" ALIAS "FCreateProgManGroup" (ByVal szGroup$, ByVal szPath$, ByVal cmo&) AS INTEGER
DECLARE PUBLIC FUNCTION FCreateProgManItem LIB "msinsstf.dll" ALIAS "FCreateProgManItem" (ByVal szGroup$, ByVal szItem$, ByVal szCmd$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FShowProgManGroup LIB "msinsstf.dll" ALIAS "FShowProgManGroup" (ByVal szGroup$, ByVal szCmd$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FStampResource LIB "msinsstf.dll" ALIAS "FStampResource" (ByVal szSect$, ByVal szKey$, ByVal szDst$,_
ByVal wResType&, ByVal wResId&, ByVal szData$, ByVal cbData&) AS LONG
DECLARE PUBLIC FUNCTION FAddDos5Help LIB "msinsstf.dll" ALIAS "FAddDos5Help" (ByVal szProgName$, ByVal szProgHelp$, ByVal cmo&) AS LONG
'*OBSOLETE DECLARE PUBLIC FUNCTION YnrcRemoveFile LIB "msinsstf.dll" ALIAS "YnrcRemoveFile" (ByVal szFullPathSrc$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION YnrcBackupFile LIB "msinsstf.dll" ALIAS "YnrcBackupFile" (ByVal szFullPath$, ByVal szBackup$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION FInitializeInstall LIB "msinsstf.dll" ALIAS "FInitializeInstall" ( ByVal hinst&, ByVal hwndFrame&) AS LONG
DECLARE PUBLIC FUNCTION WFindFileUsingFileOpen LIB "msinsstf.dll" ALIAS "WFindFileUsingFileOpen" (ByVal szFile$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION FIsFileWritable LIB "msinsstf.dll" ALIAS "FIsFileWritable" (ByVal szFile$) AS LONG
DECLARE PUBLIC FUNCTION SetDecompMode LIB "msinsstf.dll" ALIAS "SetDecompMode" (ByVal fMode&) AS LONG
DECLARE PUBLIC FUNCTION GetDecompMode LIB "msinsstf.dll" ALIAS "GetDecompMode" () AS LONG
DECLARE PUBLIC FUNCTION FPrependToPath LIB "msinsstf.dll" ALIAS "FPrependToPath" (ByVal szSrc$, ByVal szDst$, ByVal szDir$, ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION SetTimeValue LIB "msinsstf.dll" ALIAS "SetTimeValue" (ByVal usHours&, ByVal usMinutes&, ByVal usSeconds&) AS LONG
DECLARE PUBLIC FUNCTION HShowWaitCursor LIB "msshlstf.dll" ALIAS "HShowWaitCursor" () AS LONG
DECLARE PUBLIC FUNCTION FRestoreCursor LIB "msshlstf.dll" ALIAS "FRestoreCursor" (ByVal hPrev&) AS LONG
DECLARE PUBLIC FUNCTION FSetBitmap LIB "msshlstf.dll" ALIAS "FSetBitmap" (ByVal szDll$, ByVal Bitmap&) AS LONG
DECLARE PUBLIC FUNCTION FSetAbout LIB "msshlstf.dll" ALIAS "FSetAbout" (ByVal szAbout1$, ByVal szAbout2$) AS LONG
DECLARE PUBLIC FUNCTION FSetSymbolValue LIB "msshlstf.dll" ALIAS "FSetSymbolValue" (ByVal szSymbol$,ByVal szValue$) AS LONG
DECLARE PUBLIC FUNCTION InitializeFrame LIB "msshlstf.dll" ALIAS "InitializeFrame" (ByVal szCmdLine$) AS LONG
DECLARE PUBLIC FUNCTION HwndFrame LIB "msshlstf.dll" ALIAS "HwndFrame" () AS LONG
DECLARE PUBLIC FUNCTION HinstFrame LIB "msshlstf.dll" ALIAS "HinstFrame" () AS LONG
DECLARE PUBLIC FUNCTION FWriteToFile LIB "msshlstf.dll" ALIAS "FWriteToFile" (ByVal szFile$, ByVal sz$) AS INTEGER
DECLARE PUBLIC FUNCTION CreateRegKeyEx LIB "msshlstf.dll" ALIAS "CreateRegKeyEx" (ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION CreateRegKeyValueExD LIB "msshlstf.dll"ALIAS "CreateRegKeyValueExD" (ByVal hKey&,ByVal szSubKey$,ByVal szValueName$,ByVal dwType&, ByVal dwDataLen&, ByVal dwValueData&) AS LONG
DECLARE PUBLIC FUNCTION CreateRegKeyValueExS LIB "msshlstf.dll"ALIAS "CreateRegKeyValueExS" (ByVal hKey&,ByVal szSubKey$,ByVal szValueName$,ByVal dwType&, ByVal dwDataLen&, ByVal szValueData$) AS LONG
DECLARE PUBLIC FUNCTION DeleteRegKeyEx LIB "msshlstf.dll" ALIAS "DeleteRegKeyEx" (ByVal hKey&,ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION DeleteAllSubKeys LIB "msshlstf.dll" ALIAS "DeleteAllSubKeys" (ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION DoesRegKeyExistEx LIB "msshlstf.dll" ALIAS "DoesRegKeyExistEx" (ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION GetRegKeyValueEx LIB "msshlstf.dll" ALIAS "GetRegKeyValueEx" (ByVal hKey&,ByVal szSubKey$,ByVal szValueName$, dwType&, ByVal cbBuf&, lpdwBuf&, ByVal lpBuf$) AS LONG
DECLARE PUBLIC FUNCTION SetRegKeyValueExD LIB "msshlstf.dll" ALIAS "SetRegKeyValueExD" (ByVal hKey&,ByVal szSubKey$,ByVal szValueName$, dwType&, ByVal dwValueData&, ByVal dwDataLen& ) AS LONG
DECLARE PUBLIC FUNCTION SetRegKeyValueExS LIB "msshlstf.dll" ALIAS "SetRegKeyValueExS" (ByVal hKey&,ByVal szSubKey$,ByVal szValueName$, dwType&, ByVal szValueData$, ByVal dwDataLen& ) AS LONG
DECLARE PUBLIC FUNCTION Lot_CheckPriviledges LIB "msshlstf.dll" ALIAS "Lot_CheckPriviledges" (ByVal checkflags&) AS LONG
DECLARE PUBLIC FUNCTION EercErrorHandler LIB "mscomstf.dll" ALIAS "EercErrorHandler" (ByVal grc&,ByVal fVital&,ByVal sz1$,ByVal sz2$,ByVal sz3$) AS INTEGER
DECLARE PUBLIC FUNCTION FValidFATPath (ByVal szPath$) AS INTEGER
DECLARE PUBLIC FUNCTION FValidPath (ByVal szPath$) AS INTEGER
DECLARE PUBLIC FUNCTION FAddSpecialFileToCopyList LIB "mscomstf.dll" ALIAS "FAddSpecialFileToCopyList" (ByVal szSect$, ByVal szKey$, ByVal szSrc$, ByVal szDest$) AS LONG
DECLARE PUBLIC FUNCTION FRemoveSymbol LIB "mscomstf.dll" ALIAS "FRemoveSymbol" (ByVal szSym$) AS LONG
DECLARE PUBLIC FUNCTION CbGetSymbolValue LIB "mscomstf.dll" ALIAS "CbGetSymbolValue" (ByVal szSymbol$, ByVal szValue$,ByVal Length&) AS LONG
DECLARE PUBLIC FUNCTION UsGetListLength LIB "mscomstf.dll" ALIAS "UsGetListLength" (ByVal szSymbol$) AS INTEGER
DECLARE PUBLIC FUNCTION CbGetListItem LIB "mscomstf.dll" ALIAS "CbGetListItem" (ByVal szListSymbol$, ByVal n&, ByVal szListItem$, ByVal cbMax&) AS LONG
DECLARE PUBLIC FUNCTION FAddListItem LIB "mscomstf.dll" ALIAS "FAddListItem" (ByVal szListSymbol$,ByVal szListItem$) AS LONG
DECLARE PUBLIC FUNCTION FReplaceListItem LIB "mscomstf.dll" ALIAS "FReplaceListItem" (ByVal szListSymbol$, ByVal n&, ByVal szListItem$) AS LONG
DECLARE PUBLIC FUNCTION FOpenLogFile LIB "mscomstf.dll" ALIAS "FOpenLogFile" (ByVal szFile$, ByVal fAppend&) AS LONG
DECLARE PUBLIC FUNCTION FCloseLogFile LIB "mscomstf.dll" ALIAS "FCloseLogFile" () AS LONG
DECLARE PUBLIC FUNCTION FWriteToLogFile LIB "mscomstf.dll" ALIAS "FWriteToLogFile" (ByVal sz$, ByVal fRequire&) AS LONG
DECLARE PUBLIC FUNCTION DoMsgBox LIB "lcomstf.dll" ALIAS "_DoMsgBox@12" (ByVal lpText$,ByVal lpCaption$,ByVal wType&) AS LONG
DECLARE PUBLIC FUNCTION FParseFATPathIntoPieces LIB "mscomstf.dll" ALIAS "FParsePathIntoPieces" (ByVal szPath$, ByVal szVol$, ByVal cbVol&, ByVal szDir$, ByVal cbDir&, ByVal szFile$, ByVal cbFile&) AS INTEGER
DECLARE PUBLIC FUNCTION FParsePathIntoPieces LIB "mscomstf.dll" ALIAS "FParsePathIntoPieces" (ByVal szPath$, ByVal szVol$, ByVal cbVol&, ByVal szDir$, ByVal cbDir&, ByVal szFile$, ByVal cbFile&) AS INTEGER
DECLARE PUBLIC FUNCTION CbGetVersionOfFile LIB "msdetstf.dll" ALIAS "CbGetVersionOfFile" (ByVal szFile$,ByVal szBuf$,ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION LGetVersionNthField LIB "msdetstf.dll" ALIAS "LGetVersionNthField" (ByVal szVersion$,ByVal nField&) AS LONG
DECLARE PUBLIC FUNCTION LcbGetSizeOfFile LIB "msdetstf.dll" ALIAS "LcbGetSizeOfFile" (ByVal szFile$) AS LONG
DECLARE PUBLIC FUNCTION FGetValidDrivesList LIB "msdetstf.dll" ALIAS "FGetValidDrivesList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION FGetLocalHardDrivesList LIB "msdetstf.dll" ALIAS "FGetLocalHardDrivesList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION FGetRemovableDrivesList LIB "msdetstf.dll" ALIAS "FGetRemovableDrivesList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION FGetNetworkDrivesList LIB "msdetstf.dll" ALIAS "FGetNetworkDrivesList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION LcbTotalDrive LIB "msdetstf.dll" ALIAS "LcbTotalDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION LcbFreeDrive LIB "msdetstf.dll" ALIAS "LcbFreeDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION FIsValidDrive LIB "msdetstf.dll" ALIAS "FIsValidDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION FIsLocalHardDrive LIB "msdetstf.dll" ALIAS "FIsLocalHardDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION FIsRemoveDrive LIB "msdetstf.dll" ALIAS "FIsRemoveDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION FIsRemoteDrive LIB "msdetstf.dll" ALIAS "FIsRemoteDrive" (ByVal nDrive&) AS LONG
DECLARE PUBLIC FUNCTION FDirExists LIB "msdetstf.dll" ALIAS "FDirExists" (ByVal szDir$) AS LONG
DECLARE PUBLIC FUNCTION FDoesFileExist LIB "msdetstf.dll" ALIAS "FDoesFileExist" (ByVal szFileName$, ByVal mode&) AS LONG
DECLARE PUBLIC FUNCTION CbGetDateOfFile LIB "msdetstf.dll" ALIAS "CbGetDateOfFile" (ByVal szFile$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION FDoesIniSectionExist LIB "msdetstf.dll" ALIAS "FDoesIniSectionExist" (ByVal szFile$, ByVal szSect$) AS LONG
DECLARE PUBLIC FUNCTION FDoesIniKeyExist LIB "msdetstf.dll" ALIAS "FDoesIniKeyExist" (ByVal szFile$, ByVal szSect$, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION WGetNumWinApps LIB "msdetstf.dll" ALIAS "WGetNumWinApps" () AS LONG
DECLARE PUBLIC FUNCTION FGetParallelPortsList LIB "msdetstf.dll" ALIAS "FGetParallelPortsList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION FGetSerialPortsList LIB "msdetstf.dll" ALIAS "FGetSerialPortsList" (ByVal szSymbol$) AS LONG
DECLARE PUBLIC FUNCTION FHas87MathChip LIB "msdetstf.dll" ALIAS "FHas87MathChip" () AS LONG
DECLARE PUBLIC FUNCTION FHasMonochromeDisplay LIB "msdetstf.dll" ALIAS "FHasMonochromeDisplay" () AS LONG
DECLARE PUBLIC FUNCTION FHasMouseInstalled LIB "msdetstf.dll" ALIAS "FHasMouseInstalled" () AS LONG
DECLARE PUBLIC FUNCTION WGetConfigSmartdrvSize LIB "msdetstf.dll" ALIAS "WGetConfigSmartdrvSize" () AS LONG
DECLARE PUBLIC FUNCTION WGetConfigRamdriveSize LIB "msdetstf.dll" ALIAS "WGetConfigRamdriveSize" () AS LONG
DECLARE PUBLIC FUNCTION WGetConfigNumBuffers LIB "msdetstf.dll" ALIAS "WGetConfigNumBuffers" () AS LONG
DECLARE PUBLIC FUNCTION WGetConfigNumFiles LIB "msdetstf.dll" ALIAS "WGetConfigNumFiles" () AS LONG
DECLARE PUBLIC FUNCTION WGetConfigLastDrive LIB "msdetstf.dll" ALIAS "WGetConfigLastDrive" () AS LONG
DECLARE PUBLIC FUNCTION FIsDriverInConfig LIB "msdetstf.dll" ALIAS "FIsDriverInConfig" (ByVal szDrv$) AS LONG
DECLARE PUBLIC FUNCTION CbFindTargetOnEnvVar LIB "msdetstf.dll" ALIAS "CbFindTargetOnEnvVar" (ByVal szFile$, ByVal szEnvVar$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION CbFindFileInTree LIB "msdetstf.dll" ALIAS "CbFindFileInTree" (ByVal szFile$, ByVal szDir$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION GetTypeFaceNameFromTTF LIB "msdetstf.dll" ALIAS "GetTypeFaceNameFromTTF" (ByVal szFile$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION GetExistingFOTFileForTTF LIB "msdetstf.dll" ALIAS "GetExistingFOTFileForTTF" (ByVal szFile$, ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION HinstCui LIB "mscuistf.dll" ALIAS "_HinstCui@0" () AS LONG
DECLARE PUBLIC FUNCTION LoadCommonCtl LIB "mscuistf.dll" ALIAS "_LoadCommonCtl@0" () AS INTEGER
DECLARE PUBLIC FUNCTION CreateLink LIB "mscuistf.dll" ALIAS "_CreateLink@20" (ByVal szPathObj$, ByVal szPathLink$, ByVal pszDesc$, ByVal szArgument$, ByVal szWorkingDir$) AS LONG
DECLARE PUBLIC FUNCTION CreateLinkIcon LIB "mscuistf.dll" ALIAS "_CreateLinkIcon@28" (ByVal szPathObj$, ByVal szPathLink$, ByVal pszDesc$, ByVal szArgument$, ByVal szWorkingDir$, ByVal szIconPath$, ByVal Icon&) AS LONG
DECLARE PUBLIC FUNCTION Lot_FreeDrive LIB "mscuistf.dll" ALIAS "_Lot_FreeDrive@4" (ByVal szDrive$) AS LONG
DECLARE PUBLIC FUNCTION Lot_IsNewShell LIB "mscuistf.dll" ALIAS "_Lot_IsNewShell@0" () AS INTEGER
'************ Windows Calls ****************************************
DECLARE PUBLIC FUNCTION SendDlgItemMessage LIB "user32" ALIAS "SendDlgItemMessage" (ByVal hDlg&,ByVal idCtrl&,ByVal msg&,ByVal w&,ByVal l&) AS LONG
DECLARE PUBLIC FUNCTION SendDlgItemMessageLb LIB "user32" ALIAS "SendDlgItemMessage" (ByVal hDlg&,ByVal idCtrl&,ByVal msg&,ByVal w&,ByVal lParam$) AS LONG
DECLARE PUBLIC FUNCTION SendMessage LIB "user32" ALIAS "SendMessageA" (ByVal hWnd&,ByVal msg&,ByVal w&,ByVal l&) AS LONG
DECLARE PUBLIC FUNCTION GetTickCount LIB "kernel32" ALIAS "GetTickCount" () AS LONG
DECLARE PUBLIC FUNCTION GetDC LIB "user32" ALIAS "GetDC" (ByVal hWnd&) AS LONG
DECLARE PUBLIC FUNCTION ReleaseDC LIB "user32" ALIAS "ReleaseDC" (ByVal hWnd&, ByVal hDC&) AS LONG
DECLARE PUBLIC FUNCTION GetDeviceCaps LIB "GDI32" ALIAS "GetDeviceCaps" (ByVal hDC&, ByVal nIndex&) AS LONG
DECLARE PUBLIC FUNCTION WinHelp LIB "user32" ALIAS "WinHelpA" (ByVal hwndMain&, ByVal helpfile$, ByVal context&, ByVal ID) AS LONG
DECLARE PUBLIC FUNCTION WinExec LIB "kernel32" ALIAS "WinExec" (ByVal path$, ByVal data&) AS LONG
DECLARE PUBLIC FUNCTION IsDlgbuttonChecked LIB "user32" ALIAS "IsDlgButtonChecked" (ByVal hwnd&, ByVal fEnable&) AS LONG
DECLARE PUBLIC FUNCTION GetWindowsDirectory LIB "kernel32" ALIAS "GetWindowsDirectoryA" (ByVal szBuf$,ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION GetSystemDirectory LIB "kernel32" ALIAS "GetSystemDirectoryA" (ByVal szBuf$, ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION GetProfileString LIB "kernel32" ALIAS "GetProfileString" (ByVal szSect$,ByVal szKey$,ByVal szDefault$,ByVal szBuf$,ByVal cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION GetVersion LIB "kernel32" ALIAS "GetVersion" () AS LONG
DECLARE PUBLIC FUNCTION GetSystemMetrics LIB "user32" ALIAS "GetSystemMetrics" (ByVal nIndex&) AS LONG
DECLARE PUBLIC FUNCTION FindResource LIB "kernel32" ALIAS "FindResourceA" (ByVal hDll&, ByVal Id&, ByVal RType& ) AS LONG
DECLARE PUBLIC FUNCTION Win32CopyFile LIB "kernel32" ALIAS "CopyFileA" (ByVal szSrc$, ByVal szDest$, ByVal cmo%) AS INTEGER
DECLARE PUBLIC FUNCTION GetLastError LIB "kernel32" ALIAS "GetLastError" () AS LONG
DECLARE PUBLIC FUNCTION GetDriveType LIB "kernel32" ALIAS "GetDriveTypeA" (ByVal szPath$) AS INTEGER
DECLARE PUBLIC FUNCTION GetEnvironmentVariable LIB "kernel32" ALIAS "GetEnvironmentVariableA" (ByVal szName$, ByVal szValue$, ByVal Size&) AS LONG
'*** This functions isn't available on Win32.
'DECLARE PUBLIC FUNCTION GetWinFlags LIB "kernel32" () AS LONG
DECLARE PUBLIC SUB GetSystemInfo LIB "kernel32" ALIAS "GetSystemInfo" ( rSysInf AS SysInfoType )
DECLARE PUBLIC FUNCTION LoadLibrary LIB "kernel32" ALIAS "LoadLibraryA" (ByVal path$) AS LONG
DECLARE PUBLIC FUNCTION GetPrivateProfileString LIB "kernel32" ALIAS "GetPrivateProfileStringA" (ByVal szSect$, ByVal szKey$, ByVal szDef$, ByVal szBuf$, ByVal cbBuf&,ByVal szFile$) AS LONG
DECLARE PUBLIC FUNCTION LoadString LIB "user32" ALIAS "LoadStringA" (ByVal hinst&,ByVal TextID&, ByVal Textbuf$, ByVal BufSize&) AS LONG
DECLARE PUBLIC FUNCTION GetModuleHandle LIB "kernel32" ALIAS "GetModuleHandleA" (ByVal path$) AS LONG
DECLARE PUBLIC FUNCTION GetDlgItem LIB "user32" ALIAS "GetDlgItem" (ByVal hwndDlg&, ByVal idControl&) AS LONG
DECLARE PUBLIC FUNCTION IsWindowVisible LIB "user32" ALIAS "IsWindowVisible" (ByVal hwndDlg&) AS INTEGER
DECLARE PUBLIC FUNCTION UpdateWindow LIB "user32" ALIAS "UpdateWindow" (ByVal hwndDlg&) AS INTEGER
DECLARE PUBLIC FUNCTION SetFocus LIB "user32" ALIAS "SetFocus" (ByVal hwndDlg&) AS LONG
DECLARE PUBLIC FUNCTION GetFocus LIB "user32" ALIAS "GetFocus" () AS LONG
DECLARE PUBLIC FUNCTION GetParent LIB "user32" ALIAS "GetParent" (ByVal hwndDlg&) AS LONG
''shell
DECLARE PUBLIC FUNCTION SetWindowText LIB "user32" ALIAS "SetWindowTextA" (ByVal hwnd&, ByVal lpString$) AS INTEGER
DECLARE PUBLIC FUNCTION EnableWindow (ByVal hwnd&, ByVal fEnable&) AS INTEGER
DECLARE PUBLIC FUNCTION WEnableWindow LIB "user32" ALIAS "EnableWindow" (ByVal hwnd&, ByVal fEnable&) AS INTEGER
DECLARE PUBLIC FUNCTION ShowWindow LIB "user32" ALIAS "ShowWindow" (ByVal hwnd&, ByVal fEnable&) AS INTEGER
DECLARE PUBLIC FUNCTION RegSetValue LIB "advapi32" ALIAS "RegSetValueA" (ByVal hKey&, ByVal szSubKey$, ByVal dwType&, ByVal szValue$, ByVal cbValue&) AS LONG
DECLARE PUBLIC FUNCTION RegCloseKey LIB "advapi32" ALIAS "RegCloseKey" (ByVal hKey&) AS LONG
'DECLARE PUBLIC SUB RemoveIniSection (szFile$, szSect$, cmo%)
DECLARE PUBLIC SUB CreateIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
'DECLARE PUBLIC SUB RemoveIniKey (szFile$, szSect$, szKey$, cmo%)
'DECLARE PUBLIC SUB CreateSysIniKeyValue (szFile$, szSect$, szKey$, szValue$, cmo%)
DECLARE PUBLIC SUB CreateProgmanGroup (szGroup$, szPath$, cmo%)
DECLARE PUBLIC SUB CreateProgmanItem (szGroup$, szItem$, szCmd$, szOther$, cmo%)
DECLARE PUBLIC SUB ShowProgmanGroup (szGroup$, Cmd%, cmo%)
'DECLARE PUBLIC SUB StampResource (szSect$, szKey$, szDst$, wResType%, wResId%, szData$, cbData%)
'DECLARE PUBLIC SUB AddDos5Help (szProgName$, szProgHelp$, cmo%)
DECLARE PUBLIC SUB CopyFile (szFullPathSrc$, szFullPathDst$, cmo%, fAppend%)
DECLARE PUBLIC SUB RemoveFile (szFullPathSrc$, cmo%)
'DECLARE PUBLIC SUB BackupFile (szFullPath$, szBackup$)
'DECLARE PUBLIC SUB RenameFile (szFullPath$, szBackup$)
DECLARE PUBLIC SUB InitInstall
DECLARE PUBLIC SUB OpenLogFile (szFile$, fAppend%)
DECLARE PUBLIC SUB CloseLogFile
DECLARE PUBLIC SUB WriteToLogFile (szStr$)
'DECLARE PUBLIC FUNCTION FindFileUsingFileOpen (szFile$) AS STRING
DECLARE PUBLIC FUNCTION IsDirWritable (szDir$) AS INTEGER
DECLARE PUBLIC FUNCTION IsFileWritable (szFile$) AS INTEGER
'DECLARE PUBLIC SUB PrependToPath (szSrc$, szDst$, szDir$, cmo%)
DECLARE PUBLIC FUNCTION Lot_TrimEndSlash (path$) AS STRING
'** Lotus Error functions
DECLARE PUBLIC SUB ErrorMsg (nMsg%, szErr$)
DECLARE PUBLIC SUB FatalErrorMsg (nMsg%, szErr$, nErr%)
DECLARE PUBLIC SUB ErrorMsgNoDlgExit (nMsg%, szErr$)
DECLARE PUBLIC FUNCTION LdString (TextID%) AS STRING
DECLARE PUBLIC SUB LdStringInit ()
%rem
DECLARE PUBLIC SUB StfApiErr (nMsg%, szApi$, szArgs$)
DECLARE PUBLIC SUB BadArgErr (nArg%, szApi$, szArgs$)
'' chk arg
'DECLARE PUBLIC FUNCTION FValidDrive (szDrive$) AS INTEGER
'DECLARE PUBLIC FUNCTION FValidInfSect (szSect$) AS INTEGER
'DECLARE PUBLIC FUNCTION FValidIniFile (szFile$) AS INTEGER
%endrem ''DEBUG
'' Windows system detect
DECLARE PUBLIC FUNCTION GetWindowsMajorVersion () AS INTEGER
DECLARE PUBLIC FUNCTION GetWindowsMinorVersion () AS INTEGER
DECLARE PUBLIC FUNCTION IsNewShell () AS INTEGER
DECLARE PUBLIC FUNCTION GetWindowsMode () AS INTEGER
DECLARE PUBLIC FUNCTION GetWindowsDir () AS STRING
DECLARE PUBLIC FUNCTION GetWindowsSysDir () AS STRING
DECLARE PUBLIC FUNCTION IsWindowsShared () AS INTEGER
DECLARE PUBLIC FUNCTION GetScreenWidth () AS INTEGER
DECLARE PUBLIC FUNCTION GetScreenHeight () AS INTEGER
'' Detect
DECLARE PUBLIC FUNCTION IsLongDirPath (szDir$) AS INTEGER
DECLARE PUBLIC FUNCTION IsDriveValid (szDrive$) AS INTEGER
DECLARE PUBLIC FUNCTION IsDriveLocalHard (szDrive$) AS INTEGER
DECLARE PUBLIC FUNCTION IsDriveRemovable (szDrive$) AS INTEGER
DECLARE PUBLIC FUNCTION IsDriveNetwork (szDrive$) AS INTEGER
DECLARE PUBLIC SUB GetValidDrivesList (szSymbol$)
DECLARE PUBLIC SUB GetLocalHardDrivesList (szSymbol$)
DECLARE PUBLIC SUB GetRemovableDrivesList (szSymbol$)
DECLARE PUBLIC SUB GetNetworkDrivesList (szSymbol$)
DECLARE PUBLIC FUNCTION GetTotalSpaceForDrive (szDrive$) AS LONG
DECLARE PUBLIC FUNCTION GetFreeSpaceForDrive (szDrive$) AS LONG
DECLARE PUBLIC FUNCTION GetEnvVariableValue (szEnvVar$) AS STRING
DECLARE PUBLIC FUNCTION GetNumWinApps () AS INTEGER
DECLARE PUBLIC FUNCTION DoesFileExist (szFile$, mode%) AS INTEGER
DECLARE PUBLIC FUNCTION GetDateOfFile (szFile$) AS STRING
DECLARE PUBLIC FUNCTION GetYearFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetMonthFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetDayFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetHourFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetMinuteFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetSecondFromDate (szDate$) AS INTEGER
DECLARE PUBLIC FUNCTION GetVersionOfFile (szFile$) AS STRING
DECLARE PUBLIC FUNCTION GetVersionNthField (szVersion$, nField%) AS LONG
DECLARE PUBLIC FUNCTION GetSizeOfFile (szFile$) AS LONG
DECLARE PUBLIC FUNCTION FindTargetOnEnvVar (szFile$, szEnvVar$) AS STRING
DECLARE PUBLIC FUNCTION FindFileInTree (szFile$, szDir$) AS STRING
DECLARE PUBLIC FUNCTION DoesDirExist (szDir$) AS INTEGER
DECLARE PUBLIC FUNCTION DoesIniSectionExist (szFile$, szSect$) AS INTEGER
DECLARE PUBLIC FUNCTION DoesIniKeyExist (szFile$, szSect$, szKey$) AS INTEGER
DECLARE PUBLIC FUNCTION GetIniKeyString (szFile$, szSect$, szKey$) AS STRING
DECLARE PUBLIC FUNCTION GetConfigSmartdrvSize () AS INTEGER
DECLARE PUBLIC FUNCTION GetConfigRamdriveSize () AS INTEGER
DECLARE PUBLIC FUNCTION GetConfigNumBuffers () AS INTEGER
DECLARE PUBLIC FUNCTION GetConfigNumFiles () AS INTEGER
DECLARE PUBLIC FUNCTION GetConfigLastDrive () AS STRING
DECLARE PUBLIC FUNCTION IsDriverInConfig (szDrv$) AS INTEGER
DECLARE PUBLIC FUNCTION GetProcessorType () AS INTEGER
DECLARE PUBLIC SUB GetParallelPortsList (szSymbol$)
DECLARE PUBLIC SUB GetSerialPortsList (szSymbol$)
DECLARE PUBLIC FUNCTION Has87MathChip () AS INTEGER
DECLARE PUBLIC FUNCTION HasMonochromeDisplay () AS INTEGER
DECLARE PUBLIC FUNCTION HasMouseInstalled () AS INTEGER
DECLARE PUBLIC SUB SetBitmap(szDll$, Bitmap%)
DECLARE PUBLIC SUB SetAbout(szAbout1$, szAbout2$)
DECLARE PUBLIC FUNCTION UIStartDlg(szDll$, Dlg%, szDlgProc$, HelpDlg%, szHelpProc$) AS STRING
DECLARE PUBLIC SUB UIPop (n%)
DECLARE PUBLIC SUB UIPopAll
DECLARE PUBLIC SUB SetTitle (sz$)
DECLARE PUBLIC SUB SetSymbolValue (szSymbol$, szValue$)
DECLARE PUBLIC SUB RemoveSymbol (szSym$)
DECLARE PUBLIC FUNCTION GetSymbolValue (szSymbol$) AS STRING
DECLARE PUBLIC FUNCTION GetListLength(szSymbol$) AS INTEGER
DECLARE PUBLIC FUNCTION GetListItem(szSymbol$, n%) AS STRING
DECLARE PUBLIC SUB AddListItem(szSymbol$, szItem$)
DECLARE PUBLIC SUB ReplaceListItem(szSymbol$, n%, szItem$)
DECLARE PUBLIC FUNCTION InitFrame (szCmdLine$) AS INTEGER
DECLARE PUBLIC FUNCTION InitSetup (szCmdLine$) AS INTEGER
DECLARE PUBLIC FUNCTION ShowWaitCursor () AS LONG
DECLARE PUBLIC SUB RestoreCursor (hPrev&)
DECLARE PUBLIC SUB WriteToFile(szFile$,sz$)
'** these are some functions to deal with 32 bit type dir names
DECLARE PUBLIC FUNCTION GetShortPathName(ByVal szLong$, szShort$) AS LONG
DECLARE PUBLIC FUNCTION Lot_Regedit LIB "lcomstf.dll" ALIAS "_Lot_Regedit@8" (ByVal szFile$,ByVal szFile$) AS LONG
DECLARE PUBLIC FUNCTION Lot_GetShortPathName LIB "lcomstf.dll" ALIAS "_Lot_GetShortPathName@12" (ByVal szLong$,ByVal szShort$,ByVal cchBuffer&) AS LONG
DECLARE PUBLIC FUNCTION Lot_CreateIniKeyValue LIB "lcomstf.dll" ALIAS "_Lot_CreateIniKeyValue@20" (ByVal szFile$,ByVal szSect$,ByVal szKey$,ByVal szValue$,ByVal cmo&) AS LONG
DECLARE PUBLIC FUNCTION Lot_CleanPath (path$) AS INTEGER
DECLARE PUBLIC FUNCTION Lot_GetNthFieldFromIniString (szLine$, iField%, sp$) AS STRING
DECLARE PUBLIC FUNCTION Lot_RegCreateKeyEx( ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION Lot_RegDelAllSubKeys( ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION Lot_DoesRegKeyExistEx(ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION Lot_DeleteRegKeyEx( ByVal hKey&, ByVal szKey$) AS LONG
DECLARE PUBLIC FUNCTION Lot_CreateRegKeyValueEx(ByVal hKey&, ByVal szSubKey$, ByVal szValueName$,_
ByVal dwType&, ByVal lpValueData as variant, ByVal dwDataLen& ) AS LONG
DECLARE PUBLIC FUNCTION Lot_SetRegKeyValueEx(ByVal hKey&, ByVal szSubKey$, ByVal szValueName$,_
dwType&,ByVal lpValueData, ByVal dwDataLen& ) AS LONG
DECLARE PUBLIC FUNCTION Lot_GetRegKeyValueEx(ByVal hKey&, ByVal szSubKey$,ByVal szValueName$,_
dwType&, lpBuf as variant, cbBuf&) AS LONG
DECLARE PUBLIC FUNCTION Lot_CreateDirectory LIB "mscuistf.dll" ALIAS "_Lot_CreateDirectory@4" (ByVal szDir$) AS LONG
DECLARE PUBLIC SUB SetListItem (szSymbol$, n%, szListItem$)
DECLARE PUBLIC FUNCTION NullTrim (szString$) AS STRING
DECLARE PUBLIC FUNCTION CreateBuffer (Length&) AS STRING
' called from main to start off everything
DECLARE PUBLIC SUB SetUpAPI
DECLARE PUBLIC SUB ASSERT (assertion%, msg$)
''JMD: Replace old MS Setup functions
PUBLIC FUNCTION FValidFATPath (ByVal szPath$) AS INTEGER
FValidFATPath = Lot_ValidPath (szPath$)
END FUNCTION
PUBLIC FUNCTION FValidPath (ByVal szPath$) AS INTEGER