當前位置:首頁 » 手機軟體 » vbnet網路文件共享
擴展閱讀
網路機頂盒wifi不好使 2025-01-25 08:25:13
血獄在哪個網站上看看 2025-01-25 08:25:11

vbnet網路文件共享

發布時間: 2023-01-14 10:23:36

A. vb.net 如何訪問文件的詳情信息

什麼IIS架構。暈~~~
1.首先正式版本的發布你必須要Release,不要直接把Debug程序放上去。
2.將所有的.cs文件刪除。vs.net有一個很方便的工具,「項目——復制項目」就ok了。
3.windows server2003上一定要安裝了"Internet 信息服務(IIS)管理器",如果沒有安裝的話可以到「控制面板——添加或刪除程序——添加\刪除WINDOWS組件——應用程序伺服器」如果「應用程序伺服器」沒有構選的話鉤上,放入windows 2003的系統盤安裝。
4.安裝完成之後把項目靠到伺服器上。簡單一點的方法是右鍵點擊項目文件夾,Web共享——共享文件夾。此時就算發布成功了。不過還有一些細節需要注意。如:IIS匿名訪問等。那就是另外的問題了。呵呵。IIS設置很簡單,可以在網上找些資料。

B. VB高手進,用VB實現bat文件的net use那樣的功能

WNetAddConnection 創建同一個網路資源的永久性連接
WNetAddConnection2 創建同一個網路資源的連接
WNetAddConnection3 創建同一個網路資源的連接
WNetCancelConnection 結束一個網路連接
WNetCancelConnection2 結束一個網路連接
WNetCloseEnum 結束一次枚舉操作
WNetConnectionDialog 啟動一個標准對話框,以便建立同網路資源的連接
WNetDisconnectDialog 啟動一個標准對話框,以便斷開同網路資源的連接
WNetEnumResource 枚舉網路資源
WNetGetConnection 獲取本地或已連接的一個資源的網路名稱
WNetGetLastError 獲取網路錯誤的擴展錯誤信息
WNetGetUniversalName 獲取網路中一個文件的遠程名稱以及/或者UNC(統一命名規范)名稱
WNetGetUser 獲取一個網路資源用以連接的名字
WNetOpenEnum 啟動對網路資源進行枚舉的過程

1.WNetAddConnection

VB聲明
Declare Function WNetAddConnection Lib "mpr.dll" Alias "WNetAddConnectionA" (ByVal lpszNetPath As String, ByVal lpszPassword As String, ByVal lpszLocalName As String) As Long
說明
創建同一個網路資源的永久性連接
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpszNetPath String,要連接的網路名
lpszPassword String,可選的一個密碼。如為vbNullString,表示採用當前用戶的默認密碼。如為一個空字串,則不用任何密碼
lpszLocalName String,資源的本地名稱。(例如,F: 和 LPT1:)

2.WNetAddConnection2

