Compartilhar via


Atributo lcid

O atributo [lcid] especifica um identificador de localidade e habilita o suporte ao compilador MIDL específico da localidade.

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

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

Parâmetros

uuid-number

Especifica um número de identificação universalmente exclusivo para a biblioteca.

Localeid

Especifica o identificador de localidade de 32 bits usado no Suporte à Linguagem Nacional do Windows. Normalmente, o identificador de localidade é dado em hexadecimal.

optional-attribute-list

Zero ou mais atributos a serem aplicados à biblioteca.

nome-da-biblioteca

O nome pelo qual os componentes de software se referem à biblioteca.

library-definition-statements

Uma ou mais instruções MIDL que definem o conteúdo da biblioteca.

function-name

Especifica o nome da função no arquivo IDL.

parameter-attribute-list

Zero ou mais atributos MIDL que serão aplicados ao parâmetro de função.

parameter-name

Especifica o nome do parâmetro no arquivo IDL.

Comentários

A sintaxe [lcid] tem duas formas diferentes; o efeito do atributo depende de qual sintaxe você usa — a sintaxe da instrução library ou a sintaxe do parâmetro.

Quando aplicado à instrução library , juntamente com um argumento localeID, conforme mostrado no primeiro exemplo, o atributo [lcid] identifica a localidade de uma biblioteca de tipos ou para um argumento de função e permite que você use caracteres internacionais dentro do bloco de biblioteca.

Eficaz com a versão 3.01.75 do compilador MIDL, o identificador de localidade fornecido por esse atributo não só decora a biblioteca de tipos resultante, mas, na verdade, altera o comportamento do compilador. Dentro de uma instrução de biblioteca , do ponto em que o atributo [lcid] é usado, MIDL aceitará a entrada localizada de acordo com a localidade especificada. Em particular, o suporte completo para idiomas asiáticos, como japonês, chinês e coreano (suporte completo ao DBCS) está disponível. Os recursos compatíveis com a localização são: comentários, cadeias de caracteres, helpstrings e identificadores.

Use a opção do compilador /lcid para ter esse suporte de localização disponível para todo o arquivo de entrada, incluindo o nome do arquivo e o caminho do diretório, em vez de apenas dentro do bloco de biblioteca.

Quando aplicado a um parâmetro, o atributo [lcid] permite passar um identificador de localidade para uma função, conforme mostrado no segundo exemplo. As seguintes restrições se aplicam aos parâmetros [lcid] :

  • Uma função pode ter no máximo um parâmetro [lcid] .
  • O tipo de dados do parâmetro deve ser longo.
  • A direção do parâmetro deve ser somente [in] .
  • O parâmetro [lcid] deve seguir quaisquer outros parâmetros, exceto um parâmetro [retval] .
  • Não é possível aplicar o atributo [lcid] a um parâmetro dispinterface ou coclass .

Exemplos

[  
    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
}

Confira também

coclass

dispinterface

Gerando uma biblioteca de tipos com MIDL

/Lcid

biblioteca

Sintaxe de arquivo ODL

Exemplo de arquivo ODL

retval