请教关于"网络路径"的问题: 为什么有些"网络路径"用文件对话框可以看到并打开,但用 Dir 函数却检测不到呢??
关于"网络路径"的问题: 为什么有些"网络路径"用文件对话框可以看到并打开,但用 Dir 函数却检测不到这个网络路径呢??
就只有这点分了.
问题点数:0、回复次数:21Top
1 楼DooDu(杜霖:I want,I can(开关拉))回复于 2005-06-03 10:02:23 得分 0
提示的是什么?Top
2 楼Begin2008(重头再来)回复于 2005-06-03 10:54:49 得分 0
提示有两种情况:
1. 提示无效的路径或文件名
2.另一种情况是没有提示, 但执行 Dir(sNetPathFile,vbNormal) = ''Top
3 楼DooDu(杜霖:I want,I can(开关拉))回复于 2005-06-03 11:04:48 得分 0
如果先用net use呢?Top
4 楼Begin2008(重头再来)回复于 2005-06-03 13:43:07 得分 0
To DooDu(杜霖:I want,I can.(MmMVP马甲))
不知道怎么使用 net useTop
5 楼DawnPine(拂晓的松)回复于 2005-06-03 15:34:36 得分 0
net use * \\ip(or PC_Name)\SharedResourceName "password" /user:username
例如:
net use * \\192.168.1.1\d "" /user:administratorTop
6 楼Begin2008(重头再来)回复于 2005-06-05 12:12:38 得分 0
To DawnPine(拂晓的松) :
如果每次检测网络路径都要使用"用户名"和"密码",这个实在是不现实.Top
7 楼lzheng2001(1加1)回复于 2005-06-05 13:11:51 得分 0
如果你已经有权限访问这个路径就不用 net use 了,问题是你是否有权限访问这个路径?Top
8 楼Begin2008(重头再来)回复于 2005-06-05 14:05:13 得分 0
To lzheng2001(1加1=0):
用户可以用文件对话框找到这个路径,并且可以访问和存储文件到该路径,这就应该表示用户有权限访问这个路径.
Top
9 楼lzheng2001(1加1)回复于 2005-06-05 15:18:46 得分 0
检查变量sNetPathFile的值是否正确,监视一下这个变量的值吧
正常是的值是
\\计算机名\共享目录名Top
10 楼SupermanKing(人类)回复于 2005-06-05 17:44:00 得分 0
乱七又八糟
Dir sNetPathFile,vbNormal 是不会查询出代其它属性的文件的
就像DOS下面
DIR /W 和 Dir /A/W 查出来的结果不一样是一样的道理
不论你是在本地或是网络地址,没有 vbHidden 参数都是查询不了代
隐藏属性的文件的。
你运行看看下面的代码有什么不同就知道了。
Private Sub Form_Load()
MsgBox Dir("C:\boot.ini", vbNormal)
MsgBox Dir("C:\boot.ini", vbHidden + vbReadOnly + vbSystem)
End SubTop
11 楼SupermanKing(人类)回复于 2005-06-05 17:58:45 得分 0
还有,网络共享地址本来就会存在一个安全及权限问题。
除非你可以统一你网络的权限设置。比如Win2000来说:
所有的用户都使用Administrator不设置密码或密码一样
的方式登陆系统,然后访问共享目录就不用考虑什么权不
权限。不然比如你是以User001用户登陆系统,密码是123
主机A,是以User002用户登陆系统,密码是234。主机B,
是以User003用户登陆系统,密码是345,那么每台主机都
共享一个名为Guest的目录,这时要想不考虑登陆权限问题
就只能每台电脑都在本地建立对方电脑的用户信息,然后
将用户信息添加到共享目录中。要不就是使用域服务器进
行配置了。其实作那么多的工作还不如使用Net 命令
Top
12 楼DawnPine(拂晓的松)回复于 2005-06-06 07:49:08 得分 0
如果已经有权限了
用户名和密码这2个参数是可以省略的Top
13 楼wumylove1234(毁于随)回复于 2005-06-06 09:14:52 得分 0
这种权限的问题最好是在对方机器写服务器程序吧.Top
14 楼DawnPine(拂晓的松)回复于 2005-06-07 07:43:36 得分 0
楼主呢?
搞定没?Top
15 楼Begin2008(重头再来)回复于 2005-06-09 09:44:40 得分 0
问题是这样的:
我的程序在用户那里读不到网络路径(其他用户那里又可以), 我就就更用户的管理员说这是网络权限问题.
用户的网络管理员立即在资源管理器里打开该网络路径,并向该网络路径拷贝和删除文件,然后反问我一句:"看清楚了没有, 如果是权限问题,为什么我可以拷贝和删除呢,这分明是你的程序有问题吗?"
我亚口无言,我当场在用户那里安装了一个VB, 经过调试,发现 Dir 函数根本检测不到这个网络路径,我现在束手无策.
哎,为了写点小软件糊口,经常被客户吊得象孙子.
Top
16 楼Begin2008(重头再来)回复于 2005-06-09 09:48:19 得分 0
不过,我还没有测试SupermanKing(人类)所说的办法,因为那家客户在外地,我只有下一次再过去测试一下各位所说的办法.Top
17 楼lzheng2001(1加1)回复于 2005-06-09 10:34:14 得分 0
我用dir可以查看网络路径呀! 有可能是楼主的sNetPathFile的值有问题
正确格式 \\计算机名\共享路径名\
Dir(sNetPathFile,vbNormal)Top
18 楼Begin2008(重头再来)回复于 2005-06-09 14:47:52 得分 0
To lzheng2001(1加1=0) :
有的用户那里没问题, 有些用户那里就用dir看不到网络路径了.Top
19 楼Begin2008(重头再来)回复于 2005-06-09 14:48:56 得分 0
sNetPathFile的值应该是没有问题的Top
20 楼lzheng2001(1加1)回复于 2005-06-09 16:12:17 得分 0
楼上有没有试守在dir() 不成功的电脑上直接在地址栏上输入网络地址?
如果dir不成功,在地址栏上输入地址也不能浏览的话,就应该不关程序的事.Top
21 楼bboos(梧桐:只灌水不谈技术)回复于 2005-06-09 16:43:14 得分 0
1,叫你的客户开启 guest 用户,省去权限烦恼。
2,有些机器解析不了名字,把 \\计算机名\共享路径名\
改为:\\IP\共享路径名\
3,如果共享连接主机(比如连不到sql server)用记事本打开 hosts文件,添加该主机ip和名称.Top




