Compartilhar via


CAccessToken::CreateProcessAsUser

Chamar esse método para criar um novo processo que é executado no contexto de segurança do usuário representado pelo objeto de CAccessToken .

bool CreateProcessAsUser(
   LPCTSTR pApplicationName,
   LPTSTR pCommandLine,
   LPPROCESS_INFORMATION pProcessInformation,
   LPSTARTUPINFO pStartupInfo,
   DWORD dwCreationFlags = NORMAL_PRIORITY_CLASS,
   bool bLoadProfile = false,
   const CSecurityAttributes* pProcessAttributes = NULL,
   const CSecurityAttributes* pThreadAttributes = NULL,
   bool bInherit = false,
   LPCTSTR pCurrentDirectory = NULL 
) throw( );

Parâmetros

  • pApplicationName
    Ponteiro para uma cadeia de caracteres NULL- finalizada que especifica o módulo para executar.Este parâmetro não pode ser NULO.

  • pCommandLine
    Ponteiro para uma cadeia de caracteres NULL- finalizada que especifica a linha de comando para executar.

  • pProcessInformation
    Ponteiro a estrutura de PROCESS_INFORMATION que recebe informações de identificação sobre o novo processo.

  • pStartupInfo
    Ponteiro a estrutura de STARTUPINFO que especifica como a janela principal para o novo processo deve aparecer.

  • dwCreationFlags
    Especifica os sinalizadores adicionais que controlam a classe de prioridade e a criação do processo.Consulte a função CreateProcessAsUser Win32 para obter uma lista de sinalizadores.

  • bLoadProfile
    Se verdadeiro, o perfil de usuário é carregada com LoadUserProfile.

  • pProcessAttributes
    Ponteiro a estrutura de SECURITY_ATTRIBUTES que especifica um descritor de segurança para o novo processo e determine se os identificadores podem herdar a alça retornado.Se os pProcessAttributes são NULOS, o processo obtém um descritor de segurança padrão e tratar não pode ser herdada.

  • pThreadAttributes
    Ponteiro a estrutura de SECURITY_ATTRIBUTES que especifica um descritor de segurança para o novo segmento e determine se os identificadores podem herdar a alça retornado.Se os pThreadAttributes são NULOS, o segmento obtém um descritor de segurança padrão e tratar não pode ser herdada.

  • bInherit
    Indica se o novo processo herda o processo de chamada.Se verdadeiro, cada identificador herdável aberta no processo de chamada é herdada pelo novo processo.As alças herdadas têm o mesmo valor e privilégios de acesso que o original.

  • pCurrentDirectory
    Ponteiro para uma cadeia de caracteres NULL- finalizada que especifica a unidade e o diretório atual para o novo processo.A cadeia de caracteres deve ser um caminho completo que inclui uma letra da unidade.Se esse parâmetro é NULO, o novo processo terá o mesmo diretório e unidade atual que o processo de chamada.

Valor de retorno

Retorna verdadeiros em êxito, falso em caso de falha.

Comentários

CreateProcessAsUser usa a função CreateProcessAsUser do Win32 para criar um novo processo executado no contexto de segurança do usuário representam pelo objeto de CAccessToken .Consulte a descrição da função de CreateProcessAsUser para uma discussão completa dos parâmetros necessários.

Para este método foi bem-sucedida, o objeto de CAccessToken deve conter AssignPrimaryToken (a menos que é um token estrito) e privilégios de IncreaseQuota.

Requisitos

Cabeçalho: atlsecurity.h

Consulte também

Referência

Classe de CAccessToken