Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Windows 程式怎麼跑起來?從雙擊圖示到進程誕生的完整旅程

編輯:Windows XP 系統介紹

新電腦、新系統,滿螢幕圖示讓人眼花撩亂。其實每個程式啟動都遵循固定流程,搞懂這背後機制,不只能快速找到啟動入口,還能理解捷徑、關聯、命令列的本質差異。

五大尋找並啟動程式的入口

  1. 桌面捷徑:安裝程式常在桌面建立帶小箭頭的 `.lnk` 檔,雙擊即觸發 Shell 執行目標路徑。
  2. 開始功能表 → 所有程式:系統掃描 %AllUsersProfile%\Start Menu\Programs 與 %AppData%\Start Menu\Programs 下的捷徑,點選即啟動。
  3. 檔案關聯雙擊:在資料夾或「我的文件」雙擊資料檔(如 `.docx`),Shell 依登錄表 HKEY_CLASSES_ROOT\.docx 關聯到 Word 並傳入檔案路徑參數啟動。
  4. 執行對話框 / 命令列:Win+R 輸入可執行檔名稱(含路徑或在 PATH 內),或 CMD/PowerShell 直接下指令,建立進程最直接。
  5. 搜尋/ Cortana:輸入關鍵字,系統索引服務回傳捷徑或執行檔,點選啟動。

程式啟動的內部流程(簡化版)

  1. 使用者動作 → Shell (`explorer.exe`) 接收訊息。
  2. Shell 解析目標:捷徑解析 `.lnk` 取得 `TargetPath` + `Arguments`;關聯查詢註冊表取得 `command` 模板。
  3. 呼叫 `CreateProcess` API:建立新進程物件、配置虛擬記憶體空間、載入映像 (`ntdll.dll`、`kernel32.dll`)、建立主執行緒。
  4. 進程進入點 (`main`/`WinMain`) 執行:CRT 初始化 → 載入動態連結庫 → 執行應用程式初始化碼 → 進入訊息迴圈/事件循環。
  5. 視窗顯示、等待使用者互動。

小知識:捷徑 vs 關聯 vs 命令列

方式參數傳遞工作目錄適用場景
捷徑固定在 `.lnk` 內可指定固定參數啟動
檔案關聯自動帶入雙擊檔案路徑檔案所在目錄文件導向開啟
命令列完全自訂當前目錄腳本、批次、除錯

理解啟動機制,下次找不到程式、參數傳不進去、想自訂啟動參數時,就知道該去查捷徑屬性、註冊表關聯、還是寫批次檔了。

Copyright © Windows教程網 All Rights Reserved