我想讓我的第一個C#DLL。 我想能夠通過win32API從ruby中調用它的方法/函數。 我有此DLL:創建一個簡單的C#DLL,並從紅寶石訪問它
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ClassLibrary1
{
public class Class1
{
public int PropA = 10;
public void Multiply(Int32 myFactor)
{
PropA *= myFactor;
}
}
}
我用Visual Studio 2010的編譯,並得到我的ClassLibrary1.dll文件。
現在的紅寶石部分我想這:
f = "c:/path_to_file/ClassLibrary1.dll"
mult = Win32API.new(f,"Multiply",["I"],"I")
但是,我得到以下錯誤:
Error: #<RuntimeError: (eval):0:in `initialize': GetProcAddress: Multiply or MultiplyA
說實話,我從來沒有創建一個dll,也沒有我有經驗與C#。我只是想開始。我通過win32API之前使用Ruby的許多DLL(主要是user32)。
我猜我的DLL不好嗎?
問候,
側邊欄:DLLEXPORT是窗戶的早期C /帕斯卡時期設想一個目錄機制。它是如何使用它的完整說明在這裏:http://msdn.microsoft.com/en-us/library/z4zxe9k8%28v=vs.110%29.aspx – meklarian