![](/img/trans.png)
[英]How to get application folder when program is started by Windows Task Scheduler
[英]How to identify the process is started manually or from Task Scheduler?
我有一個生成一些 PDF 文件的 win 表單應用程序。 現在我必須在調度程序中創建一個任務,以便在每天的指定時間運行應用程序。 現在我要做的是,我需要手動運行應用程序。 雖然它手動運行需要向用戶顯示一些額外的結果。 那么如何識別調度程序運行的應用程序或手動運行的應用程序呢?
您可以使用當前目錄作為指標:
if (Environment.CurrentDirectory == Application.StartupPath)
{
// Started from Start menu
}
else if (Environment.CurrentDirectory == Environment.SystemDirectory)
{
// Started by Task Scheduler
}
當當前目錄(“開始於”)在開始菜單快捷方式中設置為應用程序目錄而不是在任務計划程序操作中設置時,它會起作用。 這是很常見的。
備注: Ramankingdom 的回答更可取。 但是,如果由於某些(組織)原因您不能使用命令行參數,則這是一個附加選項。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.