Войти

Показать полную графическую версию : Автозапуск сетевого reg файла?


smol84
21-11-2011, 12:15
в локальной сети есть файл (в пути присутствуют русские буквы), требуется организовать автозапуск этого файла, потому как он будет изменяться, как это можно организовать?
сдается мне что вариант с

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
"REG"="regedit /s \\\\hp-rua13300dn\\exchange\\абв\\пб.reg"

не очень прокатит!

З.Ы. Нужно что бы это происходило при логоне пользователя.
Заранее большое спасибо за ответы.

Anton04
21-11-2011, 13:42
smol84,

У меня такое реализовано скриптом:


DiskLetter = "X:" ' Буква сетевого диска
NetPath = "\\ad\Script" ' Путь к расшаренной папке
Pr = " "
Kav = Chr(34)
Program = Kav&"%SYSTEMROOT%\regedit.exe"&Kav&Pr&"/s"&Pr&Kav&"x:\print.reg"&Kav ' Программа для запуска после подключения сетевого диска
Set WShell = CreateObject("Wscript.Shell")
Set WshNetwork = CreateObject("WScript.Network") 'Создаем объект WshNetwork

Mess_Off = NetDiskUnMap(DiskLetter)
Mess_On = NetDiskMap(DiskLetter, NetPath)
If Mess_On = "yes" Then
Sending = WShell.Run(Program, 1, True)
Mess_Off = NetDiskUnMap(DiskLetter)
End If

' Подключение сетевого диска
Function NetDiskMap(Drive, NetPath)
' Set WshNetwork = CreateObject("WScript.Network") 'Создаем объект WshNetwork
On Error Resume Next
WshNetwork.MapNetworkDrive Drive, NetPath
If Err.Number <> 0 Then
Mess = "Ошибка при подключении диска " + Drive + vbCrLf + "Код ошибки: " + CStr(Err.Number) + vbCrLf + "Описание: " + Err.Description
MsgBox Mess, 16, "Подключение сетевого диска"
Else
Mess = "yes"
End If
On Error GoTo 0
NetDiskMap = Mess
' MsgBox Mess, 16, "Подключение сетевого диска"

End Function

' Отключение сетевого диска
Function NetDiskUnMap(Drive)
' Set WshNetwork = CreateObject("WScript.Network") 'Создаем объект WshNetwork
On Error Resume Next
WshNetwork.RemoveNetworkDrive Drive
If Err.Number <> 0 Then
Mess = "Ошибка при отключении диска " + Drive + vbCrLf + "Код ошибки: " + CStr(Err.Number) + vbCrLf + "Описание: " + Err.Description
Else
Mess = "yes"
End If
On Error GoTo 0
NetDiskUnMap = Mess
' MsgBox Mess, 64, "Отключение сетевого диска"
End Function

smol84
21-11-2011, 17:37
нехило, жаль что ничего не понятно...и как быть с русскимим буквами в пути в файлу?

Iska
21-11-2011, 23:13
smol84, русские буквы в пути при кодировке пакетного файла «866» — ничем не мешают.

Anton04
22-11-2011, 10:01
smol84,

А чего здесь непонятного то!? Есть reg файл который лежит в сетевой папке \\ad\Script его мы и применяем посредством подключения сетевого диска, запуска regedit.exe с ключём /s и последующим отключением сетевого диска.

Там же и коменты есть, что к чему ;)

smol84
22-11-2011, 14:06
ок буду разбираться




© OSzone.net 2001-2012