Freigeben über


lcid-Attribut

Das Attribut [lcid] gibt einen Gebietsschemabezeichner an und aktiviert die gebietsschemaspezifische MIDL-Compilerunterstützung.

[
    uuid(uuid-number), 
    lcid(localeID)
    [, optional-attribute-list]
] 
library library-name
{ 
    library-definition-statements
}

function-name([parameter-attribute-list, lcid] long  parameter-name,. . .);

Parameter

uuid-zahl

Gibt eine universelle eindeutige Identifikationsnummer für die Bibliothek an.

Localeid

Gibt den 32-Bit-Gebietsschemabezeichner an, der in Windows National Language Support verwendet wird. In der Regel wird der Gebietsschemabezeichner in hexadezimal angegeben.

optional-attribut-list

Null oder mehr Attribute, die auf die Bibliothek angewendet werden sollen.

Bibliotheksname

Der Name, nach dem Softwarekomponenten auf die Bibliothek verweisen.

library-definition-statements

Mindestens eine MIDL-Anweisung, die den Inhalt der Bibliothek definiert.

Funktionsname

Gibt den Namen der Funktion in der IDL-Datei an.

parameter-attribut-list

Null oder mehr MIDL-Attribute, die auf den Funktionsparameter angewendet werden.

Parametername

Gibt den Namen des Parameters in der IDL-Datei an.

Hinweise

Die Syntax [lcid] weist zwei verschiedene Formen auf; der Effekt des Attributs hängt davon ab, welche Syntax Sie verwenden – entweder die Syntax der Bibliotheksanweisung oder die Parametersyntax.

Wenn die Bibliotheksanweisung zusammen mit einem LocaleID-Argument angewendet wird, wie im ersten Beispiel gezeigt, identifiziert das Attribut [lcid] das Gebietsschema für eine Typbibliothek oder für ein Funktionsargument und ermöglicht es Ihnen, internationale Zeichen innerhalb des Bibliotheksblocks zu verwenden.

Wirksam mit Version 3.01.75 des MIDL-Compilers ist der gebietsschemabezeichner, der von diesem Attribut bereitgestellt wird, nicht nur die resultierende Typbibliothek, sondern ändert tatsächlich das Verhalten des Compilers. In einer Bibliotheksanweisung akzeptiert MIDL ausgehend vom Punkt, an dem das [lcid] -Attribut verwendet wird, Eingaben gemäß dem angegebenen Gebietsschema lokalisiert. Insbesondere ist vollständige Unterstützung für asiatische Sprachen wie Japanisch, Chinesisch und Koreanisch (vollständige DBCS-Unterstützung) verfügbar. Die von der Lokalisierung unterstützten Features sind: Kommentare, Zeichenfolgen, Hilfszeichenfolgen und Bezeichner.

Verwenden Sie den Switch "/lcid Compiler", um diese Lokalisierungsunterstützung für die gesamte Eingabedatei verfügbar zu haben, einschließlich Dateinamen und Verzeichnispfad, anstatt nur innerhalb des Bibliotheksblocks.

Wenn sie auf einen Parameter angewendet werden, können Sie mit dem [lcid] -Attribut einen Gebietsschemabezeichner an eine Funktion übergeben, wie im zweiten Beispiel gezeigt. Die folgenden Einschränkungen gelten für [lcid] -Parameter:

  • Eine Funktion kann höchstens einen [lcid] -Parameter aufweisen.
  • Der Datentyp des Parameters muss lang sein.
  • Die Richtung des Parameters muss nur [in] sein.
  • Der Parameter [lcid] muss allen anderen Parametern folgen, außer einem [retval] -Parameter.
  • Sie können das [lcid] -Attribut nicht auf einen Parameter " dispinterface " oder "coclass " anwenden.

Beispiele

[  
    uuid(12345678-1234-1234-1234-123456789ABC),
    lcid(0x09),
    version(1.0)
] 
library MyLibrary
{
    /* Library definition statements */
};

interface IMyFace : IDispatch
{
    [propget] HRESULT MyFunc([in, lcid] long LocaleID,
                          [out, retval] BSTR * ReturnVal);
    // Other interface definition statements
}

Weitere Informationen

coclass

Dispatchschnittstelle

Generieren einer Typbibliothek mit MIDL

/lcid

Bibliothek

ODL-Dateisyntax

ODL-Dateibeispiel

Retval