开发工具VC6.0 
要求:
1.能被其他开发语言的程序调用。传递参数为char*,通过参数可以让上层传递入参给Dll,Dll可以通过出参和函数返回传值给上层。
2.Dll里要产生界面。如多个对话框。上层调用Dll一个函数后,Dll产生一个全屏的对话框。上层调用另一个函数,可以关闭Dll的界面,释放所有资源。疑问:
1.VC6.0里面建立哪种工程可以达到这种效果,对外方法接口的定义如何定义?
2.如何产生对话框和消亡它?
3.建立的Dll在哪里统一生成资源和释放资源?
4.希望有个框架和例子。或者有些详细说明指点也可以。如有例子可以发邮箱:[email protected]

解决方案 »

  1.   

    http://topic.csdn.net/t/20030825/10/2184706.html
      

  2.   

    我知道MFC Extension Dll是不能给其他开发工具调用的。
    另外DllMain里面四种Case情况下可以做什么?能做些什么,如何处理资源的加载释放。
      

  3.   

    toucheme 谢谢,能不能对我问题逐个回答下呢。
      

  4.   

    http://topic.csdn.net/u/20120221/10/4965a984-34e1-4196-a184-3e80521fb083.html?47485
      

  5.   

    要看什么语言了,如果是DELPHI,那么按照C方式导出函数就行了。
    如果要求VB、C#、JS都能调用,那就采用COM方式吧。
      

  6.   

    没问题,可以实现,其实这就是插件的机制,可以用COM实现,也可以不使用COM实现。
    不使用COM实现的思路如下:在DLL中输出几个C函数,例如插件安装、卸载。传递某种数据结构(就是接口,接口是一切
    二进制复用对象代码的基本原理),界面由DLL自己产生和管理,生成、销毁。可以用MFC、
    WTL、API任何技术实现,可以内置任何界面(MDI,SDI)等。
      

  7.   

    其实ActiveX内嵌在IE中也是这种原理,COM也是这种原理。不用COM和ActiveX就要自己实现类似的
    机制,需要对C++、面对对象、DLL都比较熟,有一定难度,我只能告诉你这肯定是可以实现的,具体
    例子,可以参考具有插件扩展机制的C++开源项目,应该有很多。
      

  8.   

    我想做DLL,有没有做过的人具体的指点呢?
      

  9.   

    以前给vb做过一个导出对话框的dll。导出两个函数,一个用来显示对话框,一个用来返回数据。因为我导出的模态对话框,对话框退出都是用户按退出的。像你,应该是想导出非模态的吧,那么在增加一个导出函数,用来销毁对话框呗。在vc6下,创建的是MFC AppWizard(dll)--->regular dll...
    函数调用方式必须要声明为_stdcall,导出函数必须用def文件
      

  10.   

    非模态的对话框如何销毁??这种模式的里面没有DllMain这个入口呢