VB聲明
Declare Function WNetAddConnection2 Lib "mpr.dll" Alias "WNetAddConnection2A" (lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
說明
創建同一個網路資源的連接
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpNetResource NETRESOURCE,在這個結構中設置了下述欄位,對要連接的網路資源進行了定義:dwType, lpLocalName (可為 vbNullString), lpRemoteName, lpProvider (設為 vbNullString 表示用默認提供者)。該結構的其他所有變數都會被忽略
lpPassword String,可選的一個密碼。如為vbNullString,表示採用當前用戶的默認密碼。如為一個空字串,則不用任何密碼
lpUserName String,用於連接的用戶名。如為vbNullString,表示使用當前用戶
dwFlags Long,設為零;或指定常數CONNECT_UPDATE_PROFILE,表示創建永久性連接

3.WNetAddConnection3

VB聲明
Declare Function WNetAddConnection3& Lib "mpr.dll" Alias "WNetAddConnection3A" (ByVal hwnd As Long, lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long)
說明
創建同一個網路資源的連接。這個函數與WNetAddConnection2類似,只是它允許我們為這個函數顯示的對話框指定一個物主窗口
返回值
Long,
參數表
參數 類型及說明
hwnd Long,指定一個窗口句柄,用作本函數創建的對話框的父窗口
lpNetResource NETRESOURCE,在這個結構中設置了下述欄位,對要連接的網路資源進行了定義:dwType, lpLocalName (可為 vbNullString), lpRemoteName, lpProvider (設為 vbNullString 表示用默認提供者)。該結構的其他所有變數都會被忽略
lpPassword String,可選的一個密碼。如為vbNullString,表示採用當前用戶的默認密碼。如為一個空字串,則不用任何密碼
lpUserName String,用於連接的用戶名。如為vbNullString,表示使用當前用戶
dwFlags Long,設為零;或指定常數CONNECT_UPDATE_PROFILE,表示創建永久性連接

4.WNetCancelConnection

VB聲明
Declare Function WNetCancelConnection Lib "mpr.dll" Alias "WNetCancelConnectionA" (ByVal lpszName As String, ByVal bForce As Long) As Long
說明
結束一個網路連接
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpszName String,已連接資源的遠程名稱或本地名稱
bForce Long,如為TRUE,表示斷開連接(即使連接的資源上正有打開的文件或作業)

5.WNetCancelConnection2

VB聲明
Declare Function WNetCancelConnection2 Lib "mpr.dll" Alias "WNetCancelConnection2A" (ByVal lpName As String, ByVal dwFlags As Long, ByVal fForce As Long) As Long
說明
結束一個網路連接
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpszName String,已連接資源的遠程名稱或本地名稱
dwFlags Long,設為零或CONNECT_UPDATE_PROFILE。如為零,而且建立的是永久性連接,則在windows下次重新啟動時仍會重新連接
fForce Long,如為TRUE,表示強制斷開連接(即使連接的資源上正有打開的文件或作業)

6.WNetCloseEnum

VB聲明
Declare Function WNetCloseEnum Lib "mpr.dll" Alias "WNetCloseEnum" (ByVal hEnum As Long) As Long
說明
結束一次枚舉操作
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
hEnum Long,由 WNetOpenEnum函數返回的一個枚舉句柄

7.WNetConnectionDialog

VB聲明
Declare Function WNetConnectionDialog Lib "mpr.dll" Alias "WNetConnectionDialog" (ByVal hwnd As Long, ByVal dwType As Long) As Long
說明
啟動一個標准對話框,以便建立同網路資源的連接
返回值
Long,零表示成功。如用戶取消了操作,則返回-1。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
hwnd Long,指定要成為對話框父窗口的一個窗口的句柄
dwType Long,設成RESOURCETYPE_DISK,瀏覽磁碟資源

8.WNetDisconnectDialog

VB聲明
Declare Function WNetDisconnectDialog Lib "mpr.dll" Alias "WNetDisconnectDialog" (ByVal hwnd As Long, ByVal dwType As Long) As Long
說明
啟動一個標准對話框,以便斷開同網路資源的連接
返回值
Long,零表示成功。如用戶取消了操作,則返回-1。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
hwnd Long,指定要成為對話框父窗口的一個窗口的句柄
dwType Long,設成RESOURCETYPE_DISK 或 RESOURCETYPE_PRINT,決定要斷開的是磁碟還是列印機資源

9.WNetEnumResource

VB聲明
Declare Function WNetEnumResource Lib "mpr.dll" Alias "WNetEnumResourceA" (ByVal hEnum As Long, lpcCount As Long, lpBuffer As Any, lpBufferSize As Long) As Long
說明
枚舉網路資源
返回值
Long,零表示成功。ERROR_NO_MORE_ITEMS表示不剩下可以枚舉的條目。ERROR_MORE_DATA表示條目不能裝入lpBuffer。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
hEnum Long,從WNetOpenEnum函數返回的一個句柄
lpcCount Long,最初設為要枚舉的最大資源數量;或設為-1,表示枚舉盡可能多的資源。一旦返回,就會設為實際枚舉的資源數量
lpBuffer Any,通常是一個位元組緩沖區的首位元組。該緩沖區裝載了枚舉信息(可按引用聲明為Byte)
lpBufferSize Long,以位元組為單位指定lpBuffer數組的長度。如緩沖區不夠大,則設為需要的緩沖區長度
註解
枚舉網路條目時,最好用vb一次枚舉一個資源。盡量不要使用這個函數同時枚舉許多網路資源的功能

10.WNetGetConnection

VB聲明
Declare Function WNetGetConnection Lib "mpr.dll" Alias "WNetGetConnectionA" (ByVal lpszLocalName As String, ByVal lpszRemoteName As String, cbRemoteName As Long) As Long
說明
獲取本地或已連接的一個資源的網路名稱
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpszLocalName String,本地設備的名字
lpszRemoteName String,指定一個字串緩沖區,用於裝載設備的資源名稱
cbRemoteName Long,lpszRemoteName緩沖區的字元數量。如緩沖區不夠大,則設為需要的緩沖區長度

11.WNetGetLastError

VB聲明
Declare Function WNetGetLastError Lib "mpr.dll" Alias "WNetGetLastErrorA" (lpError As Long, ByVal lpErrorBuf As String, ByVal nErrorBufSize As Long, ByVal lpNameBuf As String, ByVal nNameBufSize As Long) As Long
說明
獲取網路錯誤的擴展錯誤信息
返回值
Long,零表示成功。ERROR_INVALID_ADDRESS表示緩沖區無效
參數表
參數 類型及說明
lpError Long,指定一個變數,用於裝載網路錯誤代碼。具體的代碼由網路供應商決定
lpErrorBuf String,指定一個字串緩沖區,用於裝載網路錯誤的說明
nErrorBufSize Long,lpErrorBuf緩沖區包含的字元數量
lpNameBuf String,用於裝載網路供應商名字的字串緩沖區
nNameBufSize Long,lpNameBuf緩沖區的字元數量

12.WNetGetUniversalName

VB聲明
Declare Function WNetGetUniversalName Lib "mpr" Alias "WNetGetUniversalNameA" (ByVal lpLocalPath As String, ByVal dwInfoLevel As Long, lpBuffer As Any, lpBufferSize As Long) As Long
說明
獲取網路中一個文件的遠程名稱以及/或者UNC(統一命名規范)名稱。例如,假設一個已連接的遠程驅動器是\\othersystem\CDrive,它對應的本地驅動器是F:,而且在它的子目錄temp中包含了文件xyz.doc。那麼運算結果如下:LocalPath xyz.doc 或 f:\temp\xyz.doc(或者文件的任何相對路徑名)
UNC 名稱: \\othersystem\CDrive\temp\xyz.doc
連接名稱: \\othersystem\CDrive
剩餘名稱: \temp\xyz.doc
它們分別對應於由這個函數裝載的REMOTE_NAME_INFO結構的欄位,對該結構的定義如下:
Type REMOTE_NAME_INFO
pUniversalName As Long
pConnectionName As Long
pRemainingPath As Long
End Type
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpLocalPath String,磁碟文件的名字
dwInfoLevel Long,下述常數之一:
UNIVERSAL_NAME_INFO_LEVEL 只設置pUniversalName欄位
REMOTE_NAME_INFO_LEVEL 設置REMOTE_NAME_INFO結構中的所有三個欄位
lpBuffer Any,指定用於裝載UNC信息的一個緩沖區。緩沖區起點與一個REMOTE_NAME_INFO結構對應
lpBufferSize Long,以位元組為單位指定lpBuffer緩沖區的長度。如緩沖區不夠大,則設為需要的緩沖區長度

13.WNetGetUser

VB聲明
Declare Function WNetGetUser Lib "mpr.dll" Alias "WNetGetUserA" (ByVal lpName As String, ByVal lpUserName As String, lpnLength As Long) As Long
說明
獲取一個網路資源用以連接的名字
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
lpName String,指定已連接資源的遠程名稱或本地名稱。用vbNullString獲取當前用戶的名字
lpUserName String,用於裝載用戶名的一個字串緩沖區
lpnLength Long,lpUserName緩沖區的長度。如緩沖區不夠大,則自動設為需要的緩沖區長度

14.WNetOpenEnum

VB聲明
Declare Function WNetOpenEnum Lib "mpr.dll" Alias "WNetOpenEnumA" (ByVal dwScope As Long, ByVal dwType As Long, ByVal dwUsage As Long, lpNetResource As NETRESOURCE, lphEnum As Long) As Long
說明
啟動對網路資源進行枚舉的過程。這個函數會返回由WNetEnumResource函數用於枚舉資源所用的一個句柄
返回值
Long,零表示成功。會設置GetLastError。如GetLastError是ERROR_EXTENDED_ERROR,則可用WNetGetLastError取得額外的錯誤信息
參數表
參數 類型及說明
dwScope Long,指定要枚舉的資源范圍。可設為下述常數之一:
RESOURCE_CONNECTED 枚舉已連接的資源(忽略dwUsage)
RESOURCE_GLOBALNET 枚舉所有資源
RESOURCE_REMEMBERED 只枚舉永久性連接
dwType Long,下述常數之一
RESOURCE_ANY 枚舉所有類型的網路資源
RESOURCE_DISK 枚舉磁碟資源
RESOURCE_PRINT 枚舉列印資源
dwUsage Long,可設為零,表示枚舉所有資源;或設為下述常數的一個或兩個:
RESOURCEUSAGE_CONNECTABLE 只枚舉那些能夠連接的資源
RESOURCEUSAGE_CONTAINER 只枚舉包含了其他資源的資源
lpNetResource NETRESOURCE,這個結構指定了一個容器資源。該函數會枚舉包含於這里指定的某個指定資源內的資源。如設為NULL(把聲明變成ByVal As Long),那麼函數會枚舉頂級網路資源。倘若在dwScope參數里沒有指定RESOURCE_GLOBALNET,那麼必須為NULL
lphEnum Long,指定一個變數,用於裝載一個枚舉句柄。該句柄由WNetEnumResource函數使用。必須用WNetCloseEnum函數將其清除

C. 使用vb.net將乙太網共享給虛擬wifi網路

最簡單的辦法是用句柄操作窗體,這種方法就好比是計算機在代替你在打開設置窗口,完成設置。
比較難實現的方法是用API,不過我不知道用那些API,而且還要驅動支持
因為vb。net是高級語言,不能直接操作驅動,所以直接寫匯編是不可行的

D. 如果不用net use的方法,vb.net 有辦法訪問共享文件或者共享文件夾嗎

我不會VB,但是都是.net。c#的代碼稍微轉換一下就可以了。
C#實現訪問網路共享文件夾,使用WNetAddConnection2A和WNetCancelConnection2A。
在目標伺服器建立共享文件夾,建立訪問賬號test;
publicenumERROR_ID
{
ERROR_SUCCESS=0,//Success
ERROR_BUSY=170,
ERROR_MORE_DATA=234,
ERROR_NO_BROWSER_SERVERS_FOUND=6118,
ERROR_INVALID_LEVEL=124,
ERROR_ACCESS_DENIED=5,
ERROR_INVALID_PASSWORD=86,
ERROR_INVALID_PARAMETER=87,
ERROR_BAD_DEV_TYPE=66,
ERROR_NOT_ENOUGH_MEMORY=8,
ERROR_NETWORK_BUSY=54,
ERROR_BAD_NETPATH=53,
ERROR_NO_NETWORK=1222,
ERROR_INVALID_HANDLE_STATE=1609,
ERROR_EXTENDED_ERROR=1208,
ERROR_DEVICE_ALREADY_REMEMBERED=1202,
ERROR_NO_NET_OR_BAD_PATH=1203
}
publicenumRESOURCE_SCOPE
{
RESOURCE_CONNECTED=1,
RESOURCE_GLOBALNET=2,
RESOURCE_REMEMBERED=3,
RESOURCE_RECENT=4,
RESOURCE_CONTEXT=5
}
publicenumRESOURCE_TYPE
{
RESOURCETYPE_ANY=0,
RESOURCETYPE_DISK=1,
RESOURCETYPE_PRINT=2,
RESOURCETYPE_RESERVED=8,
}
publicenumRESOURCE_USAGE
{
RESOURCEUSAGE_CONNECTABLE=1,
RESOURCEUSAGE_CONTAINER=2,
RESOURCEUSAGE_NOLOCALDEVICE=4,
RESOURCEUSAGE_SIBLING=8,
RESOURCEUSAGE_ATTACHED=16,
RESOURCEUSAGE_ALL=(RESOURCEUSAGE_CONNECTABLE|RESOURCEUSAGE_CONTAINER|RESOURCEUSAGE_ATTACHED),
}
publicenumRESOURCE_DISPLAYTYPE
{
RESOURCEDISPLAYTYPE_GENERIC=0,
RESOURCEDISPLAYTYPE_DOMAIN=1,
RESOURCEDISPLAYTYPE_SERVER=2,
RESOURCEDISPLAYTYPE_SHARE=3,
RESOURCEDISPLAYTYPE_FILE=4,
RESOURCEDISPLAYTYPE_GROUP=5,
RESOURCEDISPLAYTYPE_NETWORK=6,
RESOURCEDISPLAYTYPE_ROOT=7,
RESOURCEDISPLAYTYPE_SHAREADMIN=8,
RESOURCEDISPLAYTYPE_DIRECTORY=9,
RESOURCEDISPLAYTYPE_TREE=10,
RESOURCEDISPLAYTYPE_NDSCONTAINER=11
}
[StructLayout(LayoutKind.Sequential)]
publicstructNETRESOURCE
{
publicRESOURCE_SCOPEdwScope;
publicRESOURCE_TYPEdwType;
publicRESOURCE_DISPLAYTYPEdwDisplayType;
publicRESOURCE_USAGEdwUsage;
[MarshalAs(UnmanagedType.LPStr)]
publicstringlpLocalName;
[MarshalAs(UnmanagedType.LPStr)]
publicstringlpRemoteName;
[MarshalAs(UnmanagedType.LPStr)]
publicstringlpComment;
[MarshalAs(UnmanagedType.LPStr)]
publicstringlpProvider;
}
publicclassNetworkConnection
{
[DllImport("mpr.dll")]
(NETRESOURCE[]lpNetResource,stringlpPassword,stringlpUserName,intdwFlags);
[DllImport("mpr.dll")]
(stringsharename,intdwFlags,intfForce);

publicstaticintConnect(stringremotePath,stringlocalPath,stringusername,stringpassword)
{
NETRESOURCE[]share_driver=newNETRESOURCE[1];
share_driver[0].dwScope=RESOURCE_SCOPE.RESOURCE_GLOBALNET;
share_driver[0].dwType=RESOURCE_TYPE.RESOURCETYPE_DISK;
share_driver[0].dwDisplayType=RESOURCE_DISPLAYTYPE.RESOURCEDISPLAYTYPE_SHARE;
share_driver[0].dwUsage=RESOURCE_USAGE.RESOURCEUSAGE_CONNECTABLE;
share_driver[0].lpLocalName=localPath;
share_driver[0].lpRemoteName=remotePath;
Disconnect(localPath);
intret=WNetAddConnection2A(share_driver,password,username,1);
returnret;
}
publicstaticintDisconnect(stringlocalpath)
{
returnWNetCancelConnection2A(localpath,1,1);
}
調用方式:
()
{
stringlocalpath="X:";
//intstatus=NetworkConnection.Connect(@"\192.168.0.2 est",localpath,@"test","test");
intstatus=NetworkConnection.Connect("\\192.168.0.2\test",localpath,@"test","test");
if(status==(int)ERROR_ID.ERROR_SUCCESS)
{
FileStreamfs=newFileStream(localpath+@"\123.txt",FileMode.OpenOrCreate);
using(StreamWriterstream=newStreamWriter(fs))
{
stream.WriteLine("你好呀,成功了");
stream.Flush();
stream.Close();
}
fs.Close();
}
else
{
Console.WriteLine(status);
}
NetworkConnection.Disconnect(localpath);
}

E. VB.NET怎麼登錄帶用戶名和密碼的伺服器,鏈接資料庫

做不到,access資料庫是本地資料庫,不支持網路訪問,建議你換成sql server或者mysql之類的資料庫。
註:如果一定要遠程訪問access也不是不行,有兩種辦法,一個是伺服器如果跟你在同一個區域網,可以把資料庫文件夾共享出來,當做共享文件訪問。另一種是在那台伺服器上裝個sql server資料庫,sql server可以創建出鏈接資料庫鏈接到那個access.

F. vb.net裡面老是看到什麼「共享方法」「共享屬性」是什麼意思

可以直接從類調用共享方法,而不必首先創建該類的實例。共享屬性與之類似,可以在一創建類實例的情況下訪問,並且即使有了多個實例,共享屬性仍然只有一個,就是說,設置了該屬性後,對所有實例有效。類似於全局變數。

G. 急急急,請問那位大俠知道 如何在VB6.0中搜索列出指定IP的電腦的共享文件及其子文件

時間有點久了,都快忘了,給個大概的吧

先建個模塊,裡面放這些函數和結構體

Public Declare Function WNetAddConnection2 Lib "mpr.dll" Alias _
"WNetAddConnection2A" (lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
Public Declare Function WNetCancelConnection2 Lib "mpr.dll" Alias "WNetCancelConnection2A" (ByVal lpName As String, ByVal dwFlags As Long, ByVal fForce As Long) As Long
Const RESOURCETYPE_DISK = &H1
Const RESOURCETYPE_PRINT = &H2
Const RESOURCETYPE_ANY = &H0
Const RESOURCE_CONNECTED = &H1
Const RESOURCE_REMEMBERED = &H3
Const RESOURCE_GLOBALNET = &H2
Const RESOURCEDISPLAYTYPE_DOMAIN = &H1
Const RESOURCEDISPLAYTYPE_GENERIC = &H0
Const RESOURCEDISPLAYTYPE_SERVER = &H2
Const RESOURCEDISPLAYTYPE_SHARE = &H3
Const RESOURCEUSAGE_CONNECTABLE = &H1
Const RESOURCEUSAGE_CONTAINER = &H2
Public Type NETRESOURCE
dwScope As Long
dwType As Long
dwDisplayType As Long
dwUsage As Long
lpLocalName As String
lpRemoteName As String
lpComment As String
lpProvider As String
End Type

然後在界面裡面
Public Function NetDriveConnect2(ServerIP As String, ServerUpdatePath As String) As Boolean
NetDriveConnect2 = False
Dim NetR As NETRESOURCE
Dim ErrInfo As Long
NetR.dwScope = RESOURCE_GLOBALNET
NetR.dwType = RESOURCETYPE_DISK
NetR.dwDisplayType = RESOURCEDISPLAYTYPE_SHARE
NetR.dwUsage = RESOURCEUSAGE_CONNECTABLE

NetR.lpLocalName = "T:"
NetR.lpRemoteName = "\\" & ServerIP & "\" & ServerUpdatePath
ErrInfo = WNetAddConnection2(NetR, "User", "123", 0) '用戶名和密碼

If ErrInfo = NO_ERROR Then
NetDriveConnect2 = True
End If
End Function
Public Function NetDriveDisconnect2() As Boolean
NetDriveDisconnect2 = False
Dim ErrInfo As Long
Dim strLocalName As String
strLocalName = "T:"
ErrInfo = WNetCancelConnection2(strLocalName, CONNECT_UPDATE_PROFILE, True)
If ErrInfo = NO_ERROR Then
NetDriveDisconnect2 = True
End If
End Function

Private Sub Command2_Click()

If NetDriveConnect2(ServerIP, "share") Then
MsgBox "ok"
End If

End Sub

需要知道目標機器的用戶名和密碼,連接成功本地會映射一個T盤出來,然後就把T盤當本地文件一樣用就行了。

如果目標機器建的是隱式共享,別忘了加「$」,NetDriveConnect2(ServerIP, "share$"),就像這樣。

但願能幫到你,個人用下來這招不是太穩定,尤其網路不好的時候,會非常卡,呵呵。