Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I downloaded the OpenHardwareMonitor program. The web site says it runs on 32-bit and 64-bit Windows. There is no installation file, it is just contained in a zip file. If you look inside the zip file, the only executable is OpenHardwareMonitor.exe. All of this leads me to believe it is a 32-bit program. So I unzipped it into C:\Program Files (x86).

But then I ran it on my Windows 7 64-bit system, and opened up Task Manager. Based on what I read, if a program is 32-bit, it will show *32 next to the process name in Task Manager. But OpenHardwareMonitor.exe does not have *32 next to it. Does that mean it is 64-bit? How would it run on a 32-bit system then?

Also, for programs that do not have installation files and only come in a zip file, does it matter if I extract it into C:\Program Files if it is a 32-bit program, or C:\Program Files (x86) if it is a 64-bit program?

share|improve this question
    
"Also, for programs that do not have installation files and only come in a zip file..." - If they are portable apps, you can place them anywhere, including on your pen drive. Also, 32-bit programs installed to Program Files and 64-bit ones installed to Program Files (x86) should continue to work (see questions related to the two folders on SU). –  Karan Dec 27 '12 at 16:50

3 Answers 3

This is a .Net tool which is configured as AnyCPU. On a 32Bt Windows it runs as 32Bit on a 64Bit Windows it runs as 64Bit applications.

share|improve this answer
1  
More information on AnyCPU. –  TFM Dec 27 '12 at 19:47
    
Thanks, so Task Manager wasn't lying. :) –  pacoverflow Dec 27 '12 at 22:35
  • The fact that a program is placed into "Program Files (x86)" or "Program Files" doesn't make it run in 32-bit or 64-bit context;
  • An installer doesn't force a program run in 32/64-bit context;
  • Programs are installed into whether "Program Files" or "Program Files (x86)" only for their own or user's comfort;
  • If task manager (in 64-bit windows) doesn't add "*32" to the program's "Image Name", then it means that this image is 64-bit;
  • A program can have images for either 32-bit or 64-bit contexts;
  • A program may run both in 32-bit and 64-bit contexts simultaneously (using different images);
  • If a program is 64-bit only (has only 64-bit image), then it won't run on 32-bit system;
  • 32-bit programs run on 64-bit windows systems using WoW64 subsystem. This fact usually means that 32-bit programs usually run unnoticeably slower (compared to 32-bit systems) while having quite a bit of more memory available to them.
share|improve this answer
    
Thanks, so OpenHardwareMonitor has both a 32-bit and 64-bit image. I ran into another program (Process Explorer from the Sysinternals Suite) that also has 32-bit and 64-bit images, although it goes about it differently than OpenHardwareMonitor. The procexp.exe extracts a procexp64.exe onto the disk and then you can see both of them in the Task Manager. –  pacoverflow Dec 27 '12 at 22:59
    
openhardwaremonitor is ".net pe" executable that has intermediate language (IL) data so .net could compile it to run in either 32 or 64bit environments. and yup, procexp.exe uses 64-bit system by running 64bit image of itself (after extracting it from itself). in 64bit system you actually see procexp64.exe's process window on your desktop. –  boo Dec 28 '12 at 20:45

In my on the Applications task manager it doesn't show a *32 or *64 next to the name, just the name. If it is compatible with x86 and x64 systems then it is an x86 program.

However, if you go to the Processes tab, it will show a *32 on x64 systems.

share|improve this answer
    
Nitpick, but there is no such thing as x32. It's x86, and then x86_64 (sometimes x64). –  Thomas Dec 27 '12 at 4:09
    
@Thomas Thanks, I thought x32 didn't sound right, couldn't think of right thing =p –  ekaj Dec 27 '12 at 4:12
    
Task Manager in Win7 x64 does show *32 for 32-bit apps. –  Karan Dec 27 '12 at 16:46
    
@Karan is right - I was looking under Applications. If you look under Processes you can see the *32. –  ekaj Dec 27 '12 at 18:38
    
not correct. .NET framework applications which are built using "AnyCPU" option can run on any CPU, any OS that supports a CLR framework, and will be shown under task manager as the architecture it's running on. That means on x86 it's 32 bit, on x86_64 it's 64 bit, on IA-64 it's IA-64 –  Lưu Vĩnh Phúc Aug 31 '13 at 3:44

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.