wow64

How to create a shared registry key for WoW64 and x64 Processes.

Is there some way to create a custom (WoW64) shared registry key? By default some registry keys are shared and others are redirected (see MSDN). But I want to create a custom registry key under HKLM\Software which should be shared. I'm looking for a solution in C# (maybe P/Invoke) and WIX. ...

in x64 Windows is there a way to run a Runtime.exec() process avoiding 'Registry redirection'

Our app runs in jvm 32 bit, even when in windows x64. Now, at some point, I need to access some registry values, for example HKEY_LOCAL_MACHINE/SOFTWARE/mycomp. I do this by executing cmd /C reg query HKEY_LOCAL_MACHINE\SOFTWARE\mycop from Runtime.exec() and parsing the output. This works fine when running on windows 32b, the probl...

How can I start ServerManager.msc on a 64bit Windows Server 2008 from a 32bit .NET App?

Hi I have the following scenario: - 64bit Windows Server 2008. - 32bit .NET application (needs to be x86 for various reasons). - I need to start ServerManager.msc from my .NET application. When using Process.Start("ServerManager.msc"), I get the following exception: System.ComponentModel.Win32Exception. Message="The system cannot find ...

Installing drivers from NSIS installer in x64 system.

I want to add support for x64 OSes to my NSIS installer. One of the installer's task is drivers installation. I've written a special NSIS plugin for this task. This plugin uses Driver Install Frameworks API (DIFxAPI) to install drivers. The problem is that this API does not work in WOW64. Is there any way to create x64 installer appli...

WOW64: get x64 %CommonProgramFiles% from 32 bit process

Queries I tried: ExpandEnvironmentStrings("%COMMONPROGRAMFILES%"), GetSpecialPath(CSIDL_PROGRAM_FILES_COMMON). All resolve to (typically) c:\\Program Files (x86)\\Common Files from my 32 bit app. I need to check a file version installed (typically) under c:\\Program Files\\Common Files of a 643 bit application. ...

How to determine if a registry key is redirected by WOW64?

Is it possible to determine whether or not a given registry key is redirected? My problem is that I want to enumerate registry keys in both the 32-bit and 64-bit registry views in a generic manner from a 32-bit application. I could simply open each key twice, first with KEY_WOW64_64KEY and then with KEY_WOW64_32KEY. However, if the ke...

Use 64 bits COM objects from 32 bits process

I'm using the virtualbox api that uses COM on windows. If you have a 64 bit OS it will install the 64 bit version and the COM interfaces will be accessible to 64 bit clients but not to 32 bit ones. I'm told this is a COM limitation but I have seen ways to use dll32 to "publish" 32 bit interfaces on the registry, so 64 bit processes can c...

Can a WoW64 process create/fork/etc pure x64 process ?

Hi. I wish to call a x64 exe from x86 process/exe, for example: open x32 cmd : %windir%\SysWoW64\cmd.exe start notepad: notepad.exe <- it will be x32 notepad (according to taskmanager = *) Is it possible to execute the x64 notepad from the x32 cmd ? My problem is the process I'm executing must run as x64, I don't want it to wor...

X64 installer using Won64 node registry

I am using InstallShield 2008 premium edition. I created one basicMSI project only to target x64 platforms. I changed summary property to "x64". But this installer is writing registry entries in "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\CompanyName\ProductName" . I am using both installshield script and vc++ DLL for custom actions. Why...

WOW64 woes (.lnk shortcuts)

I'm using Windows 7 (x64) and Delphi 2010. I'm writing a component that will emulate the start menu. However, I've run into the following problems: If I attempt to open a shortcut (.lnk file) with ShellExecute, this will fail whenever %ProgramFiles% is part of the target path of the shortcut (it will then look at the C:\Program Files ...

Can a 32 bit User-mode driver run on top of a 64 bit OS?

Hello everyone, I have been checking out some info about 64-bit driver development; I found that drivers have to be re-written in order to be compatible with a 64 bit OS. However, I was wondering if this also holds true for User-mode drivers. The reason that I am asking this is because my understanding is that user mode drivers pass t...

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductId not found running 32bit app on 64bit Windows

As title really. Looking in regedit the key-value exists, but the Wow6432 key (HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion) doesn't have this key. This means a 32-bit app doesn't work on my 64-bit Windows version... which seems wrong, shouldn't the 32-bit app run without modifications? Or is this one case 32-bit apps ha...

How to rename a Network volume's name in WOW64 Apps' Common File Dialog

I'm developing a network redirector like SMB. Once a volume has been connected, I create 4 registry keys to following nodes. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\#UNCPATH HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\##UNCPATH HKEY_CURRENT_USER\Software\M...

Understanding assembly header with corFlags (why my assembly loads in 32bit address space?)

Hi all, I've found a fair bit of information related to how a .NET assembly should load based on the flags set in the assembly header. Pages such as http://blogs.msdn.com/b/joshwil/archive/2005/05/06/415191.aspx seem to suggest that if you have a header as follows PE : PE32 ILONLY : 1 32BIT : 0 It has been compiled as "AnyCPU" an...

How to enum modules in a 64bit process from a 32bit WOW process

Hi, All, I have a requirement to retrieve all modules of a 64bit process in a 32bit WOW process in Windows, EnumProcessModules would fail as described: If this function is called from a 32-bit application running on WOW64, it can only enumerate the modules of a 32-bit process. If the process is a 64-bit process, this function fails ...

HKEY_CURRENT_USER\Software\Wow6432Node\Classes vs HKEY_CURRENT_USER\Software\Classes\Wow6432Node

The question is very simple, what's the difference between HKEY_CURRENT_USER\Software\Wow6432Node\Classes and HKEY_CURRENT_USER\Software\Classes\Wow6432Node? ...