1 Câu hỏi: Nhập một lớp từ c # dll vào ứng dụng c ++

câu hỏi được tạo ra tại Wed, May 8, 2019 12:00 AM

Tôi cần nhập một dll được tạo trong c # từ c ++ Tất cả các ví dụ tôi tìm thấy nhập một hàm duy nhất từ ​​một dll, nhưng theo tôi biết, bạn không thể xuất một hàm duy nhất từ ​​c # mà không xuất toàn bộ lớp (mặc dù tôi là một chút của c # newbie)

Tôi đang sử dụng nút gyp để biên dịch nó (Tôi đang xây dựng mô-đun nút cho ứng dụng web của mình bằng v8)

Đây là mã c # của tôi:

using System;
using System.IO;
using System.Runtime.InteropServices;

[ComVisible(true)]
public class Hello 
{
    public static void Main() 
    {
        Console.WriteLine("Hello World!");
        string createText = "Hello Fucker" + Environment.NewLine;
        File.WriteAllText(".\\asd.txt", createText);
    }
}

Và đây là tệp tiêu đề c ++ của tôi:

#ifndef ASDLIB_H
#define ASDLIB_H
#define ASD_IMPORT __declspec(dllimport)
#define STDCALL __stdcall

class ASD_IMPORT Hello{
    public:
         STDCALL static void ASD_IMPORT Main();
};

#endif // ASDLIB_H
    
0
  1. . import-directive-cpp "rel =" nofollow noreferrer "> viết mã COM . Hãy xem gói nuget UnmanagedExports, không sao cho các chức năng đơn giản như thế này.
nguồn đặt đây