.net 需要获取程序文件文件夹,在64位机器上运行32位应用程序?

.net 需要获取程序文件文件夹,在64位机器上运行32位应用程序?,.net,windows,.net,Windows,我试过了 Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) 'Program Files (x86) Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles) '<Program Files (x86) Environment.GetFolderPath(Environment.SpecialFolder.Programs)

我试过了

Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) 'Program Files (x86)
Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles) '<Program Files (x86)
Environment.GetFolderPath(Environment.SpecialFolder.Programs) '<blank>
Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)'程序文件(x86)

Environment.GetFolderPath(Environment.SpecialFolder.CommonProgramFiles)在本例中,读取
ProgramW6432
环境变量

Environment.GetEnvironmetnVariable("ProgramW6432");

您仍然会被重定向到c:\program files(x86)而找不到该文件。我需要在平板电脑上显示软键盘,但我是一个32位的winforms应用程序。我找到了tabtip.exe,它显示软键盘,并且只在平板电脑上显示进程,没有键盘。我可以从这个过程中获得文件路径,但当我这样做时,我得到了一个例外,我今天还意识到法语版本的windows对程序文件有不同的名称。