午夜伦理在线-午夜伦理在线观看-午夜毛片免费看-午夜美女久久久久爽久久-午夜免费

Rss & SiteMap

曙海教育集團(tuán)論壇 http://www.bjzhda.cn

曙海教育集團(tuán)論壇
共1 條記錄, 每頁顯示 10 條, 頁簽: [1]
[瀏覽完整版]

標(biāo)題:Delphi 源程序格式書寫規(guī)范

1樓
wangxinxin 發(fā)表于:2010-12-14 11:41:05
程序自啟動(dòng)的原理

程序自啟動(dòng)有以下兩種方式:

1. 利用Win.ini文件實(shí)現(xiàn)程序的自動(dòng)啟動(dòng)

Win.ini是系統(tǒng)保存在“C:Windows”目錄下的一個(gè)系統(tǒng)初始化文件,系統(tǒng)在啟動(dòng)時(shí)會(huì)檢索該文件中的相關(guān)項(xiàng),以進(jìn)行系統(tǒng)環(huán)境的初始設(shè)置。在該文件中的“[windows]”數(shù)據(jù)段中,有兩個(gè)數(shù)據(jù)項(xiàng)“l(fā)oad=”和“run=”,它們的作用就是在系統(tǒng)啟動(dòng)之后自動(dòng)地裝入和運(yùn)行相關(guān)的程序。如果我們需要在系統(tǒng)啟動(dòng)之后立即裝入并運(yùn)行一個(gè)程序,只需要將運(yùn)行文件的全文件名添加在該數(shù)據(jù)項(xiàng)的后面,系統(tǒng)啟動(dòng)后就會(huì)自動(dòng)運(yùn)行該程序,系統(tǒng)也會(huì)進(jìn)入特定的操作環(huán)境中。

2. 利用注冊(cè)表實(shí)現(xiàn)相關(guān)程序的自動(dòng)啟動(dòng)

系統(tǒng)注冊(cè)表保存著系統(tǒng)的軟件、硬件及其他與系統(tǒng)配置有關(guān)的重要信息,一個(gè)計(jì)算機(jī)系統(tǒng)的系統(tǒng)注冊(cè)表一旦遭到破壞,整個(gè)系統(tǒng)將無法運(yùn)行。在計(jì)算機(jī)系統(tǒng)注冊(cè)表中有HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/Current_Version/Run子鍵,如果要讓程序在系統(tǒng)啟動(dòng)的過程中啟動(dòng)該程序,就可以向該目錄添加一個(gè)子鍵。具體的過程是在注冊(cè)表中右擊該項(xiàng),選中其中的“新建”項(xiàng)目,然后選中其中的“串值”,建立新的串值后將它改成相應(yīng)的名稱,雙擊新建的串值,輸入新的數(shù)值,自動(dòng)啟動(dòng)程序的過程就設(shè)置完成。

編程實(shí)例

在Delphi 5.0中同時(shí)具有對(duì)注冊(cè)表和INI文件操作的函數(shù)。下面是筆者編寫的一個(gè)簡(jiǎn)單程序,該程序通過修改注冊(cè)表和INI文件,使系統(tǒng)自動(dòng)啟動(dòng),相關(guān)程序的設(shè)置工作比較簡(jiǎn)單可靠。

1. 程序功能概述

程序的主界面是對(duì)話框,在主界面對(duì)話框中有兩個(gè)編輯框、一個(gè)按鈕組、一個(gè)打開文件對(duì)話框、兩個(gè)普通按鈕(Button)組成。操作者先在編輯框中添加需要自動(dòng)加載的程序全文件名(也可以通過瀏覽按鈕來完成),然后通過按鈕組中兩個(gè)按鈕完成加載方式的選擇(注冊(cè)表方式或者修改Win.ini文件的方式),最后操作者通過點(diǎn)擊“應(yīng)用”按鈕實(shí)現(xiàn)程序的自動(dòng)加載,同時(shí)系統(tǒng)會(huì)提示操作者是否將計(jì)算機(jī)重新啟動(dòng),以便觀察程序的具體功能完成情況。

2. 程序代碼

procedure TForm1.Button1Click(Sender: TObject);

{瀏覽按鈕的功能代碼}

begin

if (OpenDlg.Execute) then

{當(dāng)操作者選擇OK時(shí),程序取得選擇文件的全路徑名(包括文件的路徑及文件名稱),并將相應(yīng)的數(shù)值傳輸給相關(guān)的控件變量。}

Edit2.Text := OpenDlg.FileName;

end;

procedure TForm1.OKBtnClick(Sender: TObject);

{應(yīng)用按鈕的功能代碼}

Var

lKey: HKey;

i,len: integer;

title, data_set: LPCTSTR;

ret0,ret1: longint;

filename: String;

begin

if (edit1.Text =‘’) THEN

