草庐IT

32bit-64bit

全部标签

c# - 在 32 位机器上部署 64 位 C# winform 应用程序

我已经在64位机器上使用VS2012开发了一个C#winform应用程序,现在我想将它部署到32位机器上,但是我得到了“...不是有效的win32应用程序”形式的错误"每当我尝试在32位机器上安装和运行exe文件时。请建议我解决这种情况的最佳方法。谢谢! 最佳答案 听起来该项目是专门为x64编译的。纯.NET项目可以而且应该编译为“任何CPU”,这意味着它们将在x86和x64上运行。这通常是默认值。http://blogs.microsoft.co.il/sasha/2012/04/04/what-anycpu-really-mea

Python 3.3 pygame 1.9.2a0(64 位)图形窗口显示第一个图像但随后卡住

在教室PC上使用Python2.7.3和Pygame,我使用命令提示符窗口(与用户交互)和图形窗口(显示静止的.png文件,例如电影中的照片)。游戏运行成功。现在我想在我自己的Windows764位PC上运行和增强游戏。我下载了Python版本3.3.5和pygame-1.9.2a0.win-amd64-py3.3.exe。然后我对我的游戏代码做了两处更改,以从Python2.7.3调整到Python3.3.5环境:(1)从“raw_input()”命令中删除“raw_”;(2)删除了第一行,讲师告诉我们要使用该行,以便Python2.6像以后的版本一样运行:“fromfutureim

windows - 如何在 64 位 Windows 7 中卸载之前安装的 OpenCV

我想卸载之前安装的OpenCV2.4.3版本并安装2.4.7或2.4.8版本。我的问题是如何完全删除以前的安装?我正在使用64位Windows7。如果有帮助的话,我的系统上还有VisualStudio2010Ultimate。提前致谢! 最佳答案 2.4.3安装的文件夹删除即可。您还可能在PATH环境变量中有2.4.3库,您必须将它们更改为新的2.4.9安装位置。(但不用担心,dll是有版本控制的,所以你甚至可以同时拥有它们) 关于windows-如何在64位Windows7中卸载之前安

c++ - SetThreadContext x64 volatile 寄存器

我对SetThreadContext有疑问。我无法更改任何volatile寄存器(表here)。data.context.ContextFlags=CONTEXT_FULL;SuspendThread(hThread);GetThreadContext(hThread,&data.context);...CONTEXT*ctx=&data.context;ctx->ContextFlags=CONTEXT_CONTROL|CONTEXT_INTEGER;ctx->Rax=(DWORD64)0x1000;ctx->Rcx=(DWORD64)-1;ctx->Rip=(DWORD64)all

windows - 无法使用 powershell 从 32 位版本的 win2008 读取 64 位注册表项

我尝试使用powershell从32位Windows2008读取64位版本的WindowsServer2008r2上的以下注册表项,但该值显示为空白并且不返回任何值。可以帮助我了解如何从32位服务器读取64位注册key吗?$line="WIN-QENOBBC64B8"$regkey=[Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine,$line)$ref=$regKey.OpenSubKey("SOFTWARE\Microsoft\MicrosoftS

Windows 7 (64) 上的 C++ CreateProcess 错误代码 2 ("ERROR_FILE_NOT_FOUND")

我正在尝试创建一个简单的程序来测试Windows7(64)上C/C++中的CreateProcess()函数。当我直接传递CommandLine(“szCmdline”)参数时,它工作正常,但如果我尝试通过从argv获取参数并传递给函数来发送参数,我会在运行时收到“错误代码2(”ERROR_FILE_NOT_FOUND“)”.我正在寻找解决方案并在这个论坛上找到了“CreateProcess-fails-under-windows-7”,但它似乎对我不起作用或者我做错了什么。这是NewProcess()代码:voidNewProcess(TCHAR**cmd){printf("Argv

c - Win32 - 在创建窗口之前拦截窗口的更好方法

我正在尝试自动化外部Windows应用程序。目标是在不显示任何事件窗口/启动画面且不从其他应用程序窃取焦点的情况下使此应用程序最小化启动。我用C编写了一个小程序,它在循环中调用EnumWindows()并使用ShowWindow()来最小化所需的窗口。它非常快,在80%的情况下都有效。不幸的是,有时应用程序窗口仍在显示并在短时间内窃取焦点。拦截窗口的更好(确定)方法是什么?使用SetWindowsHookExHook是唯一的选择吗? 最佳答案 您是否尝试过使用STARTUPINFOstructure的wShowWindow成员?你传

windows - 如何在 Windows 上的 x86-64 架构上的程序集中注册结构化异常处理程序?

在x86中,您可以使用以下3条指令简单地注册您的处理程序。pushaddrOfExceptionHandlerpushdword[fs:0]mov[fs:0],esp但这不适用于64位Windows。我读过x64异常处理程序是基于表的,VisualC++的__try和__exceptblock硬连接到异常目录中。这是否意味着微软完全放弃了这种旧方法?那么有没有办法从代码中以编程方式注册处理程序? 最佳答案 Windowsx64使用基于表的异常处理(与使用基于帧的处理的x86不同)。每个图像都有一个与其关联的RUNTIME_FUNCT

c++ - 在 win32 应用程序中动态设置 DPI 感知级别

我正在寻找任何方法来动态设置DPI感知级别(基于用户输入)。我遇到了this.它建议我应该使用setProcessDpiAwareness功能来设置意识水平。但此api调用仅受Windows8.1预览版支持。我可以使用任何其他方法动态设置Windows7及更高版本支持的Dpi感知级别吗?提前致谢。 最佳答案 在Windows8.1中每个显示器的DPI感知出现之前,有SetProcessDPIAware,从Vista开始支持。但是,令我印象深刻的是,您可能希望在运行时做出此决定。最佳做法是将应用程序设计为具有高DPI感知能力,并将这种

c++ - _WIN32_WINNT 定义在 header 中更改,这是否会导致二进制不兼容?

在VS2010中,我正在努力将应用程序更新到第三方库的新版本,该库要求_WIN32_WINNT至少为0x501,但另一个提供二进制共享库的第三方共享库在header中将其定义为0x500包含在应用程序中。如果修改了,是否会出现二进制不兼容或者这是一个无关紧要的更改?我是否必须从将其定义为0x500的库中请求新的二进制文件?我不确定如何判断这是否需要新的bin——我认为如果任何类/结构的大小或命名发生变化,或者任何方法/函数签名发生变化,则需要进行新的编译。 最佳答案 简短的回答:可能不会,但如果是的话,那你就进退两难了。长答案:_W