草庐IT

win32exception

全部标签

windows - 从 32 位进程设置 64 位窗口长?

我有一个32位应用程序需要将64位窗口长值设置为属于64位进程的窗口。当我尝试从32位进程调用SetWindowLong时,只设置了64位值的低位双字(我在调试64位进程时看到它),显然只有64位值的低位双字返回到调用者(因为函数返回LONG,它是32位值)。32位版本的user32.dll中未导出函数SetWindowLongPtr。我试图反汇编SetWindowLongPtr源代码以查看它是否只是系统调用之上的某个层,但该函数实际上很大并且调用了其他几个未记录的函数。如何从32位进程设置64位窗口长值?将32位应用重建为x64目标不是一种选择。 最佳答案

c++ - 在 win7 下,为 opengl 窗口捕获的图像是黑色的

我在主窗口上有几个子窗口,有的是GDI窗口,有的是opengl渲染的窗口,一个功能是用rect截取图像(可能覆盖不同的窗口组合)。此功能在windowsxp下工作正常。但是在windows7下,所有opengl渲染的窗口都是黑色的。我做了一些研究,有人说gdi不能通过窗口DC直接访问帧缓冲区,必须使用glReadPixels来组合位图。然而,这种方法很尴尬,因为我必须分别组合该矩形中的每个窗口。谁有更好的选择?这是我捕获bmp的代码:voidMainWndClass::catchBmp(constchar*path_fn,booldrawAreaOnly/*=0*/){CDC*pDC=

c++ - MFC 64 位代码在 Windows Server 2008 R2 上比 32 位代码慢

我运行以下MFC代码:CArrayl_Arr;for(inti=0;i如果我构建64位版本,代码运行速度比32位版本慢2倍。我尝试了Debug和Release版本。时间如下:Debug64bit:15085msDebug32bit:8128msRelease64bit:8237msRelease32bit:4695ms我的配置:MicrosoftVisualStudio2005Version8.0.50727.4039(QFE.050727-4000)WindowsServer2008R2Standard64bitProcessor:Intel(R)Xeon(R)E5645@2.40G

windows - 如何仅从 win cmd "dir"获取文件大小?

假设有一个名为app.exe的文件。dirapp.exe给出:VolumeindriveChasnolabel.VolumeSerialNumberisCAA5-A19CDirectoryofC:\Users\Lazy\Downloads\batch02/06/201523:5020.280.135app.exe1File(s)20.280.135bytes0Dir(s)100.233.252.864bytesfree从所有这些我需要文件大小(20.280.135)。理想情况下,应删除仅包含“20.280.135”、空格和/或新行的名为size.txt的文件。背后的想法是使用该文件(s

STM32 姿态传感器mpu6050的使用

文章目录特性引脚说明使用I2C软件,驱动mpu6050手册中寄存器描述MPU6050初始化的步骤:数据读取mpu6050输出的值特性MPU6050,能同时检测三轴加速度、三轴陀螺仪(三轴角速度)的运动数据以及温度数据。利用其内部的DMP模块(DigitalMotionProcessor数字运动处理器),可对传感器数据进行滤波、融合处理,直接通过IIC接口向主控器输出姿态解算后的数据,降低主控器的运算量。其姿态解算频率最高可达200Hz参数说明供电3.3V-5V通讯接口IIC协议,支持的IIC时钟最高频率为400KHz测量维度加速度:3维陀螺仪:3维ADC分辨率加速度:16位陀螺仪:16位加速度

ARM开发初级-Windows环境下的STM32开发环境搭建(包含missing compiler version 5的解决方法)-学习笔记02

文章目录1.KeilMDK-ARM简介及安装1.1KeilMDK-ARM简介1.2KeilMDK-ARM获取与安装2.安装ST_LINK烧写工具3.STM32CubeMX3.1简介3.2下载3.3基本使用4.MissingCompilerVersion5路径中不要有中文,不管哪个软件1.KeilMDK-ARM简介及安装1.1KeilMDK-ARM简介KeilMDK,也称MDK-ARM,RealviewMDK(MicrocontrollerDevelopmentKit)等。目前KeilMDK由三家国内代理商提供技术支持和相关服务。MDK-ARM软件为基于Cortex-M、Cortex-R4、AR

java - 如何处理java.lang.Exception : Socket bind failed: [730013] exception

我需要将Tomcat的端口从8080更改为80,以便我可以作为http://localhost执行我的Web应用程序。我跟着已经回答了这个question计算器。当我启动tomcat7时,它会生成以下异常:SEVERE:FailedtoinitializeendpointassociatedwithProtocolHandler["http-apr-80"]java.lang.Exception:Socketbindfailed:[730013]Anattemptwasmadetoaccessasocketinawayforbiddenbyitsaccesspermissions.这就

c - 如何同步ListView的checkbox和selection?(WIN32)

我正在编写一个简单的Win32程序,它有一个带复选框和启用多行选择的ListView。:复选框检查和行选择似乎是两种截然不同的行为。有没有一种方法可以同步这两种行为,只要选中一个复选框,就会选中该行,而只要选中一行,就会选中相应的复选框? 最佳答案 "wheneverarowisselected,thecorrespondingcheckboxwillbechecked"检查WM_NOTIFY和LVIS_SELECTED标志来检测用户何时选择了一行。并使用ListView_SetCheckState选中复选框:BOOLCALLBAC

python - 在 Windows XP 32 位上运行的最新版本的 Python 3 和 PyQt5

我在Debian64位上使用Python364位和PyQt5开发了一个程序(当然它可以在Linux和Windows1064位上运行)。问题是我找不到在WindowsXP32位上运行的PyQt5的最新版本(如果它存在的话)。正如我所读,似乎Python版本3.4.4是与WindowsXP一起使用的最新/最新版本,并且它目前正在运行。我试过pip3installPyQt5,但没有成功。我得到:$pip3installPyQt5CollectingPyQt5CouldnotfindaversionthatsatisfiestherequierementPyQt5(fromversions:)

c++ - 区分 cl.exe (Visual Studio C++) 生成的 32 位和 64 位 PE 目标文件

给定来自cl.exe的两个PE目标文件,一个32位和一个64位,我如何不借助unix实用程序区分一个和另一个,最好是在命令行(cmd.exe或powershell)?C:\>"...\VC\bin\cl.exe"-ctest.c-Fotest32.objC:\>"...\VC\bin\x86_amd64\cl.exe"-ctest.c-Fotest64.obj如果我安装msys2file实用程序可以理解它:$filetest*.objtest32.obj:Intel80386COFFobjectfile,notstripped,3sections,[...]test64.obj:dat