Udostępnij za pośrednictwem


Korzystanie z MIDL

Wszystkie interfejsy dla programów korzystających z RPC muszą być zdefiniowane w języku Microsoft Interface Definition Language (MIDL) i skompilowane za pomocą kompilatora MIDL. W poniższych tematach przedstawiono krótkie omówienie tworzenia i kompilowania interfejsu MIDL:

Aby zapoznać się ze szczegółowym omówieniem tych tematów, zobacz pliki IDL i ACF, sekcja .

Definiowanie interfejsu za pomocą języka MIDL

Pliki MIDL to pliki tekstowe, które można tworzyć i edytować za pomocą edytora tekstów. Jeśli wygenerujesz identyfikator UUID dla interfejsu, zazwyczaj wynik przechowywany jest w szablonowym pliku MIDL. Aby uzyskać więcej informacji na temat identyfikatorów UUID, zobacz Generowanie UUID-ów interfejsu.

Wszystkie interfejsy w MIDL mają ten sam format. Zaczynają się od nagłówka zawierającego listę atrybutów interfejsu i nazwę interfejsu. Atrybuty są ujęte w nawiasy kwadratowe. Po nagłówku interfejsu następuje jego treść, która jest zawarta w nawiasach klamrowych. W poniższym przykładzie pokazano prosty interfejs:

[
  uuid(ba209999-0c6c-11d2-97cf-00c04f8eea45),
  version(1.0)
]
interface MyInterface
{
  const unsigned short INT_ARRAY_LEN = 100;

  void MyRemoteProc( 
      [in] int param1,
      [out] int outArray[INT_ARRAY_LEN]
  );
}

Niektóre atrybuty, które zwykle pojawiają się w definicji interfejsu MIDL, to identyfikator UUID i numer wersji interfejsu. Treść definicji interfejsu musi zawierać deklaracje procedury wszystkich procedur zdalnych w interfejsie. Może również zawierać deklaracje typów danych i stałych wymaganych przez interfejs.

Wszystkie parametry w deklaracjach procedur zdalnych muszą być zadeklarowane jako [w], [na zewnątrz] lub [w, na zewnątrz]. Te deklaracje określają, że program kliencki przekazuje dane do procedury zdalnej, pobiera dane z procedury zdalnej lub obu tych procedur. Aby uzyskać bardziej szczegółowe informacje na temat deklaracji parametrów interfejsu, zobacz Treść interfejsu IDL.

Kompilowanie pliku MIDL

Kompilator MIDL to narzędzie wiersza polecenia, które jest automatycznie instalowane przy użyciu zestawu Sdk (Platform Software Development Kit). Wywołaj go w oknie polecenia, wpisując polecenie midl, a następnie nazwę pliku MIDL w wierszu polecenia. Upewnij się, że katalog zawierający kompilator MIDL znajduje się na ścieżce systemowej. Poniższy przykład ilustruje jego użycie:

midl MyApp.idl

Pamiętaj, że nie musisz dołączać rozszerzenia, jeśli nazwa pliku ma rozszerzenie idl. Można również użyć kompilatora MIDL przełączników wiersza polecenia, wstawiając je między midl polecenia a nazwą pliku. Przedstawiono to w poniższym przykładzie:

midl /acf MyApp.acf MyApp.idl

W tym przykładzie kompilator MIDL jest wykonywany przy użyciu pliku MyApp.idl jako pliku wejściowego. Przełącznik wiersza polecenia /acf instruuje kompilator, aby używał również pliku konfiguracji aplikacji (ACF). Pliki konfiguracji aplikacji są dokładniej omówione w Pliki IDL i ACF.

Aby uzyskać bardziej szczegółowe informacje na temat korzystania z kompilatora MIDL, zobacz Microsoft Interface Definition Language (MIDL), który zawiera informacje na temat następujących tematów: