Método IVsCommandWindow.PrepareCommand (String, Guid, UInt32, IntPtr, PREPARECOMMANDRESULT )
Executa todas as etapas para se preparar para executar um comando de linha de comando.
Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)
Sintaxe
int PrepareCommand(
string szCommand,
out Guid pguidCmdGroup,
out uint pdwCmdID,
out IntPtr ppvaCmdArg,
PREPARECOMMANDRESULT[] pResult
)
int PrepareCommand(
String^ szCommand,
[OutAttribute] Guid% pguidCmdGroup,
[OutAttribute] unsigned int% pdwCmdID,
[OutAttribute] IntPtr% ppvaCmdArg,
array<PREPARECOMMANDRESULT>^ pResult
)
abstract PrepareCommand :
szCommand:string *
pguidCmdGroup:Guid byref *
pdwCmdID:uint32 byref *
ppvaCmdArg:nativeint byref *
pResult:PREPARECOMMANDRESULT[] -> int
Function PrepareCommand (
szCommand As String,
<OutAttribute> ByRef pguidCmdGroup As Guid,
<OutAttribute> ByRef pdwCmdID As UInteger,
<OutAttribute> ByRef ppvaCmdArg As IntPtr,
pResult As PREPARECOMMANDRESULT()
) As Integer
Parâmetros
- szCommand
[in] A seqüência de caracteres que contém o comando.
- pguidCmdGroup
[out] Ponteiro para o GUID do grupo do comando.
- pdwCmdID
[out] Ponteiro para o identificador do comando.
- ppvaCmdArg
[out] Um ponteiro para uma VARIANTE de matriz que contém os argumentos de comando.
- pResult
[out] Um ponteiro para uma PREPARECOMMANDRESULT estrutura contendo informações de erro adicionais.
Valor de retorno
Type: System.Int32
Se o método for bem-sucedido, ele retorna S_OK.Se ele falhar, ele retorna um código de erro.
Comentários
O método executa as seguintes etapas:
Analisa a seqüência de comandos.
Pesquise o comando.
Verifica que o comando é habilitado.
Determina se ele aceita parâmetros.
Prepara uma VARIANTE que contém os parâmetros e uma estrutura para receber os resultados do comando.
Após retornar, o chamador tem toda a informação necessária para chamar o Exec método da IOleCommandTarget interface.
COM assinatura
De vsshell.idl:
HRESULT IVsCommandWindow::PrepareCommand(
[in, ref] LPCOLESTR szCommand,
[out] GUID* pguidCmdGroup,
[out] DWORD* pdwCmdId,
[out] VARIANT** ppvaCmdArg,
[out, retval] PREPARECOMMANDRESULT* pResult
);
Observações para Implementadores
Em caso de falha, PrepareCommand retorna E_FAIL e define pResult para um valor do tipo PREPARECOMMANDRESULT indicar a natureza da falha.Isso permite que o chamador personalizar a emissão de relatórios de vários erros.Também em caso de falha, as informações de erro de segmento são definidas com uma seqüência de caracteres significativa.
O chamador é responsável pelo argumento VARIANT ppvaCmdArg.Para liberá-la, o chamador precisa primeiro chamar VariantClear para limpar o conteúdo e, em seguida, chame CoTaskMemFree para liberar a VARIANTE propriamente dito.
Consulte também
Interface IVsCommandWindow
Namespace Microsoft.VisualStudio.Shell.Interop
Retornar ao topo