草庐IT

windows - SHGetSpecialFolderPath,如何从 32 位应用程序访问 64 位 CSIDL

有没有办法让在64位系统上运行的32位应用程序访问64位应用程序的默认文件夹?例如,在32位应用程序中将SHGetSpecialFolderPath与CSIDL_PROGRAM_FILES结合使用会返回“C:\从32位应用程序获取“C:\ProgramFiles”的方法?这里的一个相关问题没有帮助SHGetFolderPath()32bitvs64bit在调用SHGetSpecialFolderPath之前也不会抑制wow64文件系统重定向 最佳答案 回答我自己的问题,SHGetSpecialFolderPath似乎是不可能的。在V

windows - 获取 Windows 架构(32/64 位版本)

我遇到了一个小问题:我想了解操作系统的架构,问题是我的编程语言不支持此类功能。因此,我需要从Windowsdll(如kernel32.dll)中读取此信息我确实尝试使用函数GetNativeSystemInfo/GetVersionEx/GetSystemInfo获取信息。不幸的是我无法获得架构:/在任何windowsdll中是否有一些其他的函数来读取架构?(它不需要是kernel32它可以是任何dll但它必须存在于winxp+中)作为信息:我正在使用Gupta(SQLWindows/Teamdevoloper)编辑1:typedefstruct_SYSTEM_INFO{union{D

windows - 64 位操作系统 (windows) 上的 32 位应用程序

我需要一些帮助来了解32位应用程序如何在64位操作系统上使用内存。一个32位应用程序可以在64位操作系统上使用2GB内存,对吗?这是否意味着并行运行的3个32位应用程序可以寻址6GB的内存...还是3个32位应用程序必须共享操作系统拥有的2-4gb的32位内存?同样,如果我有一个编译为32位的Web服务,在64位机器上的IIS下运行。只要对该web服务的单个请求始终保持在2gb内存使用量以下,重新编译到64位是否有任何意义?我的理论是,IIS为每个请求创建一个新进程,因此整个进程池将能够利用64位机器拥有的所有内存,8或15或20gig或其他。告诉我你的想法,谢谢

c# - 64 位操作系统与 32 位应用程序

我创建了一个在32位操作系统上运行良好的应用程序,但我尝试过的每个64位操作系统似乎都无法正常工作。我正在创建一个允许您更改Windows7登录屏幕背景图像的应用程序。为此,我的应用程序需要在System32目录中创建一个文件夹,而在64位操作系统上似乎没有想要创建它。我没有收到错误,也没有抛出异常。它似乎没有创建文件夹。64位操作系统有一个不同的System32文件夹“Windows\SysWOW64\”,所以我应该改写它吗?我对64位操作系统在做什么感到有点困惑,如果有人能解决这个问题并为我指明正确的方向,那就太好了。提前致谢!制作目录的代码:path=DriveLabel+=@"

c - 如何创建包含 32 位和 64 位二进制文​​件并在操作系统上运行它们的应用程序?

我做了一个应用程序,我必须编译它的32位和64位版本。我看到一些应用程序,例如ProcessExplorer,其作用如下。在32位操作系统上,它运行一个32位应用程序,但在64位操作系统上,它提取同一exe的64位版本,这将被执行。那么我怎样才能从我的应用程序中制作这样的应用程序呢?我应该在VisualStudio中进行哪些设置? 最佳答案 Processexplorer的工作方式如下:您下载一个32位可执行文件。当您在32位操作系统上运行该可执行文件时,就是这样。当您在64位操作系统上运行该可执行文件时,32位进程会在启动时检测到

windows - 将 32 位项目升级到 64 位后,启动应用程序失败,错误代码为 0xc000007b

我在这里发布这个问题是因为我在尝试寻找答案时遇到了很多麻烦-特别是StackOverflow上的所有答案都没有解决问题。我最近升级了我的VisualStudio201032位项目,以便为x64编译。编译没有问题,但在尝试启动应用程序时失败,错误代码为0xc000007b。通常当您忘记将包含的DLL从32位升级到64位并因此尝试在64位应用程序中加载32位代码时会发生这种情况,但在这种特殊情况下,我只包含Windows附带的DLL,所以无论如何,WOW应该选择正确的DLL版本……理论上。ProcMon表示所有DLL都是从C:\Windows\System32加载的,这是64位插件的正确位

java - ODBC 连接到 64 位 Windows 中的 Access 数据库

我正在使用thistutorial创建从Java应用程序到MicrosoftAccess2010数据库的数据库连接。本教程在windows中创建一个系统dsn,然后使用以下java代码行连接到该系统dsn:Connectionconn=DriverManager.getConnection("jdbc:odbc:DSN_NAME");问题是,当我点击链接添加一个新的系统dsn时:ControlPanel-->SystemandSecurity-->AdministrativeTools-->DataSources(ODBC)-->(SystemDSNTab)-->(Add..butto

c# - 在 64 位进程中加载​​ 32 位 dll

这个问题在这里已经有了答案:Target32Bitor64BitnativeDLLdependingonenvironment(3个答案)DllImport-Anattemptwasmadetoloadaprogramwithanincorrectformat[duplicate](1个回答)关闭8年前。社区在8个月前审查了是否重新打开此问题,然后将其关闭:原始关闭原因未解决我希望我的C#应用程序有条件地运行native方法,有条件地选择运行dll的x86或x64版本。每当我尝试加载32位dll时,我都会收到以下错误:UnhandledException:System.BadImage

django - 找不到 msguniq。 Django 1.8,Windows 7 64 位

我已经成功安装了msguniq(可以检查它的版本),我尝试更改与windowsxp的兼容性并以管理员身份运行它,但我仍然收到此错误:CommandError:Can'tfindmsguniq.MakesureyouhaveGNUgettexttools0.15ornewerinstalled.我真的很困惑,因为我已经完成了thisanswer中的所有操作.我真的不知道如何修复它(还尝试将gettext.exe和xgettext.exe更改为与Windowsxp兼容)。 最佳答案 我遇到了完全相同的问题。最终只需关闭并再次打开cmd窗

windows - Inno Setup 始终以 Pascal 脚本代码以 32 位模式启动 PowerShell

我想在InnoSetup的ssPostInstall步骤中使用PowerShell(64位版本),但它总是打开32位PowerShell。如您在我的脚本中所见,我的InnoSetup配置为64位应用程序。当我开始设置时,我可以在任务管理器中看到它作为32位应用程序运行另外,将要打开的PowerShell也是32位模式。这是我的InnoStup脚本:[Setup]ArchitecturesAllowed=x64ArchitecturesInstallIn64BitMode=x64PrivilegesRequired=admin[Code]ProcedureCurStepChanged(C