各位, 我想在c#中写个dll然后供其他程序(mapbasic)调用,请问可以实现吗? mapbasic里调用dll文件是直接在程序里 declare function 就直接调用的 

解决方案 »

  1.   

    那你必须写windows的标准dll,.net的dll局限性很大
      

  2.   

    是不是 只有C或C++写的dll文件才可以?
      

  3.   

    1.如果用.NET来开发需要在你的mapbasic中应用.net framework框架。他是托管的,当然你也可以发布成非托管的。
    2.例如vb6.0或者vc6.0都可以做成dll(非托管)
      

  4.   

    C#写的dll做成COM的就行了,这里有介绍http://blog.csdn.net/panyaxiong/archive/2007/04/25/1585052.aspx
    http://www.cppblog.com/mzty/archive/2007/05/30/25157.html
      

  5.   

    To :Fibona就算做好dll之后 还需要注册才能被调用 对吧?有没有其他语言写的 可以直接调用的?
      

  6.   


    珍惜生命,远离vc6 用 visual studio 2005 挺好啊,真不明白为什么有人老是以为只有 vc6 才能写非托管程序
      

  7.   

    C#编写,添加引用
    各种语言编写的DLL基本类型是不一样的如
    C++ C#
    传入的char* string
    传出的char* StringBuilder(预分配空间)
    short short
    char byte
    char[n] fixed byte[n]
    结构指针 结构指针
    函数指针 委托 
    http://wankunde.javaeye.com/blog/632701
      

  8.   

    Visual studio中的类库扩展名虽然也是DLL,但和原来的标准DLL相比,其实是两回事,就像当初VC开发DLL还分标准DLL和扩展MFC DLL一样。问题所说的应当是指标准DLL,在创建工程是仔细找一下相应的模板。