亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 025.htm

?? delphi教程
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<p>finally</p>
<p>SetPasswordForm.Free;</p>
<p>end;</p>
<p>end;</p>
<font face="宋體" lang="ZH-CN"><p>  口令成功設置,把</font>PassWord<font
face="宋體" lang="ZH-CN">的值拷貝給</font>PWord<font face="宋體" lang="ZH-CN">輸出,并返回</font>True<font
face="宋體" lang="ZH-CN">。應該注意的是由于</font> PWord<font face="宋體"
lang="ZH-CN">本身就是指針類型,指向一個字符串的地址,因而雖然</font>PWord<font
face="宋體" lang="ZH-CN">用于輸出,但在參數表中仍為傳值參數,而不是傳址參數。另外調用函數</font>StrCopy<font
face="宋體" lang="ZH-CN">,要求</font>PWord<font face="宋體" lang="ZH-CN">在傳入前已分配內存,否則會導致一個一般保護錯。</font>try...finally<font
face="宋體" lang="ZH-CN">用于保護窗口所占用內存資源在任何情況下都能正常釋放,讀者可參看第十二章。</p>
<p>  在口令設置窗口中,為了確保用戶記住了設置的口令,在用戶輸入并按回車鍵后,要求用戶再次輸入進行確認。只有用戶重新輸入的字符串與原設置口令相同,口令設置窗口才能正常關閉</font>
<font face="宋體" lang="ZH-CN">。否則將原設置口令清空,要求用戶再次輸入。以上功能的實現在編輯框的</font>OnKeyPress<font
face="宋體" lang="ZH-CN">事件處理過程中?!?lt;/p>
</font><p>procedure TSetPassWordForm.Edit1KeyPress(Sender: TObject; var Key: Char);</p>
<p>begin</p>
<p>if Edit1.text = '' then Exit;</p>
<p>if Key = #13 then</p>
<p>begin</p>
<p>if Verified then</p>
<p>if StrPas(PassWord) = Edit1.text then</p>
<p>begin</p>
<p>OKBtn.Enabled := True;</p>
<p>Edit1.Enabled := False;</p>
<p>OKBtn.SetFocus;</p>
<p>end</p>
<p>else</p>
<p>begin</p>
<p>Verified := False;</p>
<p>MessageDlg('PassWord is InValid.',mtWarning,[mbOK],0);</p>
<p>Edit1.text := '';</p>
<p>PassWord := '';</p>
<p>Label1.Caption := 'Please Input PassWord:';</p>
<p>end</p>
<p>else</p>
<p>begin</p>
<p>Verified := True;</p>
<p>StrPCopy(PassWord,Edit1.text);</p>
<p>Edit1.text := '';</p>
<p>Label1.caption := 'Please Verify PassWord:';</p>
<p>end;</p>
<p>Key := #0;</p>
<p>end;</p>
<p>end;</p>
<font face="宋體" lang="ZH-CN"><p>  口令檢查窗口的實現相對簡單,只定義了一個輸出函數</font>GetPassWord<font
face="宋體" lang="ZH-CN">,用于生成口令檢查窗口并返回口令檢查的結果?!?lt;/p>
</font><p>function GetPassword(Password: PChar): Boolean;</p>
<p>var</p>
<p>GetPasswordForm: TGetPasswordForm;</p>
<p>begin</p>
<p>Result := False;</p>
<p>GetPasswordForm := TGetPasswordForm.Create(Application);</p>
<p>try</p>
<p>with GetPasswordForm do</p>
<p>if ShowModal = mrOK then</p>
<p>if UpperCase(Edit1.Text) &lt;&gt; StrPas(StrUpper(Password)) then</p>
<p>MessageDlg('Invalid Password', mtWarning, [mbOK], 0)</p>
<p>else</p>
<p>Result := True;</p>
<p>finally</p>
<p>PasswordForm.Free;</p>
<p>end;</p>
<p>end;</p>
<font face="宋體" lang="ZH-CN"><p>  </font>PassWord<font face="宋體" lang="ZH-CN">為輸入的參數,不能為空,由調用以上函數的程序負責維護。</p>
<p>  窗口中用戶輸入口令時回顯在屏幕上的字符由編輯框的</font>PassWordChar<font
face="宋體" lang="ZH-CN">屬性確定。</p>
<p>  在</font>DLLs<font face="宋體" lang="ZH-CN">的工程文件中,把兩個輸出函數寫到</font>exports<font
face="宋體" lang="ZH-CN">子句中?!?lt;/p>
</font><p>library PassForm; </p>
<p>uses</p>
<p>GetPass in 'GETPASS.PAS' {PasswordForm},</p>
<p>Setpass in 'SETPASS.PAS' {SetPassWordForm}; </p>
<p>exports</p>
<p>GetPassword,SetPassWord; </p>
<p>begin</p>
<p>end. </p>
<p>10.4.2.2 Delphi<font face="宋體" lang="ZH-CN">應用程序調用重用窗體 </p>
<p>  在</font>Delphi<font face="宋體" lang="ZH-CN">應用程序中調用重用窗體,首先必須包含</font>passform.dll<font
face="宋體" lang="ZH-CN">的兩個輸出函數: </p>
</font><p>function GetPassword(Password: PChar): Boolean;</p>
<p>far; external 'c:\dlls\PassForm';</p>
<p>function SetPassword(PassWord: PChar): Boolean;</p>
<p>far; external 'c:\dlls\PassForm';</p>
<font face="宋體" lang="ZH-CN"><p>  這位于程序單元的</font>implementation<font
face="宋體" lang="ZH-CN">部分。</font></p>
<font face="宋體" lang="ZH-CN"><p>口令設置部分的實現代碼為: </p>
</font><p>procedure TForm1.SetButtonClick(Sender: TObject);</p>
<p>begin</p>
<p>PassWord := StrAlloc(40);</p>
<p>if SetPassWord(PassWord) = False then</p>
<p>MessageDlg('PassWord is not set',mtInformation,[mbOK],0); </p>
<p>end;</p>
<font face="宋體" lang="ZH-CN"><p>  首先為口令字符串分配內存。當口令設置窗體按</font>Cancel<font
face="宋體" lang="ZH-CN">按鈕取消時,顯示相應的信息。</p>
<p>  口令檢查部分的實現代碼為: </p>
</font><p>procedure TForm1.TestButtonClick(Sender: TObject);</p>
<p>begin</p>
<p>if PassWord = nil then</p>
<p>begin</p>
<p>MessageDlg('Set password first', mtInformation, [mbOK], 0);</p>
<p>SetButton.SetFocus;</p>
<p>Exit;</p>
<p>end;</p>
<p>if GetPassword(PassWord) then</p>
<p>Label1.Caption := 'You are Wellcome !'</p>
<p>else</p>
<p>Label1.Caption := 'Sorry,You are InValid User.';</p>
<p>end;</p>
<font face="宋體" lang="ZH-CN"><p>  根據口令檢查的結果,在標簽框中顯示相應的信息?!?lt;/p>
</font><p>10.4.2.3 VB<font face="宋體" lang="ZH-CN">應用程序調用重用窗體 </p>
<p>  </font>VB<font face="宋體" lang="ZH-CN">是微軟公司極力推薦的一個可視化開發工具。它雖然并不支持動態鏈接庫的創建,但可以調用標準的</font>Windows
API<font face="宋體" lang="ZH-CN">動態鏈接庫和用其它語言編寫的動態鏈接庫。為了驗證所生成</font>DLLs<font
face="宋體" lang="ZH-CN">的普適性,我們用</font>VB<font face="宋體"
lang="ZH-CN">開發了一個簡單的程序來調用</font>passform.dll<font face="宋體"
lang="ZH-CN">中儲存的窗體。</font></p>
<font face="宋體" lang="ZH-CN"><p>下面是</font>VB<font face="宋體" lang="ZH-CN">程序的完整代碼,和</font>Delphi<font
face="宋體" lang="ZH-CN">程序的對應部分基本一致?!?lt;/p>
</font><p>Option Explicit</p>
<p>Declare Function GetPassWord Lib &quot;c:\dlls\passform.dll&quot; (ByVal PassWord As
String) As Integer</p>
<p>Declare Function SetPassWord Lib &quot;c:\dlls\passform.dll&quot; (ByVal PassWord As
String) As Integer </p>
<p>Dim PassWord As String * 40</p>
<p>Sub Check_Click ()</p>
<p>If PassWord = &quot;&quot; Then</p>
<p>MsgBox (&quot;Enter sample password first&quot;)</p>
<p>SetPass.SetFocus</p>
<p>Else</p>
<p>If GetPassWord(PassWord) Then</p>
<p>StatusLbl.Caption = &quot;You are Welcome!&quot;</p>
<p>Else</p>
<p>StatusLbl.Caption = &quot;Sorry,You are Invalid User.&quot;</p>
<p>End If</p>
<p>End If</p>
<p>End Sub</p>
<p>Sub SetPass_Click ()</p>
<p>If SetPassWord(PassWord) = 0 Then</p>
<p>MsgBox (&quot;PassWord is not Set.&quot;)</p>
<p>End If</p>
<p>End Sub</p>
<font face="宋體" lang="ZH-CN"><p>  有關</font>VB<font face="宋體" lang="ZH-CN">編程的一些具體問題,讀者可參看有關的</font>VB<font
face="宋體" lang="ZH-CN">參考書?!?lt;/p>
</font><p>10.4.3 <font face="宋體" lang="ZH-CN">小結 </p>
<p>  本章我們討論的是動態鏈接庫編程。許多可視化開發工具(如</font>Visual
Basic<font face="宋體" lang="ZH-CN">)不支持</font> DLLs<font face="宋體"
lang="ZH-CN">的創建,而</font>Delphi<font face="宋體" lang="ZH-CN">在這里又有上乘的表現。特別是窗體重用機制是</font>Delphi<font
face="宋體" lang="ZH-CN">對</font>Windows<font face="宋體" lang="ZH-CN">下</font>DLLs<font
face="宋體" lang="ZH-CN">編程的一個重大改進。在一般的</font>DLLs<font
face="宋體" lang="ZH-CN">編程中也體現了</font>Delphi<font face="宋體"
lang="ZH-CN">快捷、方便的特點。動態鏈接庫是</font> Windows<font
face="宋體" lang="ZH-CN">下程序組織的一種重要方式,使用動態鏈接庫可以極大地保護用戶在不同開發工具、不同時期所做的工作。利用動態鏈接庫,用戶可以逐步去構筑自己的程序模塊庫,為今后的工作積累素材。</font></p>
<font face="宋體" lang="ZH-CN"><p> </font></p>
<BR>
<hr color="#EE9B73" size="1" width="94%">

