IF _VFP.STARTMODE > 1 LOCAL lcBuffer, lnLen DECLARE INTEGER GetPrivateProfileString in win32api String,String,String,String @,Integer,String WITH This lcBuffer = SPACE(400) DECLARE INTEGER GetModuleFileName IN win32api Integer,String @,Integer IF _VFP.STARTMODE = 3 DECLARE INTEGER GetModuleHandle IN win32api String lnLen = Getmodulefilename(GetModuleHandle(.cServerName + ".dll"), @lcBuffer, LEN(lcBuffer)) ELSE lnLen = Getmodulefilename(0, @lcBuffer, LEN(lcBuffer)) ENDIF lcBuffer = LEFTC(lcBuffer, lnLen) .cDirectory = LEFTC(lcBuffer, RATC('\', lcBuffer) - 1) .cServerName = LEFTC(SUBSTRC(lcBuffer, RATC('\', lcBuffer) + 1), AT_C(".", .cServerName) -1) ENDWITH ENDIF