Partilhar via


Classe MissingInteropDataException (.NET Nativo)

Aplicativos .NET para Windows para Windows 10, somente .NET Native

A exceção que é acionada quando um método de marshaling manual é chamado, mas os metadados de um tipo não são encontrados por análise estática ou em um arquivo de diretivas de runtime.

Namespace: System.Runtime.CompilerServices

Importante

A MissingInteropDataException classe destina-se exclusivamente ao uso interno pela cadeia de ferramentas do .NET Native. Ela não é destinado para uso em código de terceiros e você também não deve tratar a exceção no seu código do aplicativo. Em vez disso, elimine a exceção adicionando entradas ao seu arquivo de diretivas de runtime. Para obter mais informações, consulte a seção Comentários.

Sintaxe

public class MissingInteropDataException : Exception

A classe MissingInteropDataException tem os seguintes membros:

Construtores

Construtor Descrição
public MissingInteropDataException(String resourceId, Type pertinentType) Inicializa uma nova instância da classe MissingInteropDataException usando a ID de uma mensagem fornecida pelo sistema que descreve o erro e o tipo cujos dados estão ausentes. Esse construtor é para uso interno somente pela cadeia de ferramentas do .NET Native.

Propriedades

Propriedade Descrição
public IDictionary Data { get; } Obtém uma coleção de pares de chave/valor que fornecem informações definidas pelo usuário adicionais sobre a exceção. (Herdado de System.Exception.)
public string HelpLink { get; set; } Obtém ou define um link para o arquivo de ajuda associado a essa exceção. (Herdado de System.Exception.)
public int HResult { get; protected set; } Obtém ou define o HRESULT, que é um valor numérico codificado atribuído a uma exceção específica. (Herdado de System.Exception.)
public Exception InnerException { get; } Obtém a exceção que causou a exceção atual. (Herdado de System.Exception.)
public string Message { get; } Obtém uma mensagem que descreve a exceção atual. (Herdado de System.Exception.)
public Type MissingType { get; private set; } Obtém ou define o tipo cujos dados estão ausentes.
public string Source { get; set; } Obtém ou define o nome do aplicativo ou objeto que causou o erro. (Herdado de System.Exception.)
public string StackTrace { get; } Obtém uma representação de cadeia de caracteres de quadros imediatos na pilha de chamadas. (Herdado de System.Exception.)
public MethodBase TargetSite { get; } Obtém o método que acionou a exceção atual. (Herdado de System.Exception.)

Métodos

Método Descrição
public bool Equals(Object obj) Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object.)
protected void Finalize() Permite que um objeto tente liberar recursos e executar outras operações de limpeza antes de ser recuperado pela coleta de lixo. (Herdado de Object.)
public Exception GetBaseException() Retorna a exceção é a causa raiz de uma ou mais exceções subsequentes. (Herdado de System.Exception.)
public int GetHashCode() Retorna um código de hash para uma instância MissingInteropDataException. (Herdado de Object.)
public void GetObjectData(SerializationInfo info, StreamingContext context) Define um objeto SerializationInfo com informações sobre a exceção. (Herdado de System.Exception.)
public Type GetType() Obtém o tipo de runtime da instância atual. (Herdado de System.Exception.)
protected Object MemberwiseClone() Cria uma cópia superficial do objeto atual. (Herdado de Object.)
public string ToString() Retorna a representação de cadeia de caracteres de exceção atual. (Herdado de System.Exception.)

Eventos

Evento Descrição
protected event EventHandler<SafeSerializationEventArgs> SerializeObjectState Ocorre quando uma exceção é serializada para criar um objeto de estado de exceção que contém dados serializados sobre a exceção. (Herdado de System.Exception.)

Detalhes de uso

A exceção MissingInteropDataException é acionada quando uma chamada de método para um componente COM ou do Windows Runtime não pode ser concluída com êxito porque as informações de tipo não estão disponíveis.

Os metadados disponíveis em um aplicativo no runtime é definido pelo arquivo de diretivas (configuração XML) de runtime, *. rd.xml. Para impedir que o seu aplicativo gere esta exceção, você deve modificar este arquivo para definir os metadados que devem estar presentes no tempo de execução. Geralmente, esse erro é tratado adicionando um atributo MarshalObject, MarshalDelegate ou MarshalStructure a um elemento de programa apropriado no arquivo de diretivas de runtime. Para obter informações sobre o formato desse arquivo, consulte Referência do arquivo de configuração das diretivas de runtime (rd.xml).

Importante

Como essa exceção indica que os metadados necessários para seu aplicativo não estão disponíveis em tempo de execução, você não deve lidar com essa exceção em um try/catch bloco. Em vez disso, você deve diagnosticar a causa da exceção e eliminá-la adicionando a entrada apropriada a um arquivo de diretivas de runtime.

A classe MissingInteropDataException contém um único membro exclusivo, a propriedade MissingType, que indica o tipo cujos metadados são necessários para concluir uma chamada de método com êxito. Todos os membros restantes são herdados da classe base, System.Exception.

Confira também