SHELLEXECUTEINFO
9/9/2008
O SHELLEXECUTEINFO estrutura contém informações usadas pela função ShellExecuteEx.
Syntax
typedef struct _SHELLEXECUTEINFO {
DWORD cbSize;
ULONG fMask;
HWND hwnd;
LPCTSTR lpVerb;
LPCTSTR lpFile;
LPCTSTR lpParameters;
LPCTSTR lpDirectory;
int nShow;
HINSTANCE hInstApp;
LPVOID lpIDList;
LPCTSTR lpClass;
HKEY hkeyClass;
DWORD dwHotKey;
union {
HANDLE hIcon;
HANDLE hMonitor;
} DUMMYUNIONNAME;
HANDLE hProcess;
} SHELLEXECUTEINFO, FAR* LPSHELLEXECUTEINFO;
Os membros
- cbSize
Tamanho da estrutura, em bytes.
fMask
Matriz de sinalizadores que indicam a de conteúdo e validade dos outros membros de estrutura. Windows CE 1.0 e 1.01, fMask Os sinalizadores são sem suporte. Windows CE 2.0 e posterior, fMask Pode ser uma combinação dos seguinte valores.Valor Descrição SEE_MASK_FLAG_NO_UI
Não exibir uma caixa mensagem de erro se ocorrer um erro.
SEE_MASK_NOCLOSEPROCESS
Deixa o processo execução após o ShellExecuteEx função sai. O hProcess membro recebe o identificador para o processo.
- hwnd
Identificador janela às caixas qualquer mensagem que o sistema pode gerar ao executar esta função.
lpVerb
Ponteiro longo para um seqüência de caracteres especificando o nome de um verbo. O verbo especifica uma ação para o aplicativo para executar. O conjunto de disponível verbos depende de determinado arquivo ou pasta. Ele inclui os comandos listados na menu de contexto de Registro. A seguinte tabela mostra os verbos que são geralmente válido.Valor Descrição Editar
A função abre um editor.
Localizar
A função inicia uma pesquisa a partir de Diretório especificado.
Abrir
A função abre o arquivo especificado pelo lpFile parâmetro. O arquivo pode ser uma arquivo executável ou um arquivo de documento. Ele também pode ser uma pasta. Esta é a verbo padrão se nenhum verbo está especificado.
Imprimir
A função imprime o arquivo de documento especificado por lpFile.
- lpFile
Ponteiro longo para um seqüência de caracteres NULL-Terminated que especifica o nome absoluto do arquivo para aberto ou imprimir. A função pode aberto um arquivo executável ou um arquivo de documento, mas ele pode somente imprimir um arquivo de documento. Observe que a concepção de um atual Diretório não existe no Windows Embedded CE. Você deve especificar o completo caminho do arquivo para especificar o nome arquivo absoluto.
lpParameters
Ponteiro longo para um seqüência de caracteres NULL-Terminated que contém os parâmetros de aplicativo. Os parâmetros devem ser separados por espaços. Para incluir duplo entre aspas, você deve incluir as marcas no duplo entre aspas, as in o seguinte exemplo.sei.lpParameters = "An example: \"\"\"quoted text\"\"\"";
Neste maiúsculas e minúsculas, o aplicativo recebe três parâmetros: Um, exemplo:, e "texto entre aspas".
Se a pasta lpFile membro especifica um arquivo de documento, esse membro deve ser NULL.
- lpDirectory
Não suportado. Definido como zero.
- nShow
Mostre sinalizadores. Pode ser uma dos valores SW_ * descritos para a função ShowWindow. Se lpFile Especifica um arquivo executável, esse membro especifica como o aplicativo deve ser mostrado quando ele é aberto.
hInstApp
Esse membro é válido somente se a função falhar, no qual maiúsculas e minúsculas ele recebe uma do seguinte valores de erro, que são menor ou igual a 32.Valor Descrição SE_ERR_FNF
Arquivo não encontrado.
SE_ERR_PNF
Caminho não encontrado.
SE_ERR_ACCESSDENIED
Acesso negado.
SE_ERR_OOM
Memória insuficiente.
SE_ERR_DLLNOTFOUND
Dinâmico-biblioteca link não encontrado.
SE_ERR_SHARE
Não é possível compartilhar um aberto arquivo.
SE_ERR_ASSOCINCOMPLETE
Arquivo informações associação não completo.
SE_ERR_DDETIMEOUT
Operação DDE tempo limite atingido fora.
SE_ERR_DDEFAIL
DDE operação falha.
SE_ERR_DDEBUSY
DDE operação está ocupado.
SE_ERR_NOASSOC
Arquivo associação não disponível.
Se a função for bem-sucedido, o valor desse membro deve ser ignorado.
- lpIDList
Ignorado.
- lpClass
Ignorado.
- hkeyClass
Ignorado.
- dwHotKey
Ignorado.
- hIcon
Ignorado.
- hProcess
Identificador para o aplicativo recém-iniciado. Este membro é definido no retorno e sempre é definido como NULL se fMask não é definido como SEE_MASK_NOCLOSEPROCESS.
Remarks
Para todas as plataformas
Os verbos disponível para um objeto é essencialmente os itens que você localizar no menu atalho de um objeto. Para localizar os verbos são disponível, aspecto no Registro em
HKEY_CLASSES_ROOT\<object_name>\Shell\<verb>
nome_de_objeto é o nome do objeto de arquivo e verbo é o nome do disponível verbo. O verbo subchave contém os dados que indica o que acontece quando esse verbo é invocado.
Cada verbo corresponde ao comando que seriam usado para iniciar o aplicativo de um janela do console. O aberto verbo é um bom exemplo, porque é comumente com suporte. Para arquivos .exe, aberto Inicia o aplicativo. No entanto, é mais comumente usada para iniciar um aplicativo que opera em um arquivo específico. PARA instância, .txt Arquivos podem ser abertos por Microsoft® WordPad. O aberto verbo para um arquivo .txt corresponde ao seguinte comando:
"C:\Program Files\Windows NT\Accessories\Wordpad.exe" "%1"
Quando você usa ShellExecuteEx para aberto um arquivo .txt, WordPad.exe é iniciado com o arquivo especificado como seu argumento. Alguns comandos podem ter argumentos adicionais, como os sinalizadores, que podem ser adicionados quando necessário para iniciar o aplicativo corretamente.
Em geral, tentando determinar a lista de disponível verbos para um arquivo específico é um pouco complicado. Em muitos casos, você pode definir a lpVerb membro para NULL, que chama o comando usar como padrão para a classe arquivo. Esse procedimento é normalmente equivalente para configuração lpVerb Para aberto, mas algumas classes arquivo podem ter um comando diferente usar como padrão.
Para Windows incorporado CE
Essa estrutura especifica um tipo enumerado que Define sinalizadores usados com o método IShellFolder::EnumObjects.
Requirements
Header | shellapi.h |
Windows Embedded CE | Windows CE 1.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |
See Also
Reference
Standard Shell Structures
ITEMIDLIST
ShellExecuteEx
ShowWindow