что такое UNC-путь для локального компьютера с удаленного компьютера? - PullRequest
0 голосов
/ 29 апреля 2010

Я пишу небольшую служебную программу на IronPython для установки приложений на удаленную машину, используя класс управления, использующий WMI.

Теперь скрипт установит приложение на Machine_B с Machine_A, оно будет работать нормально, если у вас есть файл msi на локальном диске целевой машины (в данном случае Machine_B). Я хочу быть в состоянии сделать то же самое с MSI-файлом на компьютере хоста (Machine_A).

network_scope = r"\\%Machine_B\root\cimv2" 
scope =  ManagementScope(network_scope, options)
scope.Connect()

mp =  ManagementPath("Win32_Product")
ogo = ObjectGetOptions()
mc = ManagementClass(scope, mp, ogo)
inParams = mc.GetMethodParameters ("Install")
inParams["PackageLocation"] = r"C:\installs\python-3.1.1.msi"
inParams["AllUsers"] = True
retVal = mc.InvokeMethod ("Install", inParams, None)
print retVal ["ReturnValue"].ToString() 

ПРОБЛЕМА:

[Машина A] --- Где я запускаю скрипт и хочу разместить MSI-файл
[Машина B] --- где я хочу установить приложение

Итак, как я могу определить UNC-путь для локальной машины? что будет inParams ["PackageLocation"] = ??

1 Ответ

2 голосов
/ 29 апреля 2010

Почему бы не сделать так, чтобы ваш сценарий скопировал файл на административный общий ресурс C $ целевого компьютера, а затем, при необходимости, удалите его? Установка из локального MSI-файла намного быстрее, чем непрерывное чтение базы данных MSI по сети.

...