UnmanagedMarshal Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Atenção
An alternate API is available: Emit the MarshalAs custom attribute instead. http://go.microsoft.com/fwlink/?linkid=14202
Representa a classe que descreve como marshalo um campo de código gerido para código não gerido. Esta classe não pode ser herdada.
public ref class UnmanagedMarshal sealed
[System.Serializable]
public sealed class UnmanagedMarshal
[System.Serializable]
[System.Obsolete("An alternate API is available: Emit the MarshalAs custom attribute instead. http://go.microsoft.com/fwlink/?linkid=14202")]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class UnmanagedMarshal
[<System.Serializable>]
type UnmanagedMarshal = class
[<System.Serializable>]
[<System.Obsolete("An alternate API is available: Emit the MarshalAs custom attribute instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UnmanagedMarshal = class
Public NotInheritable Class UnmanagedMarshal
- Herança
-
UnmanagedMarshal
- Atributos
Observações
O exemplo do código mostra a solução alternativa para este tipo obsoleto.
Marshaling é o processo de empacotamento e desempacotamento de parâmetros para que possam ocorrer chamadas remotas de procedimentos. Durante o marshaling, um campo pode sofrer uma conversão de formato quando o formato do tipo gerido é diferente do formato do tipo não gerido correspondente. Por exemplo, podes querer marshalar um String tipo como um BSTR não gerido. Algumas conversões de formato são tratadas automaticamente pelo runtime. Para sobrepor o comportamento padrão, deve usar a UnmanagedMarshal classe para definir a conversão do formato.
Propriedades
| Name | Description |
|---|---|
| BaseType |
Obsoleto.
Obtém um tipo base não gerida. Esta propriedade é somente leitura. |
| ElementCount |
Obsoleto.
Recebe um elemento numérico. Esta propriedade é somente leitura. |
| GetUnmanagedType |
Obsoleto.
Indica um tipo não controlado. Esta propriedade é somente leitura. |
| IIDGuid |
Obsoleto.
Recebe um GUID. Esta propriedade é somente leitura. |
Métodos
| Name | Description |
|---|---|
| DefineByValArray(Int32) |
Obsoleto.
Especifica um array de comprimento fixo (ByValArray) para marshal para código não gerido. |
| DefineByValTStr(Int32) |
Obsoleto.
Especifica uma string num buffer de array fixo (ByValTStr) para marshal para código não gerido. |
| DefineLPArray(UnmanagedType) |
Obsoleto.
Especifica um |
| DefineSafeArray(UnmanagedType) |
Obsoleto.
Especifica um |
| DefineUnmanagedMarshal(UnmanagedType) |
Obsoleto.
Especifica um dado tipo que deve ser marshalizado para código não gerido. |
| Equals(Object) |
Obsoleto.
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Obsoleto.
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obsoleto.
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Obsoleto.
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Obsoleto.
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |