c – 32位应用程序中的64位功能?
发布时间:2020-12-16 03:08:15 所属栏目:百科 来源:网络整理
导读:我有一个32位应用程序,我计划在64位 Windows 7上运行. 在此阶段,由于依赖于第三方功能,我无法将整个应用程序转换为64位. 但是,我想在我的SSE优化中访问xmm9-xmm15寄存器,并且在执行我的应用程序时也使用64位cpus提供的附加寄存器. 这有可能用一些编译器标志
我有一个32位应用程序,我计划在64位
Windows 7上运行.
在此阶段,由于依赖于第三方功能,我无法将整个应用程序转换为64位. 但是,我想在我的SSE优化中访问xmm9-xmm15寄存器,并且在执行我的应用程序时也使用64位cpus提供的附加寄存器. 这有可能用一些编译器标志来实现吗? 解决方法
在我看来,最好的方法是将程序划分为多个可执行文件.编译为64位的EXE可以与另一个32位EXE通信,使用您需要的32位第三方DLL.您将在通信中遇到一些开销,并且必须实现依赖进程的启动/停止,但您将拥有清晰的程序体系结构.
如果您开发本机C应用程序,则可以将第二个EXE实现为COM进程外对象(LocalServer甚至LocalService).您可以考虑在C#中实现COM服务器的方法(参见here).有时这种方式可以简化实现,您可以使用.NET和本机编程的优点. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- [原]as3 flash web 应用 (2)批量上传之php页面接收flash传
- ruby-on-rails – rspec和_return多个值
- SOLID(OOD)
- ruby-on-rails – 从我的Ruby on Rails Gem渲染视图
- objective-c – Objective C – 自定义@synthesize?
- postgresql – 避免在多台机器的SERIAL列中重复增加
- c – 以编程方式检查我的机器是否有互联网访问
- cocos2dx3.x+cocostudio多屏幕分辨率适配解决方案(干货)
- c# – 我的ViewData如何为null,但在调试器中是否可扩展?
- NoSQL之Redis中的hash 操作