Função NetScheduleJobAdd (lmat.h)
[NetScheduleJobAdd não está mais disponível para uso a partir de Windows 8. Em vez disso, use as Interfaces do Agendador de Tarefas 2.0.
]
A função NetScheduleJobAdd envia um trabalho para ser executado em uma data e hora futura especificadas. Essa função exige que o serviço de agendamento seja iniciado no computador para o qual o trabalho é enviado.
Sintaxe
NET_API_STATUS NET_API_FUNCTION NetScheduleJobAdd(
[in, optional] LPCWSTR Servername,
[in] LPBYTE Buffer,
[out] LPDWORD JobId
);
Parâmetros
[in, optional] Servername
Um ponteiro para uma cadeia de caracteres constante que especifica o nome DNS ou NetBIOS do servidor remoto no qual a função deve ser executada. Se esse parâmetro for NULL, o computador local será usado.
[in] Buffer
Um ponteiro para uma estrutura AT_INFO que descreve o trabalho a ser enviada. Para obter mais informações sobre como agendar trabalhos usando propriedades de trabalho diferentes, consulte a seção Comentários a seguir e Buffers de Função de Gerenciamento de Rede.
[out] JobId
Um ponteiro que recebe um identificador de trabalho para o trabalho recém-enviado. Essa entrada só será válida se a função retornar com êxito.
Retornar valor
Se a função for bem-sucedida, o valor retornado será NERR_Success.
Se a função falhar, o valor retornado será um código de erro do sistema. Para obter uma lista de códigos de erro, consulte Códigos de erro do sistema.
Comentários
Normalmente, somente os membros do grupo administradores local no computador em que o trabalho de agendamento está sendo adicionado podem executar essa função com êxito. Se o nome do servidor passado na cadeia de caracteres apontada pelo parâmetro Servername for um servidor remoto, somente os membros do grupo administradores locais no servidor remoto poderão executar essa função com êxito.
Se o valor do Registro a seguir tiver o conjunto de bits menos significativo (por exemplo, 0x00000001), os usuários pertencentes ao grupo Operadores de Servidor também poderão executar essa função com êxito.
HKLM\System\CurrentControlSet\Control\Lsa\SubmitControl
Veja a seguir exemplos de como agendar trabalhos usando propriedades diferentes compatíveis com a função NetScheduleJobAdd .
Para agendar um trabalho que é executado uma vez:
- Defina o membro DaysOfMonth da estrutura AT_INFO como zero.
- Defina o membro DaysOfWeek da estrutura AT_INFO como zero.
- Defina o membro JobTime da estrutura AT_INFO para o momento em que o trabalho deve ser executado.
Para agendar e excluir um trabalho que é executado várias vezes:
- Definir os bits apropriados no membro DaysOfMonth da estrutura AT_INFO ou
- Defina os bits apropriados no membro DaysOfWeek da estrutura AT_INFO .
- Defina o membro JobTime da estrutura AT_INFO para o momento em que o trabalho deve ser executado.
Para agendar um trabalho que é executado periodicamente:
- Definir os bits apropriados no membro DaysOfMonth da estrutura AT_INFO ou
- Defina os bits apropriados no membro DaysOfWeek da estrutura AT_INFO .
- Defina o membro JobTime da estrutura AT_INFO para o momento em que o trabalho deve ser executado.
- Defina o sinalizador de envio de trabalho JOB_RUN_PERIODICALLY no membro Flags da estrutura AT_INFO .
Consulte a estrutura AT_INFO para obter uma descrição das máscaras de bits DaysOfWeek, DaysOfMonth e job property.
No Windows 2000, o serviço AT anterior e o Agendador de Tarefas foram combinados. O serviço Agendador de Tarefas só foi preciso para o minuto. Portanto, a função NetScheduleJobAdd usa apenas horas e minutos especificados no membro JobTime da estrutura AT_INFO quando um trabalho está agendado para ser executado.
A partir do Windows Vista, a precisão do Agendador de Tarefas foi aumentada para o segundo. Portanto, a função NetScheduleJobAdd usa apenas as horas, minutos e segundos especificados no membro JobTime da estrutura AT_INFO quando um trabalho é agendado para ser executado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | lmat.h (inclua Lmat.h) |
Biblioteca | Netapi32.lib |
DLL | Netapi32.dll |
Confira também
Funções de gerenciamento de rede