Jump to content

32-bit/64-bit programs?


MariusN
 Share

Recommended Posts

Hi folks...This might sound stupid, but i have encountered programs that can run on 32 bit AND 64 bit systems...I know 32 bit can run on a 64 bit PC, but those spesific programs were ONE application only that "sorta" adjust itself to the OS involved.. IS there a way to make AutoIt to "automaticly adjust" itself as a 32 or 64 bit application without having to recompile it as 2 different files?

...tia

PS: Reason for asking is i tried to run one of my utilities on a 64 bit program and it couldnt fix a registry problem. After re-creating my app as a 64 bit app, it worked just fine...

Edited by MariusN
Link to comment
Share on other sites

Either you make a 32-bit exe and have @OsArch guards all over the place, or you have a 32-bit launcher, that launches an 32-bit exe or 64-bit exe, depending on @OsArch. This can also be done in the installation process of your program (if it has any)

Ever wanted to call functions in another process? ProcessCall UDFConsole stuff: Console UDFC Preprocessor for AutoIt OMG

Link to comment
Share on other sites

PS: Reason for asking is i tried to run one of my utilities on a 64 bit program and it couldnt fix a registry problem. After re-creating my app as a 64 bit app, it worked just fine...

You ran into registry redirection. A 32bit app is going to get redirected to the wow3264node. In order to write to the correct registry section using a 32bit app, you need to detect the @OSArch, and if 64, you use the HKLM64 (for example).

Check the remarks for RegWrite:

http://www.autoitscript.com/autoit3/docs/functions/RegWrite.htm

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...