2
在d出的窗口上 选择“监听程序”,点击左边的“+”图标,创建监听。
3
在接下来的窗口上选择监听名称,或者自己起一个监听名称,在点击下方“确定”按钮。
END
添加服务器数据库IP地址配置监听
1
点击“添加地址”按钮,填写好服务器主机ip地址以及端口号并及时保存。
END
配置服务名称
选择“服务名称”,创建一个服务名称,最好跟目标主机数据库服务名称一致。
点击下一步,选择TC/IP选项,再单击下一步。
填写好服务器数据库主机名,一般填写IP地址就可以了,再填写好端口:1521 。下一步的时候,填写好服务名,跟SID一致就可以了。
测试是否可以连通,点击“测试”按钮,更改进入数据库 *** 作的账户跟密码点击测试。
5
测试连接成功如下图,如果测试未成功,就按上面的步骤仔细检查看看哪里出问题了。一般查询服务器ip地址、端口、数据库用户名、密码、防火墙等等地方是否有问题。 自动化是从一个应用程序内部自动控制另一个应用程序的方法 例如下面的代码 procedure CreateNewWord;varWordObj: Variant;beginWordObj := CreateOleObject( Word Basic ); {此函数声明于ComObj单元}WordObj AppShow;WordObj FileNew;end;这段代码将会打开WORD 并自动建立一个新的文档(当然前提是你的机子上安装了WORD) 这看来很有趣 也是一种非常有用的功能 那么如何让我们的程序也拥有类似WORD等的自动化功能并能让其它任何语言开发的程序对我们的程序进行自动化呢用DELPHI来实现非常简单
这篇文章将会以实例形式一步步的来说明如何开发一个简单的自动化服务器
新建一个普通的应用程序 将工程保存为AutoSrv bpr 在主窗体上放一个Edit控件 并保存为MainForm pas 在这里我们打算给这个程序加上对窗口标题 窗体颜色 和Edit控件文本的自动化控制(当然这实现的功能很少 但对于讲解如何开发自动化服务器程序足够了) 在主窗口中加入如下代码:(注意:请自行将这些函数和过程的声明加入TForm 的public区)function TForm GetCaption: string;beginresult := Self Caption;end;
procedure TForm SetCaption(ACaption: string);beginSelf Caption := ACaption;end;
procedure TForm SetColor(AColor: TColor);beginSelf Color := AColor;end;
procedure TForm SetEditText(AText: string);beginSelf Edit Text := AText;end;然后我们来给这个程序加上自动化的功能 点击New Items按钮 在d出的New Items窗口中点击ActiveX选项卡 选择Automation Object点击OK按钮 在d出的Automation Object Wizard窗口中CoClass Name一项中输入MyAutoSrv Delphi就会自动生成一个AutoSrv_TLB pas文件(类库)和实现类库接口类的单元 将这个新的单元保存为AutoSrvClass pas.
现在这个程序已经成为一个自动化服务器了 我们再来为其加上自动化的接口函数:( )点击View >Type Libray菜单 在Type Library Editor选择IMyAutoSrv接口 点击New Property 选择其属性为Read|Write 并把其命名为Caption Type设定为BSTR ( )点击New Method 将其命名为SetColor 点击右边的Parameters选项卡 点击ADD为新添的接口函数添加一个参数 将参数名设为AColor 参数Type设为OLE_COLOR ( )再次点击New Method 将其命名为SetEditText 以上面的方法为其添加一个参数 将参数名设为AText 参数Type设为BSTR
最后添加上接口函数的实现代码就OK了:在AutoSrvClass pas的Uses部分添加上MainForm 并将其代码改为如下代码 unit AutoSrvClass;
{$WARN SYMBOL_PLATFORM OFF}
interface
usesComObj ActiveX AutoSrv_TLB StdVcl MainForm;
typeTMyAutoSrv = class(TAutoObject IMyAutoSrv)protectedfunction Get_Caption: WideString; safecall;procedure Set_Caption(const Value: WideString); safecall;procedure SetColor(AColor: OLE_COLOR); safecall;procedure SetEditText(const AText: WideString); safecall;
end;
implementation
uses ComServ;
function TMyAutoSrv Get_Caption: WideString;beginResult := Form GetCaption;end;
procedure TMyAutoSrv Set_Caption(const Value: WideString);beginForm SetCaption(Value);end;
procedure TMyAutoSrv SetColor(AColor: OLE_COLOR);beginForm SetColor(AColor);end;
procedure TMyAutoSrv SetEditText(const AText: WideString);beginForm SetEditText(AText);end;
initializationTAutoObjectFactory Create(ComServer TMyAutoSrv Class_MyAutoSrv ciMultiInstance tmApartment);end 运行这个程序一次 将会自动注册为自动化服务器 可以在注册表中的HKEY_CLASSES_ROOT主键下面找到其相关的注册信息
上面演示了如何开发一个自动化服务器 在这里我们将调用它 新建一个程序 添加一个Button 在其VAR区声明一个Variant变量: AutoSrv: variant再在Button 中添加如下代码 procedure TForm Button Click(Sender: TObject);beginAutoSrv := CreateOleObject( AutoSrv MyAutoSrv ); {这个字符串就是自动化服务器的工程名加上CoClass Name}Self Caption := AutoSrv Caption;AutoSrv Caption := HEHE ;AutoSrv SetColor(CLRed);AutoSrv SetEditText( HAHA );end;其中的CreateOleObject函数将会返回一个IDispatch类型的接口 正是IDispatch接口让我们的程序可以对自动化服务器接口的调用进行后期连接 比如我们在上面添加一句AutoSrv Hello 程序也能被编释通过 但在执行时就会出错 使用Variant在执行效率上会比直接使用接口声明要慢一些 运行并点击按钮 可以看到自动化服务程序被加载 并按我们的代码设置了窗体色和EDIT 中的字串 呵呵 是不是很简单啊
lishixinzhi/Article/program/Delphi/201311/24993不同的电脑你不会也是用127001在连接吧?
cs=socketsocket(socketAF_INET,socketSOCK_STREAM)
如果是一个局域网的话,可以是内部ip,比如1921681204(你的ip)
csconnect(("1921681204",8808))
如果是公网的话,要看公网ip,比如2223029256(随便写的)
csconnect(("2223029256",8808))
自己的电脑的话,127001和localhost都是指代本机器,但是在别的机器上就不适用了。网络问题
1
1确保网络的连接正常
如图,如果你的网络是多重网络,会导致网络障碍。导致无法进入网页。多重网络怎么解决请关注小编的经验“多重网络怎么解决”,这里就不具体讲。
2
2控制面板-网络和Internet-网络和共享中心
如图,点击控制面板-网络和Internet-网络和共享中心,然后点击如图的本地连接。
3
3属性-Internet协议-自动获取iP地址
如图,本地连接-属性-Internet协议,都选择自动获取,效果如下图。确保不是ip地址冲突,解决服务器未发送任何数据因此无法载入该网的问题。
4
4运行-cmd
如图,开始-运行-输入cmd。
5
5输入ping
如图,输入ping空格加网址,然后按enter,这里以百度网为例,查看该网站网络是否通畅,这时可以使用360断网急救箱。
6
6输入命令
如图,输入ipconfig /flushdns,然后回车,(ipconfig后有空格),刷新DNS缓存。
输入arp –d,然后回车,(arp后有空格),清空局域网IP对MAC地址的缓存。这时尝试能否上网。
END
浏览器问题
1
7Flash插件
如图,确保for IE的Flash插件安装,不然会导致服务器未发送任何数据因此无法载入该网。
2
8清除上网痕迹
如图,打开浏览器,工具-清除上网痕迹。浏览器缓存会导致无法上网。
END
网页修复
1
9杀毒软件-人工服务
如图,打开杀毒软件-人工服务。
2
10输入二级页面打不开
如图,输入打开二级页面打不开,然后点击立即修复。看是否解决服务器未发送任何数据因此无法载入该网的问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)