初めての c# dll を作成しようとしています。win32APIでRubyからメソッド/関数を呼び出せるようにしたいです。私はこの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は大丈夫ではないと思いますか?
よろしく、