Bạn cần phải cắm nó vào bộ lập lịch tác vụ, sao cho nó được khởi chạy sau khi người dùng đăng nhập, sử dụng tài khoản người dùng có quyền truy cập quản trị trên hệ thống, với các đặc quyền cao nhất dành cho các quy trình do tài khoản đó khởi chạy.
Đây là phần triển khai được sử dụng để tự động khởi động lại các quy trình với đặc quyền quản trị khi đăng nhập với tư cách người dùng bình thường.
Tôi đã sử dụng nó để khởi chạy quy trình trợ giúp 'OpenVPN GUI' cần các đặc quyền nâng cao để hoạt động chính xác và do đó sẽ không khởi chạy đúng cách từ khóa đăng ký.
Từ dòng lệnh, bạn có thể tạo tác vụ từ mô tả XML về những gì bạn muốn hoàn thành; vì vậy, ví dụ như chúng tôi có cái này, được xuất từ hệ thống của tôi, sẽ bắt đầu notepad với các đặc quyền cao nhất khi tôi đăng nhập:
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2015-01-27T18:30:34</Date>
<Author>Pete</Author>
</RegistrationInfo>
<Triggers>
<LogonTrigger>
<StartBoundary>2015-01-27T18:30:00</StartBoundary>
<Enabled>true</Enabled>
</LogonTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<UserId>CHUMBAWUMBA\Pete</UserId>
<LogonType>InteractiveToken</LogonType>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>false</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT0S</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>"c:\windows\system32\notepad.exe"</Command>
</Exec>
</Actions>
</Task>
và nó được đăng ký bởi dấu nhắc lệnh của quản trị viên bằng cách sử dụng:
schtasks /create /tn "start notepad on login" /xml startnotepad.xml
câu trả lời này thực sự nên được chuyển sang một trong các trang web stackexchange khác, vì nó thực sự không phải là một câu hỏi lập trình.
.login
tập lệnh của bạn trên Unix), chứ không phải chạy lúc khởi động (như một số/etc/rc/...
tập lệnh).