关于判断共享路径是否存在/能否访问的方法
如果需判断\\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
请问各位有没有其它的方法或思路呢? 本帖最后由 netegg 于 2012-11-4 01:01 编辑
_Net_Share_ConnectionEnum
或
#Include <WinAPIEx.au3>
_WinAPI_IsPathShared 回复 2# sliqi
谢谢指导,AU3现成的函数确实很不错 回复 3# netegg
谢谢netegg元老的指导, _Net_Share_ConnectionEnum对于我目前的情况不太适用(共享路径需验证用户名和密码),而_WinAPI_IsPathShared函数在我的Autoit帮助文档(3.3.9.5)中未找到,请问netegg元老使用什么版本有这个函数呢? 回复 7# fuinei
看winapiex的版本 3.8的 回复 8# netegg
谢谢netegg元老的回复,但目前自动更新到的版本3.3.9.4中winapiex版本只是3.7,请问winapiex 3.8是否需要单独下载呢? 回复 9# fuinei
exe的帮助里带的winapiex是3.8的 回复 10# netegg
请问netegg元老exe的帮助指的是什么呢?
我在论坛中搜索了netegg元老的autoit3udf.exe,附件中下载的winapiex.au3版本为3.6 回复 11# fuinei
那个版本号没改,函数库是3.8的 回复 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外是否还需要更新其它函数库呢? 什么系统,是不是没那个dll 回复 15# netegg
Windows XP SP3 32位中文版,我搜索了一下c:\windows\system32目录下有ntshrui.dll 回复 16# fuinei
那用不了了,我这系统是win7,没问题 本帖最后由 fuinei 于 2012-11-7 09:33 编辑
回复 17# netegg
我电脑安装了32位WinXP+64位Win7双系系统,我在Win7测试也有相同的报错,Win7系统的system32目录下也有文件ntshrui.dll,真奇怪,请问64位Win7也不能使用吗? 回复 18# fuinei
这就不清楚了,我用的是32位的
页:
[1]
2