2013-01-10 3 views
47

Sto provando a programmare il mio programma C# per l'esecuzione su un programma di pianificazione di Windows. Sto usando Windows 7 Professional.Errore di pianificazione attività di Windows errore 101 avvio codice fallito 2147943785

È possibile creare le opzioni di sicurezza del task impostate per l'esecuzione indipendentemente dal fatto che l'utente abbia effettuato l'accesso, gli abbiano conferito privilegi elevati, ovvero l'avvio di un exe su un percorso remoto a cui ho accesso.

"Valore errore: 2147943785" il vostro aiuto sarebbe molto apprezzato.

Ecco il codice XML per l'errore

- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> 
- <System> 
    <Provider Name="Microsoft-Windows-TaskScheduler" Guid="{DE7B24EA-73C8-4A09-985D-   5BDADCFA9017}" /> 
    <EventID>101</EventID> 
    <Version>0</Version> 
    <Level>2</Level> 
    <Task>101</Task> 
    <Opcode>101</Opcode> 
    <Keywords>0x8000000000000001</Keywords> 
    <TimeCreated SystemTime="2013-01-10T12:44:20.882178000Z" /> 
    <EventRecordID>51522</EventRecordID> 
    <Correlation /> 
    <Execution ProcessID="652" ThreadID="1892" /> 
    <Channel>Microsoft-Windows-TaskScheduler/Operational</Channel> 
    <Computer>pcb.co.za</Computer> 
    <Security UserID="S-1-5-18" /> 
    </System> 
- <EventData Name="TaskStartFailedEvent"> 
    <Data Name="TaskName">\Naedo</Data> 
    <Data Name="UserContext">Domanin\User31r</Data> 
    <Data Name="ResultCode">2147943785</Data> 
    </EventData> 
    </Event> 

risposta

78

L'utente che è configurato per eseguire questa operazione pianificata deve avere "Accesso come un processo batch" diritti sul computer che ospita l'exe si sta avviando. Questo può essere configurato sulla politica di sicurezza locale del computer che ospita l'exe. È possibile modificare la politica (sul server che ospita l'exe) sotto

Strumenti di amministrazione -> Criteri di protezione locali -> Criteri locali -> Assegnazione diritti utente -> Accedi come Batch Job

Aggiungi il tuo utente a questo elenco (potresti anche rendere l'account utente un amministratore locale sul computer che ospita l'exe).

Infine, puoi semplicemente copiare il tuo exe dal percorso di rete sul tuo computer locale ed eseguirlo da lì.

Si noti inoltre che un criterio di dominio potrebbe limitare i diritti di "Accesso come processo batch" alla propria organizzazione.

+0

grazie Jesse, ottengo nel registro come schermo in batch, ma i pulsanti "Aggiungi utente o gruppo" e "Rimuovi" sono inattivi, c'è un modo per aggirare questo? – user1966843

+2

Sembra che tu non stia effettuando l'accesso a quel computer come amministratore locale. Solo un amministratore locale può apportare modifiche a chi è nel gruppo "Accedi come gruppo". – Jesse

+0

Grazie mille Jesse the exe. era su una macchina remota, quindi l'ho appena copiato sulla mia macchina locale e ha funzionato, molto apprezzato :) – user1966843

0

Oggi ho lo stesso su Win7.x64, questo lo risolve.

Fare clic destro Risorse del computer> Gestisci> Utenti e gruppi locali> Gruppi> amministratori doppio click> il tuo nome dovrebbe essere lì, se non premere Aggiungi ...