Как получить доступ к "расшаренным" хардам компов, входящих в общую сеть - VB
Формулировка задачи:
Доброго времени суток! Задача такая: пишется простенькая программа для автоматизированного обмена (VB6) информацией между офисными ПК, входящими в общюю сеть. Казалось-бы все просто, пишем: OPEN "192.168.1.3/имя_папки/" FOR INPUT AS #1 того ПК, к которому надо получить доступ (папка, естественно на том ПК уже "расшарена" для общего доступа). Но, ошибка, - неверно указан путь. Что самое интересное, раньше такая комбинация работала! Может я что-то забыл? В общем, задача простая, - получить доступ к "расшаренным" хардам компов в общей сети (их IP уже известны) через ВБ-шную программу. Помогите, плиззз, кто знает! Заранее спасибо!
Решение задачи: «Как получить доступ к "расшаренным" хардам компов, входящих в общую сеть»
textual
Листинг программы
Option Explicit Private Sub Form_Load() Dim NetShare As String Dim file As String Dim sDriveLetter As String NetShare = "\\192.168.12.6\общие документы" file = "test.txt" sDriveLetter = MountShare(NetShare) If sDriveLetter <> vbNullString Then MsgBox ReadFile(sDriveLetter & ":\" & file) UnMountShare sDriveLetter End If End Sub ' Монтирует сетевое уст-во. Возвращает букву диска в случае успеха Function MountShare(Share As String) As String Dim FSO, oNetwork, oDrive, sDrvMap, sDriveLetter sDrvMap = "DEFGHIJKLMNOPQRSTUVWX" ' поиск свободной буквы диска Set FSO = CreateObject("Scripting.FileSystemObject") For Each oDrive In FSO.Drives sDrvMap = Replace(sDrvMap, oDrive.DriveLetter, "", 1, 1) Next sDriveLetter = Left(sDrvMap, 1) If sDriveLetter <> vbNullString Then Set oNetwork = CreateObject("Wscript.Network") On Error Resume Next oNetwork.MapNetworkDrive sDriveLetter & ":", Share If Err = 0 Then MountShare = sDriveLetter Else Debug.Print Err & " " & Err.Description End If End Function ' Возвращает ноль в случае успеха Function UnMountShare(sDriveLetter As String, Optional Force As Boolean) As Long Dim oNetwork Set oNetwork = CreateObject("Wscript.Network") On Error Resume Next oNetwork.RemoveNetworkDrive sDriveLetter & ":", Force UnMountShare = Err.Number End Function Function ReadFile(file As String) As String On Error Resume Next Dim ff As Integer Dim FileSize As Long ff = FreeFile() FileSize = FileLen(file) If FileSize Then Open file For Binary Access Read As #ff ReadFile = Space(FileSize) Get #ff, , ReadFile Close #ff End If End Function
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д