最近自己在编写ActiveX控件.遇到的麻烦事不少. 今天遇到了这个问题“模块XXXX可能与您正在运行的Windows版本不兼容.检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容.”.在网上找了很多,都是说放置在syswow文件里用这个文件夹里的regsvr32.exe进行注册.但是这个方法没用.后来考虑是否是编写的控件有问题,于是按照默认生成一个.运行注册,没问题.后来一步一步改,在VS的属性页设置配置类型为动态库(.dll)就不会出现问题.而设置为静态库时就…
这是一个老话题,远线程函数给我们提供了机会在其他进程中启动一个新线程,所以我们可以做很多事情.但事情远远没有结束,如果我们要做的事情非常复杂,那么将面临编写大量的ASM代码,虽然我们可以用VC之类的工具编译一个简短的函数然后抄袭它.所以,我们经常做的是把我们的要做的放入一个DLL,而远线程所做的只是调用LoadLibrary函数来加载我们的DLL,这只需要少量的ASM甚至可以不用ASM. 如果我们要注入一个标准的WINDOWS DLL文件,无论目标进程是不是托管的事情往往很简单,但是如果注入托管…
下载地址: http://www.internals.com/utilities/WinIo.zip 一个按键的消息产生流程如下: 1)硬件中断/硬件端口数据 WinIO能模拟,或者修改IDT是在这一层 2)键盘Port驱动(USB or PS/2) Filter驱动在此 KeyboardClassServiceCallback也在这一层被调用 3)kbdclass驱动 处理键盘布局和键盘语言 4)Windows内核边界(zwCreate/zwReadFile) ———————-(系统调用)——…
WIN10,VS2015,编译平台"anycpu".WIN7系统为ghost版 1. 在.NET4.5下编译,程序打包以后,在WIN7上运行界面启动有3.4秒的延迟:将.NET版本改为3.5编译打包,WIN7运行正常. 2. 在.NET4.5下编译,勾选"prefer 32-bit"项,打包运行在WIN7正常,不勾选的话界面启动有延迟. 解决: 运行regedit打开注册表,[HKEY_CURRENT_USER]-- [Control Panel]-- [Deskt…
当安装ubuntu在pc上,不推荐在32位pc安装64位操作系统,64位pc安装32位操作系统 方法/步骤 按ctrl+shift+t 快捷键,打开终端,输入sudo uname --m ,按下enter 如果显示i686,你安装了32位操作系统如果显示 x86_64,你安装了64位操作系统 如果想知道更多信息可以试试如下命令sudo uname --s 显示内核名字ssudo uname --r 显示内核版本sudo uname --n 显示网络主机名sudo uname --p 显示cpu…
vs中项目配置管理器活动解决方案平台选择X86平台.…
今天将编译的C#的exe拷贝到测试机上(Win7_64bit),一运行就挂了,提示“stop working”,一开始怀疑测试机上没有安装.net framework框架,追究半天原来是编译的目标平台选择错误. 解决方法: Project Property->Build->Platform. target,将默认的any cpu选择为x86,重新编译程序后再拷贝到测试机上运行就没有问题了. 追究原因: 首先看看这个目标平台有哪些选项,有什么区别吧. 在VisualStudio中,在编译设置中有…
转自让32位Eclipse和64位Eclipse同时在64的Windows7上运行 参考这篇文章:http://wenku.baidu.com/view/57994c270066f5335a81214c.html 个人在这里做些补充和个人的一些看法. 首先关于32位/64位系统,jdk32位,64位和eclipse 32位和64位的一些对应关系做些说明. 1.32位操作系统不可以装64位jdk,64位操作系统一般都可以安装32位jdk,64位jdk是完美发挥性能的. 2.64位eclipse只能…
做web服务迁移,从32位win2003迁移到64位win2003,数据库是32位Oracle在另外一台服务器上. 迁移之后数据库各种连不上,oracle的客户端32位的装完装64位的,odp.net也是各种装,已过一段实验数据库连接工具终于连接上数据库 了,可是64位的iis还是连接不了数据库.一会儿32位一会儿64位,本来oracle就不熟客户端还特别的大,没有闲功夫研究它了.让我们用一个最简 单最不负责任的办法解决它吧,哼哼. 让64位系统下的iis 改成32位运行. IIS7 很简单,在…
Gradle ‘MYasprj’ project refresh failed Error:CreateProcess error=216, 该版本的 %1 与您运行的 Windows 版本不兼容.请查看计算机的系统信息,了解是否需要 x86 (32 位)或 x64 (64 位)版本的程序,然后联系软件发布者. 解决方案: 你开发项目的引用Javajdk,与本机安装的Java jdk版本不一致,打开项目后,在project structure里面更改一下本机的真实的java jdk路径.   …