【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题-创新互联

最近按公司要求封装一个OCX,本来很简单的一件事却遇到一个很奇怪的问题。

创新互联建站长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为柯桥企业提供专业的做网站、成都做网站,柯桥网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

在编译器vs2010编译后注册报“逐用户重定向”

当时在莫度的带领下差点全军覆灭,提到2点解决方案(狗比膏药--坑的一逼)

1.改工程属性从DLL为lib

【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题

变成
【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题
这种方案虽然编译器是过去了但是regsvr32注册没一点反应。

2.改链接器配置

【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题

这个更狠,编译器都过不了。


以上为爬坑分割线,下面来点干货


当时调用其它的DLL动态库,还有OCX事件又是合作开发,没办法先缩小问题范围

把事件删了-----外甥打灯笼--照旧

把工程分割开 ---- 本人的没问题(当时高兴的有一种要甩键盘的冲动)

合作开发一个team不能拉下弟兄不管,就帮弟兄逐步缩减范围。。。。

直到我们注释了一个调DLL的函数(静态方式调用,及.h+lib)发现

成了。。。。真成了

解决方案1:

OCX工程中静态调用DLL的接口,且参数是函数指针 既有可能是这个原因

【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题

解决方案2:

后面需要在OCX用到多线程,但多线程__stdcall方式来进行资源管理的,而在多线程方法里需要用到OCX事件,

当时脑袋一热不就是new个OCX的XXCtrl对象,然后对象.事件解决。(too young too simple)

JS崩溃了,JS崩溃了,JS真的无情的崩溃了(此处有n!+1个F**K)

开动小脑筋,多线程方法里不能NEW,设一个全局变量不就OK了

然后遇到了多年未见的老朋友(“注册失败 逐用户重定向”),虽然才1天没见,但见到不希望见到的总感觉

快过了一辈子。

OCX工程代码重新new控制类对象 既有可能是这个原因

解决办法是:老子删了多线程代码,投入while大法的怀抱(此处有坏笑大笑)

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


新闻名称:【ocx疑难杂症0】浅谈OCX开发注册“逐用户重定向”问题-创新互联
转载来于:http://scyanting.com/article/cediog.html