1、CallingConvention
2、CharSet
3、EntryPoint
4、ExactSpelling
5、PreserveSig
6、SetLastError
7、ThrowOnUnmappableChar
请高手解答,最好有详细的例子。
比如说我调用一个叫XXX.dll,然后里面有print(),output(),input()

解决方案 »

  1.   

    CallingConvention 参数指示入口点的调用约定。如果未指定 CallingConvention,则使用默认值 CallingConvention.Winapi。    
    CharSet 参数指示用在入口点中的字符集。如果未指定 CharSet,则使用默认值 CharSet.Auto。
    dllimport   
      

  2.   

    http://msdn.microsoft.com/zh-cn/library/system.runtime.interopservices.dllimportattribute_members(v=VS.80).aspx 名称  说明  
     BestFitMapping 将 Unicode 字符转换为 ANSI 字符时,启用或禁用最佳映射行为。 
     CallingConvention 指示入口点的调用约定。 
     CharSet 指示如何向方法封送字符串参数,并控制名称重整。 
     EntryPoint 指示要调用的 DLL 入口点的名称或序号。 
     ExactSpelling 控制 DllImportAttribute.CharSet 字段是否使公共语言运行库在非托管 DLL 中搜索入口点名称,而不使用指定的入口点名称。 
     PreserveSig 指示是否直接转换具有 HRESULT 或 retval 返回值的非托管方法,或是否自动将 HRESULT 或 retval 返回值转换为异常。 
     SetLastError 指示被调用方在从属性化方法返回之前是否调用 SetLastError Win32 API 函数。 
     ThrowOnUnmappableChar 启用或禁用在遇到已被转换为 ANSI“?”字符的无法映射的 Unicode 字符时引发异常。 
      

  3.   

        [DllImport("XXX.dll")]
        public static extern void print();    [DllImport("XXX.dll")]
        public static extern void output()    [DllImport("XXX.dll")]
        public static extern void input()然后就可以直接在代码里用这些函数了,至于那些参数,那要看你的那个dll怎么写的了,全部参数默认先试试看吧