草庐IT

MinGW-w64

全部标签

windows - 64位Windows平台不成熟? (即使将 32 位二进制文​​件与运行在其上的 64 位二进制文​​件进行比较)

我编译了一个ioquake3的64位二进制文​​件和一个SDL二进制文件,我注意到在Windows764位上运行,虽然相对稳定,但它没有一流的性能。64位Debian上的等效二进制文件,运行速度绝对更快,而且非常稳定。我在想:所有主要制造商仍然主要分发32位二进制文​​件-我能想到的主要异常(exception)是Autodesk的Autocad-Windows在其64位库上是否仍然不成熟? 最佳答案 我会回答不。自WindowsXP以64位版本发布以来,操作系统就一直支持64位,尽管pre-vista驱动程序和第3方软件还处于试验

windows - 为什么在 Windows Vista x64 上调用 GlobalMemoryStatus 时可用物理内存 (dwAvailPhys) > 可用虚拟内存 (dwAvailVirtual)

我正在使用MSDN样本进行内存压力测试(请参阅:http://msdn.microsoft.com/en-us/magazine/cc163613.aspx)和专门占用物理内存的该工具的扩展(请参阅http://www.donationcoder.com/Forums/bb/index.php?topic=14895.0;prev_next=next)。我显然对虚拟内存和物理内存之间的区别感到困惑。我以为每个进程都有2GB的虚拟内存(虽然我也读了1.5GB因为“开销”)。我的理解是这个虚拟内存的一些/全部/没有可能是物理内存,而一个进程使用的物理内存量进程可能会随着时间的推移而改变(内

windows - 如何确定注册表项是否被 WOW64 重定向?

是否可以确定给定的注册表项是否被重定向?我的问题是我想从32位应用程序以通用方式在32位和64位注册TableView中枚举注册表项。我可以简单地打开每个键两次,首先使用KEY_WOW64_64KEY,然后使用KEY_WOW64_32KEY。但是,如果key没有被重定向,这会为您提供完全相同的key,并且您最终会枚举完全相同的内容两次;这是我要避免的。我确实找到了一些documentation在上面,但看起来唯一的方法是检查配置单元并对键进行一系列字符串比较。我想到的另一种可能性是尝试在每个子项上打开Wow6432Node;如果存在,则必须重定向key。IE。如果我尝试打开HKCU\S

windows - 使用来自 32 位进程的 64 位 COM 对象

我正在使用在Windows上使用COM的virtualboxapi。如果您有64位操作系统,它将安装64位版本,并且64位客户端可以访问COM接口(interface),但32位客户端无法访问。有人告诉我这是COM限制,但我看到了ways使用dll32在注册表上“发布”32位接口(interface),因此64位进程可以调用这些COM服务器,但我找不到相反的方法,从32位进程访问64位接口(interface)。如果我不是很清楚,我相信这个人想要实现类似的目标:http://www.codeproject.com/Forums/1648/COM.aspx?fid=1648&df=90&

c++ - 查明 DirectInput 设备是否支持 XInput(使用 mingw/gcc)

我正在开发一个输入系统,包装DirectInput和XInput。目前XInput设备被枚举两次,一次作为XInput,一次作为DirectInput(因为它们都支持)。如何确定给定的DirectInput设备是否也支持XInput?有thisMSDNpage关于这个主题,但它需要wbemidl.h和wmsstd.h,它们在mingw/gcc中不可用(并且出于某种原因我想避免使用msvc-可能是出于习惯)。我不认为将设备名称/guid列入黑名单是一个好的解决方案,但有更好的解决方案吗?谢谢。 最佳答案 wbemidl.h和所有相关的

c - C 中的 Windows 用户主文件夹 (MinGW)

我正在尝试将用C编写的应用程序从Linux移植到Windows。目前,我已经完成了“硬”部分的修复工作,例如missingposixfeatures之类的。应用程序现在可以在Windows上编译、链接和运行(fork()除外,稍后将替换为Windows服务代码)。我现在遇到的唯一问题是在MSYSshell中一切正常(这为我映射了unix路径)。在MSYSshell之外它不会工作,因为~不可用。我正在寻找在我的#ifdef内容中设置Windows用户主页的最佳方法。我在某处读到过关于%USERPROFILE%的内容,但这似乎不是work. 最佳答案

Python 速度 32 v 64 位 Windows 问题

在32位Windows7和64位WindowsServer2008之间移动应用程序时,我一直遇到性能问题,两者都具有类似的处理器。我写了一个简单的程序来测试内存分配性能以查看差异。它表明在64位上制作列表花费的时间几乎是32位窗口的10倍。在32上使用python2.6.5,在64上使用2.6.6。可能导致问题的原因是什么?我写了一个小的“c”程序来做同样的事情,它显示64位服务器运行得更快。到底出了什么问题?#sillypythonmemoryallocationtestfromdatetimeimportdatetimeimportrandomd=datetime.now()lis

windows - Windows 7(64 位版本)上的 AppInit_DLL

我已经编写了一个DLL来帮助我调试我的应用程序。我正在运行64位版本的windows7。这是我观察到的:(1)如果我设置HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\WindowsNT\CurrentVersion\Windows\AppInit_DLLs并运行我的应用程序的32位版本,DLL被加载并且一切正常。(2)如果我设置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Windows\AppInit_DLLs并运行我的应用程序的64位版本,应用程序启

c++ - 在 Windows 7 中交叉编译 C 和 C++ 应用程序,在 linux 下使用 MinGW

我在Windows7上安装了MinGW编译器,GCC版本是4.6.1。我有HelloWorld应用程序:#includeintmain(intargc,char*argv[]){printf("HelloWorld!");return0;}我如何使用MinGW编译器在Windows7下编译这个应用程序,以便我可以在linux中运行这个应用程序,而无需重新编译。 最佳答案 您需要在这里区分两个系统:build系统,即您的编译器运行所在的系统,以及host系统,即您的可执行文件将运行的系统运行。MinGW是主机系统Windows的GCC

c++ - 是否可以使用 Cygwin 或 MinGW 将 Linux 守护程序移植到 Windows?

我有一个作为守护进程运行的LinuxC++应用程序。当用户执行这个应用程序时,它会在后台运行,监听一个端口,等待来自客户端的连接。是否可以使用Cygwin或MinGW将此类应用程序移植到Windows平台?谢谢。 最佳答案 Cygwin的目标是实现POSIX/Linux源代码级别的兼容性,因此您的应用程序应该可以在不进行修改或仅进行少量修改的情况下构建和工作。MinGW不会尝试提供这样的兼容层。它只是适用于Windows的GNU工具链,因此您需要用Windows等效项替换对POSIX/Linux特定API的任何使用。