读书人

CSocketMaster类子类化导致崩溃,该如何

发布时间: 2012-04-12 15:46:35 作者: rapoo

CSocketMaster类子类化导致崩溃
CSocketMaster1.3下载网址
http://www.rayfile.com/zh-cn/files/def25b5c-9100-11e0-ad7d-0015c55db73d/

此类在VB中以代码方式运行完全正常

但是VB代码如果编译为程序后.它的子类化似乎会引起程序崩溃
已经调试发现是它的子类化代码与系统的DEP设置有冲突导致.
DEP即
我的电脑->右键属性->高级->"性能" 设置->数据执行保护

如果设置为"为除下列选定程序之外的所有程序和服务启用DEP"
则使用了CSocketMaster类而编译出来的exe会崩溃或卡死无响应

如果设置为"仅为基本 Windows程序和服务启用DEP"
则程序可正常运行

为了使程序有更好的兼容性,希望有高手能帮助修改代码,使CSocketMaster类能在开启DEP的情况下也正常运行

[解决办法]
等你做了大点的项目时就会发现......绿色软件思想会害得你很惨的,HOHO.

建议,能使用成熟方案的尽量使用成熟方案.哪怕有代码,方案不确定成熟的话尽量不用.

DEP的原理是将内存中非执行代码的内存标记为不可执行,比如变量区.

因此使用内嵌汇编技术的代码应该都会出问题.

用控件吧.
[解决办法]

探讨
等你做了大点的项目时就会发现......绿色软件思想会害得你很惨的,HOHO.

建议,能使用成熟方案的尽量使用成熟方案.哪怕有代码,方案不确定成熟的话尽量不用.

DEP的原理是将内存中非执行代码的内存标记为不可执行,比如变量区.

因此使用内嵌汇编技术的代码应该都会出问题.

用控件吧.

读书人网 >VB

热点推荐