Draftek 发表于 2010-8-24 07:01:41

不使用Visual Studio创建ARX?

我希望有人能够证实或者直接指出不使用Visual Studio创建ARX的可能性。根据我的理解,arx文件只是一个带有不同扩展名和名为“acrxEntryPoint”的入口点的windows dll。会这么简单吗?由于我在Delphi上投资很大,我希望创建dll,然后手动导入我需要的函数。如果我远离gui应用程序,那么我就没有必要继承MFC类(无论如何Delphi都无法访问它们)。
我在谷歌上搜索了所有的研究,我试图把一个方形的钉子敲进一个圆形的洞,但迄今为止毫无结果;任何见解将不胜感激。您好,
丹尼尔
**** Hidden Message *****

JohnK 发表于 2010-8-24 07:56:13


不幸的是,您需要使用与创建应用程序的SDK相同的编译器。

LE3 发表于 2010-8-24 07:57:19

您不必使用 MFC。

Draftek 发表于 2010-8-24 08:14:19

这就是您在这里所需要的一切。
extern "C"int acrxEntryPoint(int msg, void* app)
{
if(msg == AcRx::kInitAppMsg){
    acrxDynamicLinker->unlockApplication(app);
    acrxDynamicLinker->registerAppMDIAware(app);
    acedRegCmds->addCommand(_T("BrxRocks"),_T("doit"),_T("doit"), 0 , do_func);
}
if(msg == AcRx::kUnloadAppMsg){
    acedRegCmds->removeGroup(L"BrxRocks");
}
return AcRx::kRetOK;
}

如果您能够加载模块,您仍然会发现很难执行任何有意义的操作

mmamkin 发表于 2010-8-24 08:18:24

这里有一个有趣的链接http://rvelthuis.de/articles/articles-cppobjs.html

LE3 发表于 2010-8-24 22:31:55


不幸的是,您需要使用与创建应用程序的SDK相同的编译器

老鼠,两只老鼠……这让我想做得更多!
谢谢丹尼尔,我以前用过鲁迪的网站-非常有用
据我所知,使用Delphi自动化Bricscad/Autocad的主要方法只有三种。
1。)纯独立COM-很容易做到,但速度很慢,因为它没有进程,还因为您必须运行独立的exe。
2。)创建activex自动化服务器,并通过lisp将其插入Autocad/Bricscad中-这很好,速度很快,因为它正在进行中,但编程要花更多的时间。
3。)使用Delphi Prism for.NET-它是一种伪装成Delphi的dotnet语言(我不喜欢它:生气:)。VisualStudioIDE看起来既笨重又缓慢。话虽如此,Daniel M的RxNet使在Bricscad中使用它成为可能,我对此表示感谢
我可能会注意到,我所有的开发都只是为了内部目的,所以我采取什么工作方法并不重要;对于您的RxNet应用程序,这一次干净利落地做点什么将是一件好事。
@Daniel;(这里的理论)是否有可能编写一个类似的加载程序,比如在windows dll中运行指定的函数(例如执行、列表命令等)。我还注意到,Delphi现在支持类属性,如.NET,所以这可能是一个入口点?
很抱歉,如果这已经偏离主题。

mmamkin 发表于 2010-8-24 22:52:22

斯皮特巴林:我想我记得CB告诉我你可以使用数字火星编译器。

LE3 发表于 2010-8-24 23:01:07

我记得他提供的一些arx信息,关于如何在没有visual studio的情况下编译它们,可惜我丢失了那些文档。。。

Draftek 发表于 2010-8-27 10:56:20

说到玉米面包——任何人都知道如何与他联系。
我丢失了他的电话#和电子邮件地址。
我想向RR传递一些信息。

Draftek 发表于 2010-9-2 23:13:53

请注意,AutoCAD检查ARX模块PE-header中的“链接器版本”字段(您可以使用PE-Explorer查看该标题),
因此,如果您使用正确的值填充该字段(例如,我记得acad.17为8),并且您的dll导出acrxGetApiVersion和acrxEntryPoint,那么AutoCAD应该会很高兴
我记得大约8-10年前有Delphi组件或单元来编写ARX dll,但该项目似乎已经死亡
我忘了补充,您
页: [1] 2
查看完整版本: 不使用Visual Studio创建ARX?