如题
library order_import;
uses
SysUtils,
Classes,
windows,
ActiveX,
kfb_model in 'kfb_model.pas' {frmkfb_model};function kfb_model(psconn:pchar;pinut:PChar):PChar;stdcall;
begin
if not FileExists('xml.udl') and (psconn='') then
begin
messagebox(0,'数据库配置文件 kfb.udl 不存在','错误',16);
Result:=PChar(0);
exit;
end; Coinitialize(nil);
frmkfb_model:=Tfrmkfb_model.Create(frmkfb_model);
frmkfb_model.con1.Connected:=false;
frmkfb_model.con1.ConnectionString:=psconn;
frmkfb_model.con1.Connected:=true;
frmkfb_model.sinput:=pinut;
frmkfb_model.ShowModal;
Result:= frmkfb_model.sid;
CoUninitialize;
end;
{$R *.res}
exports
kfb_model;begin
end.
---------------------------------------------
procedure Tfrmkfb_model.dbedtxhDblClick(Sender: TObject);
begin
if sinput='启用' then
begin
if Application.MessageBox('您真的要启用此编号吗','提示',MB_YESNO)=IDYES then
begin
sid:=PChar(Trim(FloatToStr(qryinput.FieldValues['id'])));
frmkfb_model.Close;
end;
end;end;现在主要是通过双击表单上一列获取数据表中的id值,将这个id值作为函数的返回值传递到VFP程序中,传递已经是可以用了,但是退出VFP做的程序后出现内存不能READ的错误,VFP应该没什么问题。
library order_import;
uses
SysUtils,
Classes,
windows,
ActiveX,
kfb_model in 'kfb_model.pas' {frmkfb_model};function kfb_model(psconn:pchar;pinut:PChar):PChar;stdcall;
begin
if not FileExists('xml.udl') and (psconn='') then
begin
messagebox(0,'数据库配置文件 kfb.udl 不存在','错误',16);
Result:=PChar(0);
exit;
end; Coinitialize(nil);
frmkfb_model:=Tfrmkfb_model.Create(frmkfb_model);
frmkfb_model.con1.Connected:=false;
frmkfb_model.con1.ConnectionString:=psconn;
frmkfb_model.con1.Connected:=true;
frmkfb_model.sinput:=pinut;
frmkfb_model.ShowModal;
Result:= frmkfb_model.sid;
CoUninitialize;
end;
{$R *.res}
exports
kfb_model;begin
end.
---------------------------------------------
procedure Tfrmkfb_model.dbedtxhDblClick(Sender: TObject);
begin
if sinput='启用' then
begin
if Application.MessageBox('您真的要启用此编号吗','提示',MB_YESNO)=IDYES then
begin
sid:=PChar(Trim(FloatToStr(qryinput.FieldValues['id'])));
frmkfb_model.Close;
end;
end;end;现在主要是通过双击表单上一列获取数据表中的id值,将这个id值作为函数的返回值传递到VFP程序中,传递已经是可以用了,但是退出VFP做的程序后出现内存不能READ的错误,VFP应该没什么问题。
function FormatMessage(dwFlags: DWORD; lpSource: Pointer; dwMessageId: DWORD; dwLanguageId: DWORD;
lpBuffer: PChar; nSize: DWORD; Arguments: Pointer): DWORD; stdcall;
大哥,说清楚点吧,我学delphi的时间都没到一个月