Ich lasse mal die Latein-Exkursion links liegen und erlaube mir, noch etwas zum ursprünglichen Problem zu posten.
In der KBASE gibt es etwas bzgl. Dir() und Mac OS:
Title:
LotusScript Dir Function Does not Work as Expected; Causes Code to Exit with No Error
Product: Lotus Notes > Lotus Notes > Version 6.x
Platform(s): Mac OS X, Mac OS
Date: 13.09.2004
Doc Number: 1157300
Problem
The LotusScript Dir function does not work correctly in Notes 6.x Client on the Macintosh platform.
This results in the calling code to exit without error.This issue is known to cause the agent, Synchronize Address Book, in the iNotes mail template (iNotes6.ntf) to fail without error. This ultimately results in the Address Book not synchronizing.
Solution
This issue has been reported to Lotus Software Quality Engineering.
Workaround:
Rather than using the DIR function to check for the existence of a database one can get a handle to the database and then check whether or not the database is opened using the IsOpen property.
General example:
Dim dbcheck as new notesdatabase("", dbstringname)
If not dbcheck.isopen then
'db doesn't exist....
End If
Example specific to iNotes6 mail template's agent Synchronize Address Book:
The AddressBookSync script library must be edited. Locate the iN_GetLocalDBPath function and make the edits to it's code noted below.
'** Make sure database exists
'sDB = Dir(sName) 'REMARK
'If (0 = Len(sDB)) Then 'REMARK
sDB=sName 'NEW
Dim opendbtry1 As New notesdatabase("", sDB) 'NEW
If Not opendbtry1.IsOpen Then 'NEW
'** try again with local path appended
sPath = Lcase(iN_GetDataPath)
If (Instr(1, Lcase(sName), sPath, 0) = 0) Then
'sDB = Dir(sPath & sName) 'REMARK
sDB = sPath & sName 'NEW
Dim opendbtry2 As New notesdatabase("", sDB) 'NEW
End If
'If (0 = Len(sDB)) Then 'REMARK
If Not opendbtry2.IsOpen Then 'NEW
Call iN_LogThis(L_ERR & sprintf(ER_NODB, sName))
sDB = iN_PromptForDB(sPath, sName)
End If
End If
Supporting Information:
In the iNotes mail template (iNotes6.ntf) the Synchronize Address Book agent makes use of functions with the Script Library AddressBookSync. The function iN_GetLocalDBPath makes the call to the Dir function which fails and causes the agent to exit without completing.
Related Documents:
Synchronizing Contacts Fails in iNotes Web Access Mail File Opened in Notes Client on a Macintosh
Document #: 1094531
Synchronize Contacts in iNotes Web Access Causes "Memory Allocation Request Exceeded 65,000 Bytes"
Document #: 1087821
Andreas