How to use C-Library in C#

后端 未结 1 559
天涯浪人
天涯浪人 2021-01-26 05:44

i´ve downloaded a BACnet-Stack from http://sourceforge.net/projects/bacnet/ but it is written in c and i want to use it in c#.

I´ve been reading for 4 hours now about ho

相关标签:
1条回答
  • 2021-01-26 06:11

    To address alike situation, Microsoft provides attributes, assembly, and marshaling to offer interoperability between managed-unmanaged code(not .net aware/running outside the clr boundaries) and managed-legacy COM.
    Investigate the use of dynamics and the (Dynamic language runtime- DLR) which should be more than fine.
    code example (using kernel32.dll) as an example of calling unmanaged code from a managed context

    [DllImport("kernel32.dll", EntryPoint="MoveFile",
    ExactSpelling=false, CharSet=CharSet.Unicode,
    SetLastError=true)]
    static extern bool MoveFile(string sourceFile, string destinationFile);
    
    //calling the function
    static void Main()
    {
        MoveFile("sheet.xls", @"c:\sheet.xls");
    }
    

    check this pdf also: http://www.nag.com/IndustryArticles/Calling_C_Library_DLLs_from_C_Sharp.pdf

    0 讨论(0)
提交回复
热议问题