0

USBプラグインスマートカードデバイスと通信してカードからデータを読み取るOMGICardDll.dllというdllがあります

私が使用したコードは次のとおりです。

public partial class Form1 : Form
{
    [DllImport("OMGICardDll",EntryPoint="ReadName",ExactSpelling=true, CallingConvention = CallingConvention.StdCall,SetLastError=false)]
   public  static extern string ReadName();
  //Form1 fm = new Form1();
    public Form1()
    {
        InitializeComponent();
    }

  private void Form1_Load(object sender, EventArgs e)
  {

  }

  private void btnSave_Click(object sender, EventArgs e)
  {

      txtName.Text = ReadName();
  }


}

保存ボタンをクリックすると、 System.EntryPointNotFoundException が見つかりました

4

1 に答える 1

1

このエラーは、 をOMGICardDll.dll見つけてロードできたが、関数ReadNameがそこに存在しないか、そこからエクスポートされていないことを示している場合があります。

ルーチンがそのように正確に綴られていることを確認できますか? そして、輸出されますか?(そして、実際には呼び出されていませんReadNameAReadNameW?)

于 2012-07-15T20:15:25.157 に答える