{如果操作者沒有填寫要設(shè)置項(xiàng)的標(biāo)題,程序顯示對(duì)話框,提示操作者進(jìn)行相關(guān)內(nèi)容的填寫。}

begin

Application.MessageBox(‘Please input the title name’,‘提示’,MB_OK);

EXIT;

end;

title:=PChar(edit1.Text);

if (edit2.text =‘’)THEN

{如果操作者沒有選擇要設(shè)置的程序全路徑文件名,程序顯示對(duì)話框提示操作者進(jìn)行相關(guān)的選擇。}

begin

Application.MessageBox(‘Please input the programe file name’,‘提示’,MB_OK);

exit;

end;

if (RadioGroup1.ItemIndex = 0) then

{如果操作者選擇注冊(cè)表方式,程序修改系統(tǒng)的注冊(cè)表。}

begin

data_Set:=‘SoftwareMicrosoft

WindowsCurrentVersionRun’;

{設(shè)置注冊(cè)表中相關(guān)的路徑}

ret0:=RegOpenKeyEx(HKEY_LOCAL_MACHINE, data_Set, 0, KEY_WRITE, lKey);

//打開注冊(cè)表中的相應(yīng)項(xiàng)

if (ret0<>ERROR_SUCCESS) then

Application.MessageBox(‘錯(cuò)誤0’,‘提示’,MB_OK);

len := Length(Trim(Edit2.text))+1;

filename := Trim(Edit2.text);

for i:=0 to Length(filename) do

if(filename[i]=‘’)then

len:=len+1;

ret1:=RegSetValueEx(lKey,PChar(title),0,REG_SZ,Pchar(filename),len);

//將相關(guān)的信息寫入注冊(cè)表。

if(ret1<>ERROR_SUCCESS) then

//判斷系統(tǒng)的相關(guān)注冊(cè)是否成功?

Application.MessageBox(‘錯(cuò)誤1’,‘提示’,MB_OK);

RegCloseKey(lKey);

//關(guān)閉注冊(cè)表中的相應(yīng)的項(xiàng)

end

else begin

WritePrivateProfileString(‘windows’,‘load’, PChar(filename),‘c:windowswin.ini’);

WritePrivateProfileString(‘windows’,‘run’, PChar(filename),‘c:windowswin.ini’);

end;

VerifyDlg.ShowModal;

{顯示對(duì)話框,提示操作者是否需要重新啟動(dòng)計(jì)算機(jī),以便驗(yàn)證程序的功能。}

end;

procedure TVerifyDlg.OKBtnClick(Sender: TObject);

{重新啟動(dòng)按鈕的功能代碼}

var

OsVerInfo:OSVERSIONINFO;

//保存系統(tǒng)版本信息的數(shù)據(jù)結(jié)構(gòu)

Begin

OsVerInfo.dwOSVersionInfoSize:=sizeof(OSVERSIONINFO);

GetVersionEx(OsVerInfo);

//取得系統(tǒng)的版本信息

if(OsVerInfo.dwPlatformId=VER_PLATFORM

_WIN32_WINDOWS) then

ExitWindowsEx(EWX_REBOOT,0);

//重新啟動(dòng)計(jì)算機(jī)

end;

共1 條記錄, 每頁顯示 10 條, 頁簽: [1]

Copyright © 2000 - 2009 曙海教育集團(tuán)
Powered By 曙海教育集團(tuán) Version 2.2
Processed in .03125 s, 2 queries.
主站蜘蛛池模板: 三级国产精品 | 国产成人精品视频免费 | 大学生高清一级毛片免费 | 国产精品久久久久乳精品爆 | 黄色视屏在线 | 日韩欧美在线观看综合网另类 | 免费看欧美一级特黄a毛片 免费看欧美一级特黄α大片 | 精品国模一区二区三区 | 久久久综合九色合综国产 | 72种姿势欧美久久久久大黄蕉 | 亚洲免费一级片 | 看看黄色一级片 | 一级免费毛片 | 亚洲一区二区中文字5566 | 四色婷婷婷婷色婷婷开心网 | 日本黄色美女视频 | 免费上床视频 | 在线精品国内视频秒播 | 国产日韩一区二区三区 | 午夜tv影院 | 国产一区二区网站 | 国产成人福利色视频 | 在线观看视频www | 亚洲性综合网 | 婷婷亚洲综合一区二区 | 日本高清在线不卡 | 性欧美视频在线观看 | 公妇乱淫日本免费观看 | 欧美a级黄色大片 | 国产日韩视频在线观看 | 92精品国产自产在线观看48页 | 亚洲日本人成网站在线观看 | 国产剧情毛片 | 亚洲国产午夜看片 | 亚洲免费网站 | 国产精品视频二区不卡 | 99亚洲精品高清一二区 | 成人精品免费视频 | 免费一看一级欧美 | 久久草国产| 免费a在线观看 |