Hello Roger, RA> I was sopposed to read NOT usefull The code was suggested as I placed user program on desktop with dlls on desktop and Zipmaster found the DLL in Windows directory first which were out of date. This code change fixed the problem. I TRY to be useful. Regards, Alistair+ >> > >> > Suggested code change: >> > procedure TZipMaster.Load_Zip_Dll; >> > var >> > fullpath: string; >> > begin >> > // This is new code that tries to locate the DLL before loading it. >> > // The user can specify a dir in the DLLDirectory property. >> > // The user's dir is our first choice, but we'll still try the >> > // standard Windows DLL dirs (Windows, Windows System, Current dir). >> > //Some users may make FDLLDirectory with, or without the >> appendbackslash >> > fullpath := ''; >> > >> > if FDLLDirectory <> '' then >> > if FileExists(FDLLDirectory + '\ZIPDLL.DLL') then >> > fullpath := FDLLDirectory + '\ZIPDLL.DLL' >> > else if FileExists(FDLLDirectory + 'ZIPDLL.DLL') then >> > fullpath := FDLLDirectory + 'ZIPDLL.DLL'; >> > >> > if fullpath = '' then >> > fullpath := 'ZIPDLL.DLL'; // Let Windows search the std dirs >> > >> > >> > >> > >> > >> > and >> > >> > procedure TZipMaster.Load_Unz_Dll; >> > var >> > fullpath: string; >> > begin >> > // This is new code that tries to locate the DLL before loading it. >> > // The user can specify a dir in the DLLDirectory property. >> > // The user's dir is our first choice, but we'll still try the >> > // standard Windows DLL dirs (Windows, Windows System, Current dir). >> > //Some users may make FDLLDirectory with, or without the RA> appendbackslash >> > fullpath := ''; >> > if FDLLDirectory <> '' then >> > if FileExists(FDLLDirectory + '\UNZDLL.DLL') then >> > fullpath := FDLLDirectory + '\UNZDLL.DLL' >> > else if FileExists(FDLLDirectory + 'UNZDLL.DLL') then >> > fullpath := FDLLDirectory + 'UNZDLL.DLL'; >> > RA> Sorry for the typing error RA> Roger Aelbrecht RA> http://web.wanadoo.be/driehoeksw -- Regards, Alistair+