我用DELPHI 6 写了一个DCOM 在同一台机子上调用DCOM 提供的任何接口都没有问题,但是当我用另外一台电脑运行客户端程序时,客户端程序就运行出错?
我的客户端程序的调用代码如下:
不知是错误出在哪里?请高手指教一下!下谢了。。
unit Main;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleServer, ProCom_TLB;type
TForm1 = class(TForm)
TestCom1: TTestCom;
EditName: TEdit;
Button1: TButton;
Edit2: TEdit;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var ResT:WideString;
begin
Try
ResT:=TestCom1.GetName(EditName.Text);
Edit2.Text:= ResT;
Except
Application.MessageBox('系统调用Com出错!','提示',mb_ok);
TestCom1.Free;
End;
end;end.
我的客户端程序的调用代码如下:
不知是错误出在哪里?请高手指教一下!下谢了。。
unit Main;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleServer, ProCom_TLB;type
TForm1 = class(TForm)
TestCom1: TTestCom;
EditName: TEdit;
Button1: TButton;
Edit2: TEdit;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var ResT:WideString;
begin
Try
ResT:=TestCom1.GetName(EditName.Text);
Edit2.Text:= ResT;
Except
Application.MessageBox('系统调用Com出错!','提示',mb_ok);
TestCom1.Free;
End;
end;end.
2,看一下DCOM配置没有;
3,把你的DCOM在客户端运行一次;///
你的代码中好像没与指定服务器的IP
找到当前服务器运行程序名配置一下它的权限让客户机可以访问。
同样在客户机上也配置下方法一样;
这样在客户机上运行程序就可以啦!
我自己用的测试服务器是WIN 2000、客户端也是 WIN 2000。1、在服务器上怎么设置?
2、在客户机上怎么设置?
3、在程序里面怎么指定服务器的IP?()
4、在程序里面需不需要指定具体的用户连接Server?()大家一定要帮帮忙呀。如果分不够,我还可以继续加。