如何在局域网上设置命名管道的客户端机器名(100分)

  • 主题发起人 主题发起人 张无忌
  • 开始时间 开始时间

张无忌

Unregistered / Unconfirmed
GUEST, unregistred user!
我在一个由交换机组成的一个网络中设置命名管道服务
服务器部分我已做好了,但是在客户端部分出了问题,客户端部分的连接命名管道名称的
'//[机器名]/Pipe/'哪个机器名是如何设置的,是IP还是机器名称了,我用2种方式
都连接不上啊,在本机上'.',和IP,以及机器名称都可以连的上,
 
还有能否用事件和命名管道收到数据关联?
 
客户端你是用CreateNamedPipe吗?如果是的话,就不对了,CreateNamedPipe是创建pipe server的
他只能用 //./pipe/pipe名字 ,因为不能在别的机器创建服务器端
客户端要用CreateFile创建一个句柄,就可以用 //别的机器/pipe/pipe名字
 
简单的,还可以用CallNamedPipe
 
如果api你都用的对,请检查安全属性,客户端是否需要先登陆服务器
 
客户端要用CreateFile创建一个句柄,就可以用 //别的机器/pipe/pipe名字
我试了,服务器我是用你说的方式创建的,但是客户端在别的机器上总是连接不上啊
我的网络是由交换机组成的
我在本机上调试成功,没有什么问题,
 
交换机,如果不是路由器的话,那是同一个局域网
你的服务器和客户端都安装了哪几个协议?
客户端,开始菜单/运行: //服务器 可以打开服务器吗?
如果要输入密码,先输入密码,如果不能打开
那么ping ip地址 可以通吗?可以通的话,那么在lmhosts加入ip地址和机器名
然后使用//服务器/pipe/......
或者直接使用ip(win98/nt/2000才可以,95不行)
-----------------------------------
网络连接没问题的话
h:=CreateFile..........
if h=INVALID_HANDLE_VALUE then
RaiseLastWin32Error;
可以看出实际的错误信息是什么
 
我在客户机上用IP来处理,结果还是不行,是不是我装了防火墙的原因了?
我再试试看。
 
还有你说的在那输入密码了?
是不是先用网上邻居找到这台机器再运行客户端程序了?
 
先用网上邻居找到这台机器,或者直接在 开始菜单/运行 输入 //计算机 打开这个计算机
如果是nt就要输入密码,连接了之后,再运行你的程序,如果成功,说明需要安全方面的东西
 
接受答案了.
 
后退
顶部