其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

DELPHI基础教程:动态链接库编程(二)[4]


发布日期:2022年10月31日
 
DELPHI基础教程:动态链接库编程(二)[4]

口令设置部分的实现代码为

procedure TFormSetButtonClick(Sender: TObject)

begin

PassWord := StrAlloc(

if SetPassWord(PassWord) = False then

MessageDlg(PassWord is not setmtInformation[mbOK]

end;

首先为口令字符串分配内存当口令设置窗体按Cancel按钮取消时显示相应的信息

口令检查部分的实现代码为

procedure TFormTestButtonClick(Sender: TObject)

begin

if PassWord = nil then

begin

MessageDlg(Set password first mtInformation [mbOK]

SetButtonSetFocus;

Exit;

end;

if GetPassword(PassWord) then

LabelCaption := You are Wellcome !

else

LabelCaption := SorryYou are InValid User;

end;

根据口令检查的结果在标签框中显示相应的信息

VB应用程序调用重用窗体

VB是微软公司极力推荐的一个可视化开发工具它虽然并不支持动态链接库的创建但可以调用标准的Windows API动态链接库和用其它语言编写的动态链接库为了验证所生成DLLs的普适性我们用VB开发了一个简单的程序来调用passformdll中储存的窗体

下面是VB程序的完整代码和Delphi程序的对应部分基本一致

Option Explicit

Declare Function GetPassWord Lib c:\dlls\passformdll (ByVal PassWord As String) As Integer

Declare Function SetPassWord Lib c:\dlls\passformdll (ByVal PassWord As String) As Integer

Dim PassWord As String *

Sub Check_Click ()

If PassWord = Then

MsgBox (Enter sample password first

SetPassSetFocus

Else

If GetPassWord(PassWord) Then

StatusLblCaption = You are Welcome!

Else

StatusLblCaption = SorryYou are Invalid User

End If

End If

End Sub

Sub SetPass_Click ()

If SetPassWord(PassWord) = Then

MsgBox (PassWord is not Set

End If

End Sub

有关VB编程的一些具体问题读者可参看有关的VB参考书

小结

本章我们讨论的是动态链接库编程许多可视化开发工具(如Visual Basic)不支持 DLLs的创建而Delphi在这里又有上乘的表现特别是窗体重用机制是Delphi对Windows下DLLs编程的一个重大改进在一般的DLLs编程中也体现了Delphi快捷方便的特点动态链接库是 Windows下程序组织的一种重要方式使用动态链接库可以极大地保护用户在不同开发工具不同时期所做的工作利用动态链接库用户可以逐步去构筑自己的程序模块库为今后的工作积累素材

返回目录DELPHI基础教程

编辑推荐

Java程序设计培训视频教程

JEE高级框架实战培训视频教程

Visual C++音频/视频技术开发与实战

Oracle索引技术

ORACLEG数据库开发优化指南

Java程序性能优化让你的Java程序更快更稳定

C嵌入式编程设计模式

Android游戏开发实践指南

[] [] [] []

               

上一篇:DELPHI基础教程:动态链接库编程(一)[1]

下一篇:DELPHI基础教程:动态链接库编程(二)[3]