-7
using System;
System.Runtime.InteropServices;
class Beeper
{
      DllImport("kernel32.dll")]//low level beep
      public static extern bool Beep(int frequency,int duration);
      static void Main()
      {
         Beep(1000,111);
      }
}

DLL インポート属性とは何ですか?正確には何をしますか?

4

1 に答える 1

3

これは、DLL の名前を指定する他の文字列と同様です。引用する必要があります。

[DllImport("kernel32.dll")]

また、これ:

System.Runtime.InteropServices.DllImportAttribute;

次のようにする必要があります。

using System.Runtime.InteropServices;

そして、なぜ使用しないのConsole.Beepですか?


とにかく、System.Runtime.InteropServices.DllImport属性は、空の ( extern) メソッドに付けて、参照先の DLL でそのシグネチャを持つメソッドを参照させることができる属性です。

于 2013-09-23T21:10:56.100 に答える