草庐IT

windows - 64 位 Windows 注册表 - 为什么 %Program Files% 转换为 %Program Files(x86)%?

运行如下代码后,在32位进程中,数据%ProgramFiles%自动转换。HKEYhSubKey;DWORDdwState;RegCreateKeyEx(HKEY_CURRENT_USER,L"TestKey",NULL,NULL,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&hSubKey,&dwState);std::wstringdata=L"%ProgramFiles%";RegSetValueEx(hSubKey,L"TestValue",NULL,REG_EXPAND_SZ,(BYTE*)data.c_str(),(DWORD)(

windows - 64 位应用程序与 32 位进程通信

我有一个使用32位第三方库的32位应用程序。现在我必须将我的应用程序设为64位,以便它可以利用64位地址空间(大内存)。由于我无法将32位库加载到64位应用程序进程中,我正在考虑在第三方库上创建32位可执行包装器,并使用IPC(命名管道/套接字)从我的64位应用程序进行通信。所以我的问题是他们这样做会有什么问题吗?此外,如果我必须在64位系统上安装我的应用程序,所有与我的应用程序相关的文件都将被复制到“c:\ProgramFiles”目录。现在我可以将我的32位第三方exe包装器保留在同一个“c:\ProgramFiles”中,还是我需要复制到“c:\ProgramFiles(x86)

windows - Tess4J 在 64 位 Windows 中独立工作,但在 Tomcat 7 中失败

尝试使用Tess4J进行OCR,并能够使其在64位Windows上作为独立应用程序运行。我正在使用Eclipse。现在我正在尝试创建相同代码的war并将其部署在Tomcat7中并使用servlet调用api。我收到以下错误。java.util.NoSuchElementExceptionjavax.imageio.spi.FilterIterator.next(ServiceRegistry.java:808)javax.imageio.ImageIO$ImageWriterIterator.next(ImageIO.java:816)javax.imageio.ImageIO$Ima

Windows(64 位)上的 Python 2.7.8(64 位)在 Ubuntu(64 位)上的速度是 2.7.8(64 位)的一半

在Linux上需要1.09171080828秒。在Windows上需要2.14042000294秒。基准代码:importtimedefmk_array(num):return[xforxinxrange(1,num)]defrun():arr=mk_array(10000000)x=0start=time.time()x=reduce(lambdax,y:x+y,arr)done=time.time()elapsed=done-startreturnelapsedif__name__=='__main__':times=[run()forxinxrange(0,100)]avg=su

c++ - 将 Windows 上的 32 位和 64 位 Boost 构建到同一文件夹中

我正在寻找config.jam的简单设置,它将使用MSVC在Windows上为x86和x64构建Boost(1.60或更高版本)。理想情况下使用对b2的单个调用——我知道它应该支持从单个调用生成多个输出。对x86和x64有两个单独的调用是可以的,但不是首选。我想要的另一件事是将两组库输出到相同文件夹中。显然,它们需要有不同的名称,所以我希望将-x64放在x64二进制文件名称中的某个位置。而且它仍然需要自动链接,所以我不能手动重命名它们,它必须是构建系统支持的东西。这部分是必不可少的。我已经readb2提供了一个--buildid参数并且自动链接支持BOOST_LIB_BUILDID定义

windows - 32 位用户模式驱动程序可以在 64 位操作系统上运行吗?

我一直在查看一些关于64位驱动程序开发的信息;我发现必须重写驱动程序才能与64位操作系统兼容。但是,我想知道这是否也适用于用户模式驱动程序。我问这个的原因是因为我的理解是用户模式驱动程序通过Win32API,所以理论上它们应该能够在WOW32之上运行。这是真的吗?谢谢,海梅 最佳答案 用户模式驱动程序可以是32位或64位,但请注意以下几点:用于打印、扫描和相机的用户模式驱动程序必须是64位。不允许使用旧版API(特定于WindowsNT®4.0)。http://www.microsoft.com/whdc/driver/kernel

c# - 如何以编程方式区分 XP 64 位和 Server 2003 64 位之间的区别

我有一个程序,我需要根据用户运行的Windows版本显示指向不同下载的不同链接。使用thisanswer我能够检测到操作系统是哪个版本。同时使用thisanswer我可以检测我是在32位还是64位版本的操作系统上运行。这完全符合我的需要,但我遇到了thispage其中声明WindowsXP64位版本和WindowsServer2003使用版本号5.2。我如何检测这两个操作系统之间的差异?作为旁注,如果他们使用200364位或XP64位,我确实需要将他们发送到不同的位置,这里是我需要发送给人们的链接:RemoteDesktopConnection(TerminalServicesClie

windows - 如何使 WinHttpCrackUrl 在 64 位中工作

我有使用WinHttp的VisualBasicforApplications代码,并且可以与在32位WindowsXP上运行的32位Office2010完美配合。相同的代码无法在64位Windows8上的64位Office2013上正常运行,即使它可以正常编译。问题是WinHttpCrackUrl()在Windows8上返回错误87“参数不正确”。我已经仔细检查并三重检查了代码中所有指针是否在适当的地方声明为LongPtr。我做错了什么?以下代码在32位Excel/Windows上运行良好,但在64位Excel/Windows上运行失败:PrivateTypeURL_COMPONENT

python - tasklist 没有列出 64 位系统中的所有模块

我遇到了一些问题。我将尝试获取我机器上所有进程的所有模块(dll文件)。我试图在CMD中执行此命令:tasklist/m但这是64位系统的问题。如果你在64位机器上运行32位程序,它不会列出所有模块,只有ntdll.dll,wow64.dll,wow64win.dll,wow64cpu.dll然后我尝试使用Python脚本,使用pywin32(win32api)来做到这一点。这是代码:importwin32security,win32file,win32api,ntsecuritycon,win32con,win32processprocesses=win32process.EnumP

windows - Visual Studio 2005 是否与 windows 8.1 64 位兼容?

我还没有尝试在Windows8上安装它。我需要修改一个使用CrystalReport2005的程序(w/c我认为包含在vs2005专业安装程序中) 最佳答案 安装所需的服务包和补丁后,它应该可以正常工作:VisualStudio2005VisualStudio2005SP1VisualStudio2005UpdateforVista如果你是connectingtoTFStogetthesources,youmightneedtoinstallmore,seethisblogpostfordetails.