乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 72|回复: 5

最小ARX模块

[复制链接]

57

主题

559

帖子

13

银币

中流砥柱

Rank: 25

铜币
786
发表于 2009-5-10 22:17:11 | 显示全部楼层 |阅读模式
  1. #include
  2. #include
  3. #include
  4. void hello(){
  5.   MessageBox(NULL,L"Hello World\t.",L"Message", MB_ICONINFORMATION);
  6. }
  7. EXTERN_C int acrxEntryPoint(int msg, void* app){
  8.   if(msg == AcRx::kInitAppMsg){
  9.       acrxDynamicLinker->unlockApplication(app);
  10.       acrxDynamicLinker->registerAppMDIAware(app);
  11.       acedRegCmds->addCommand(L"MyGroup",L"Hello",L"Hello", NULL, hello);
  12.   }
  13.   if(msg == AcRx::kUnloadAppMsg){
  14.     acedRegCmds->removeGroup(L"MyGroup");
  15.   }
  16.   return AcRx::kRetOK;
  17. }

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2009-5-10 22:25:54 | 显示全部楼层

你至少可以对它进行优化,丹
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2009-5-10 23:33:37 | 显示全部楼层
很难说Switch和If哪个更快。
  1. ; 10   :   if(msg == AcRx::kInitAppMsg){
  2.         mov        eax, DWORD PTR _msg$[esp-4]
  3.         cmp        eax, 1
  4.         push        esi
  5.         jne        $LN2@acrxEntryP
  6. ; 11   :       acrxDynamicLinker->unlockApplication(app);
  7. ; 12   :       acrxDynamicLinker->registerAppMDIAware(app);
  8. ; 13   :       acedRegCmds->addCommand(L"MyGroup",L"Hello",L"Hello", NULL, hello);
  9. ; 17   :   }
  10. ; 18   :   return AcRx::kRetOK;
  11.         xor        eax, eax
  12.         pop        esi
  13. ; 19   : }
  14.         ret        0
  15. $LN2@acrxEntryP:
  16. ; 14   :   }
  17. ; 15   :   if(msg == AcRx::kUnloadAppMsg){
  18.         cmp        eax, 2
  19.         jne        SHORT $LN21@acrxEntryP
  20. ; 16   :     acedRegCmds->removeGroup(L"MyGroup");
  21. ; 17   :   }
  22. ; 18   :   return AcRx::kRetOK;
  23.         xor        eax, eax
  24.         pop        esi
  25. ; 19   : }
  26.         ret        0
  27. ; 16   :     acedRegCmds->removeGroup(L"MyGroup");
  28. $LN21@acrxEntryP:
  29. ; 17   :   }
  30. ; 18   :   return AcRx::kRetOK;
  31.         xor        eax, eax
  32.         pop        esi
  33. ; 19   : }
  34.         ret        0
  1. ; 10   :   switch (msg) {
  2.         mov        eax, DWORD PTR _msg$[esp-4]
  3.         sub        eax, 1
  4.         push        esi
  5.         je        SHORT $LN2@acrxEntryP
  6.         sub        eax, 1
  7.         jne        $LN23@acrxEntryP
  8. ; 15   :       break;
  9. ; 16   :     case AcRx::kUnloadAppMsg:
  10. ; 17   :       acedRegCmds->removeGroup(L"MyGroup");
  11. ; 18   :   }
  12. ; 19   :   return AcRx::kRetOK;
  13.         xor        eax, eax
  14.         pop        esi
  15. ; 20   : }
  16.         ret        0
  17. ; 15   :       break;
  18. ; 16   :     case AcRx::kUnloadAppMsg:
  19. ; 17   :       acedRegCmds->removeGroup(L"MyGroup");
  20. ; 18   :   }
  21. ; 19   :   return AcRx::kRetOK;
  22.         xor        eax, eax
  23.         pop        esi
  24. ; 20   : }
  25.         ret        0
  26. $LN2@acrxEntryP:
  27. ; 11   :     case AcRx::kInitAppMsg:
  28. ; 12   :       acrxDynamicLinker->unlockApplication(app);
  29. ; 13   :       acrxDynamicLinker->registerAppMDIAware(app);
  30. ; 14   :       acedRegCmds->addCommand(L"MyGroup",L"Hello",L"Hello", NULL, hello);
  31. $LN23@acrxEntryP:
  32. ; 18   :   }
  33. ; 19   :   return AcRx::kRetOK;
  34.         xor        eax, eax
  35.         pop        esi
  36. ; 20   : }
  37.         ret        0

回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2009-5-10 23:54:55 | 显示全部楼层

  1. void hello(){
  2.   acutPrintf(_T("\nHello World!"));
  3. }

保存另一个窗口
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2009-5-13 21:42:22 | 显示全部楼层
(没有任何测试)或者使用On_kLoadDwgMsg,并在那里简单地放置acutPrintf(_T("\nHello World!"));....有可能。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2009-5-13 22:21:32 | 显示全部楼层
True
我试图击败别人最小的DRX套路,它有一个命令
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-6 00:58 , Processed in 0.202749 second(s), 64 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表