vb 调用delphi写的dll
delphi中的DLL中的声明原码如下:
这里声明了输出性参数分别为数字与字符类型
library dll1;
uses
SysUtils,
Classes;
{$R *.res}
Function mymax(x, y: Integer; out jj: Integer; out abc: PChar): Integer; stdcall;
begin
jj := x * y;
abc := PChar(StrPas(abc) + '这是传出的');
if X > Y then
Result := X
else
Result := Y;
end;
exports mymax;
begin
end.
vb中的调用程序如下:
Private Declare Function mymax Lib "C:\lx\delphi\lx1\dll1.dll" (ByVal sj1 As Long, ByVal sj2 As Long, ByRef sj3 As Long, ByRef s1 As String) As Long
Private Sub Command1_Click()
Dim s_t As String
Text3.Text = ""
sj3_v = 0
s_t = "测试输入:"
Text3.Text = mymax(Val(Text2.Text), Val(Text1.Text), sj3_v, s_t)
Print (Str(sj3_v) + s_t)
End Sub
相关文档:
前段时间因为项目需要,获取指定文件的图标,绕了很多弯子,现在弄出来了,跟大家共享下.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,ShellAPI, ExtCtrls;
type
TForm1 = class(TForm)
l ......
var
L,i:integer;
Ustr,str:string;
p:char;
begin
str:='123456789ABCDEFG'
L:=length(str);
for i:=1 to l do begin
p:=str[i];
str[i]:=str[l-(i-1)];
......
Delphi编写系统服务二:系统服务和桌面程序的区别 收藏
Windows 2000/XP/2003等支持一种叫做“系统服务程序”的进程,系统服务和桌面程序的区别是:
系统服务不用登陆系统即可运行;
系统服务是运行在System Idle Process/System/smss/winlogon/services下的,而桌面程序是运行在Explorer下的;
......
delphi中Webbrowser的使用
1.获得网页中变量值
htm中<script> var currID=123</script>
程序中可以这么调用 id := Form1.WebBrowser1.OleObject.Document.script.currID
值得说明的是,变量可以是javascript定义的,也可以是vbs ......