給程序指定乙個新的執行程式的函式exec

2021-07-27 17:21:21 字數 672 閱讀 6344

乙個程序呼叫exec()函式來執行乙個新程式。之後該程序的**段、資料段和堆疊段就被新程式的所代替。新程式從自己的main()函式開始執行。

乙個簡單的exec()呼叫的例子

#include #include #include #include #include char *env_list = ;

int main()

else if(pid == 0)

if(waitpid(pid,null,0) < 0)

if((pid = fork()) < 0)

else if(pid == 0)

exit(0);

return 0;

}

子程序的可執行檔案print1的原始碼為:

#include inr main(int argc,char *argv)

分析:print1.c是主程式file4.c中exec函式指派的可執行程式的源檔名,將傳遞給程式的引數和環境變數進行輸出。下面是一種可能的結果

程式首先呼叫了execlp(),傳遞的引數有可執行程式的路徑名、程式所需的引數及程式執行時的環境變數。

Powershell 以指定的賬戶執行程式

很多的情況下,需要以指定的賬戶執行程式 例如在非管理員賬戶下要以管理員許可權執行程式,就可以用下面的ps指令碼 1 2 3 4 5 6 7 8 script editor snail yu date 2014 09 17 uname administrator 指定使用者名稱,administrat...

用Delphi產生乙個最小的可執行程式

用delphi產生乙個最小的可執行程式 曾經在網上看到有人說delphi能夠產生大小只有16k的win32應用程式,而我自己曾經編寫過的這種可執行檔案大小則是在17k左右,因而我一度猜想delphi恐怕也只能將 優化到這種程度了。最近由於測試的目的重新把這個程式寫了一遍,才發現利用一些技巧,還能夠將...

編寫兩個不同的可執行程式,乙個開啟檔案,乙個讀檔案

2 編寫兩個不同的可執行程式,名稱分別為a和b,b為a的子程序。在a程式中呼叫open函式開啟a.txt檔案。在b程式不可以呼叫open或者fopen,只允許呼叫read函式來實現讀取a.txt檔案。a程式中可以使用 fork與execve函式建立子程序 makefile 檔案 suffixes c...