P
Peter Judge
Guest
In 11.3 there is a new keyword called PROCESS-ARCHITECTURE that you can use in a pre-processor. Eg &if process-architecture eq '32' &then &global-define USER 'user32' ... &elseif process-architecture eq '64' &then &global-define USER 'user32' ... &endif I'm not sure what the dll equivalents are although you may still be able to use "user32", because MS provides 64-bit DLLs with '32' in the name sometimes. See odbc32.dll for instance: that is the name for both 32- and 64-bit versions of the DLL (in different locations, of course). I've found a good way to determine the bitness of a DLL is to use this Dependency Walker ( http://www.dependencywalker.com/ ). hth, -- peter From: PeterWokke [mailto:bounce-PeterWokke@community.progress.com] Sent: Monday, 30 June, 2014 06:05 To: TU.OE.RDBMS@community.progress.com Subject: [Technical Users - OE RDBMS] Run External Procedures From the Window API in a 64bit Progress Client Run External Procedures From the Window API in a 64bit Progress Client Thread created by PeterWokke Up to now we have always used the 32bit Progress Client under Progress 10.2B. Now there is a 64bit Progress client available under Progress 11.3 we have to make our application available for the 64bit client aswell. How to deal with the external procedures like the window API. In our libraries we have these global define settings. How can you check on run time if it is a 32bit or 64bit Progress Client . Which values should I use in case of the 64bit client for the following global settings in my application. /* libraries */ &GLOBAL-DEFINE USER "user32" &GLOBAL-DEFINE KERNEL "kernel32":U &GLOBAL-DEFINE SHELL "shell32":U &GLOBAL-DEFINE MAPI "mapi32":U &GLOBAL-DEFINE GDI "gdi32":U &GLOBAL-DEFINE MMEDIA "winmm":U &GLOBAL-DEFINE WINSPOOL "winspool.drv":U &GLOBAL-DEFINE ADVAPI "advapi32":U &GLOBAL-DEFINE WINSOCK "wsock32.dll":U Stop receiving emails on this subject. Flag this post as spam/abuse.
Continue reading...
Continue reading...