C#如何调用VB开发的DLL文件?????????
C#如何调用Delphi开发的DLL文件?????
C#如何调用VC开发的DLL文件?????????

解决方案 »

  1.   

    DLL方法声名,如下
    [DllImport("ShortMessageAPI.dll",
                        CharSet = CharSet.Ansi,
                        CallingConvention = CallingConvention.StdCall)]
            public static extern int OpenMes(string vBusinessID, string vIP,
                            string vUserName, string vPassWord, int vPort,
                            ref string vFlag);
      

  2.   

    调用这样的非托管的DLL和调用系统API有相似的语法,如下:
    private static extern void UninitializeHook(HookTypes hookType);
    [DllImport("SystemDll.dll", EntryPoint = "GetMousePosition", SetLastError = true, CharSet = CharSet.Unicode, ExactSpelling = true, CallingConvention = CallingConvention.StdCall)]上面的代码调用SystemDll.dll中的一个方法GetMousePosition
    SystemDll.dll可以位于System目录下,也可以在当前程序运行目录下,一般不用注册就可以使用.
    或指定SystemDll.dll的路径.
      

  3.   

    没有看明白:
        是否在机器上注册DLL呢?
        如果不注册,如何指定所调用的DLL文件呢?
      

  4.   

    "hbxtlhx(平民百姓) "  你说的不用注册就可以使用,
                          不能吧,总得指定一下DLL文件吧??????????????!!!!!!!!!!!                      你是说:放在程序(.EXE)目录下,就可以吗?
      

  5.   

    把调用的DLL放到和你的EXE同一个目录下就不用指定了.如果是需要注册的DLL注册就行了.
      

  6.   

    "hbxtlhx(平民百姓) "
                        C#调用C++ VB DELPHI  都是这样吗?
      

  7.   

    只要是标准的非托管DLL一般都是这样调用的.除非它不符合调用的标准.
      

  8.   

    "hbxtlhx(平民百姓) "  谢谢您!