</TD>
<TD CLASS="tt3" VALIGN="bottom" width="8%"  bgcolor="#e0e0e0"><strong><A HREF="026.htm"><FONT style="FONT-SIZE: 9pt">后一頁</font></A><BR>
<A HREF="024.htm"><FONT style="FONT-SIZE: 9pt">前一頁</font></A><BR>

<A HREF="index.html"><FONT style="FONT-SIZE: 9pt">回目錄</font></A><BR>
<A HREF="../../../../index.htm"><FONT style="FONT-SIZE: 9pt">回首頁</font></A><BR>
</strong>
</TD>
</TR>
</table>
</BODY></HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区国产| 日本女优在线视频一区二区| 一区二区免费在线| 国产在线视频一区二区| 成人午夜私人影院| 欧美日韩成人综合在线一区二区| 337p粉嫩大胆噜噜噜噜噜91av| 国产精品视频在线看| 天堂久久一区二区三区| 成人小视频在线| 国产精品久久久久久久久动漫| 国产精品美女一区二区| 麻豆一区二区三| 欧美性做爰猛烈叫床潮| 欧美国产综合一区二区| 日本欧美大码aⅴ在线播放| 国产精品一级在线| 在线不卡免费欧美| **欧美大码日韩| 裸体一区二区三区| 欧美视频在线播放| 国产精品成人一区二区艾草| 国产一区二区三区观看| 日韩亚洲国产中文字幕欧美| 一区二区三区小说| 99在线精品观看| 自拍偷拍欧美激情| 99热国产精品| 亚洲蜜臀av乱码久久精品 | 粉嫩高潮美女一区二区三区| fc2成人免费人成在线观看播放 | 国产拍欧美日韩视频二区| 日本道在线观看一区二区| 久久久www成人免费毛片麻豆| 亚洲午夜精品在线| 中文一区在线播放| 成人黄动漫网站免费app| 国产日韩欧美一区二区三区乱码 | 奇米精品一区二区三区在线观看 | 日韩欧美国产综合在线一区二区三区 | 日韩欧美二区三区| 亚洲综合在线电影| 日本伦理一区二区| 亚洲一区二区五区| 欧美一级高清片| 久久99日本精品| 国产亚洲精品资源在线26u| 91麻豆精品国产自产在线观看一区 | 亚洲午夜日本在线观看| 欧美妇女性影城| 奇米四色…亚洲| 欧美大片一区二区三区| 日韩高清电影一区| 久久在线观看免费| 99久久综合精品| 亚洲免费资源在线播放| 欧美怡红院视频| 蜜桃视频在线观看一区| 欧美极品另类videosde| 欧美综合色免费| 久久成人免费网站| 中文字幕亚洲精品在线观看| 色婷婷亚洲精品| 男人的j进女人的j一区| 国产欧美精品一区二区色综合| 色综合 综合色| 国内精品免费在线观看| 亚洲视频在线一区观看| 精品国产123| 欧美日韩国产成人在线免费| 国产一区久久久| 亚洲一卡二卡三卡四卡| 国产日韩三级在线| 欧美日韩大陆一区二区| 欧美美女黄视频| 91在线视频播放地址| 另类小说图片综合网| 亚洲黄色免费电影| 日本一区二区在线不卡| 日韩视频123| 欧美日韩国产不卡| 欧美午夜免费电影| 成人精品免费看| 国产精品69久久久久水密桃| 久久精品国产在热久久| 亚洲一线二线三线视频| 国产精品久久久久影院色老大| 精品福利在线导航| 亚洲乱码国产乱码精品精小说 | 日韩欧美一区二区久久婷婷| 色老汉一区二区三区| 99久久精品免费精品国产| 91麻豆国产精品久久| 精品国产精品一区二区夜夜嗨| 在线不卡欧美精品一区二区三区| 色屁屁一区二区| 欧美艳星brazzers| 欧美日韩在线播放一区| 91色.com| 欧美日韩视频一区二区| 在线观看视频91| 欧美日韩大陆在线| 日韩一级二级三级| 久久久久久久久久久久久久久99| 精品国产免费人成电影在线观看四季| 欧美色涩在线第一页| 欧洲一区在线电影| 欧美日韩国产综合草草| 69av一区二区三区| 国产网站一区二区| 综合激情成人伊人| 日本不卡视频一二三区| 国产一区二区三区四| 99久久er热在这里只有精品66| 色婷婷综合久久久久中文| 欧美成人福利视频| 国产精品美女久久久久aⅴ国产馆| 国产三级一区二区三区| 尤物在线观看一区| 国产在线麻豆精品观看| 99久久精品国产观看| 日韩一级二级三级| 亚洲女女做受ⅹxx高潮| 美女一区二区在线观看| 91麻豆免费视频| 久久久久免费观看| 日日摸夜夜添夜夜添亚洲女人| 风间由美一区二区av101| 欧美视频在线播放| ●精品国产综合乱码久久久久| 美国欧美日韩国产在线播放| 色视频成人在线观看免| 国产欧美一区二区精品久导航| 婷婷中文字幕一区三区| 91在线播放网址| 国产精品嫩草影院com| 久久成人麻豆午夜电影| 欧美精品色一区二区三区| 国产精品久久久久天堂| 久久 天天综合| 欧美一区二区三区播放老司机| 亚洲人成小说网站色在线| 国产黄色成人av| 精品久久99ma| 国产资源精品在线观看| 欧美高清www午色夜在线视频| 尤物视频一区二区| 日韩免费视频线观看| 麻豆视频一区二区| 欧美成人一区二区三区| 美女爽到高潮91| 久久综合色综合88| 激情综合色综合久久| 久久久亚洲午夜电影| 成人a区在线观看| 亚洲欧洲美洲综合色网| 成人免费看视频| 亚洲一区在线观看免费| 欧美日本国产一区| 国产一区二区三区在线看麻豆| 久久精品亚洲乱码伦伦中文| 成人精品免费视频| 一区二区三区不卡视频在线观看| 在线精品视频免费观看| 亚洲超碰97人人做人人爱| 欧美电影免费观看高清完整版在线观看| 免费人成网站在线观看欧美高清| 精品国产乱码久久久久久夜甘婷婷 | 亚洲精品亚洲人成人网| 欧美高清精品3d| 成人免费观看视频| 日韩在线播放一区二区| 国产视频不卡一区| 欧美天天综合网| 国产精品中文字幕欧美| 一区二区三区四区中文字幕| 国产午夜精品理论片a级大结局| 91视视频在线观看入口直接观看www| 亚洲成人av电影在线| 久久精品欧美一区二区三区不卡| 色婷婷激情综合| 高清不卡一区二区| 蜜乳av一区二区| 自拍偷拍亚洲综合| xnxx国产精品| 91精品欧美一区二区三区综合在| 国产成人在线影院| 免费xxxx性欧美18vr| 亚洲永久免费视频| 亚洲欧美在线视频| 国产精品伦理在线| 久久久高清一区二区三区| 51精品久久久久久久蜜臀| 日本乱人伦一区| 91小视频免费看| 色成人在线视频| 一本一本大道香蕉久在线精品| 波多野洁衣一区| 97精品久久久久中文字幕| 91丨九色丨国产丨porny|