找回密码
 加入
搜索
查看: 9802|回复: 15

[AU3基础] 关于判断共享路径是否存在/能否访问的方法

 火.. [复制链接]
发表于 2012-11-3 10:21:39 | 显示全部楼层 |阅读模式
如果需判断\\192.168.1.100\test目录是否存在/能否访问,而访问该共享目录需使用帐号test,密码:123456,我目前的思路是把共享路径映射为盘符,再使用fileexists判断映射盘是否存在来实现,如:
$IPAddress = "192.168.1.100"
$Delete_drivey = 'net use /delete y:'
$Add_drivey = 'net use y: \\' & $IPAddress & '\test "123456" /user:"test"'
Runwait($Delete_drivey,@SystemDir,@SW_HIDE)
Runwait($Add_drivey,@SystemDir,@SW_HIDE)
If FileExists("y:") Then
        MsgBox(0,"","Connect OK")
        Runwait($Delete_drivey,@SystemDir,@SW_HIDE)
Else
        MsgBox(48,"Error","Connect fail.")
EndIf
请问各位有没有其它的方法或思路呢?
发表于 2012-11-4 00:18:18 | 显示全部楼层
本帖最后由 netegg 于 2012-11-4 01:01 编辑

_Net_Share_ConnectionEnum

#Include <WinAPIEx.au3>
_WinAPI_IsPathShared
 楼主| 发表于 2012-11-5 17:57:00 | 显示全部楼层
回复 2# sliqi

谢谢指导,AU3现成的函数确实很不错
 楼主| 发表于 2012-11-5 18:16:58 | 显示全部楼层
回复 3# netegg

谢谢netegg元老的指导, _Net_Share_ConnectionEnum对于我目前的情况不太适用(共享路径需验证用户名和密码),而_WinAPI_IsPathShared函数在我的Autoit帮助文档(3.3.9.5)中未找到,请问netegg元老使用什么版本有这个函数呢?
发表于 2012-11-5 18:52:50 | 显示全部楼层
回复 7# fuinei

看winapiex的版本 3.8的
 楼主| 发表于 2012-11-6 12:20:19 | 显示全部楼层
回复 8# netegg
谢谢netegg元老的回复,但目前自动更新到的版本3.3.9.4中winapiex版本只是3.7,请问winapiex 3.8是否需要单独下载呢?
发表于 2012-11-6 13:11:05 | 显示全部楼层
回复 9# fuinei
exe的帮助里带的winapiex是3.8的
 楼主| 发表于 2012-11-6 14:56:48 | 显示全部楼层
回复 10# netegg

请问netegg元老exe的帮助指的是什么呢?
我在论坛中搜索了netegg元老的autoit3udf.exe,附件中下载的winapiex.au3版本为3.6
发表于 2012-11-6 15:17:20 | 显示全部楼层
回复 11# fuinei
那个版本号没改,函数库是3.8的
 楼主| 发表于 2012-11-6 16:07:34 | 显示全部楼层
回复 12# netegg

谢谢提醒,autoit3udf.exe中下载的winapiex.au3有函数_WinAPI_IsPathShared,但测试时有报错,测试代码如下:
#include<WinAPIEx.au3>
$Result = _WinAPI_IsPathShared("\\192.168.1.100\test")
MsgBox("","",$Result)
报错信息如下:
"F:\autoit3\Include\WinAPIEx.au3" (29242) : ==> :
If Not __DLL('ntshrui.dll') Then
If Not __DLL^ ERROR
请问除更新WinAPIEx.au3外是否还需要更新其它函数库呢?
发表于 2012-11-6 16:58:50 | 显示全部楼层
什么系统,是不是没那个dll
 楼主| 发表于 2012-11-6 17:45:04 | 显示全部楼层
回复 15# netegg

Windows XP SP3 32位中文版,我搜索了一下c:\windows\system32目录下有ntshrui.dll
发表于 2012-11-6 18:06:49 | 显示全部楼层
回复 16# fuinei
那用不了了,我这系统是win7,没问题
 楼主| 发表于 2012-11-7 09:32:26 | 显示全部楼层
本帖最后由 fuinei 于 2012-11-7 09:33 编辑

回复 17# netegg

我电脑安装了32位WinXP+64位Win7双系系统,我在Win7测试也有相同的报错,Win7系统的system32目录下也有文件ntshrui.dll,真奇怪,请问64位Win7也不能使用吗?
发表于 2012-11-7 10:18:02 | 显示全部楼层
回复 18# fuinei
这就不清楚了,我用的是32位的
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-5 18:44 , Processed in 0.086762 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表