Автоматическое именование устройства SOTI через файл.ini
Я пытаюсь использовать сценарий soti, который будет использовать встроенный серийный номер устройства Motorola и использовать этот номер для поиска пользовательского номера ресурса в INI-файле. Затем запишите этот номер актива обратно в реестр устройств как DeviceName в стеке реестра soti.
Формат файла INI:
10184522501228=CITY7600A
Код, который я использую:
;read registry for Serial Number
set MySerial=REG://HKEY_LOCAL_MACHINE\Software\MSP\IdentityAttributes?VN=serial
showmessagebox %MySerial%
;Lookup in INI
set MyAsset=INI://\temp\CityMC70Serial2Asset.ini?SC=Serial&NM=%MySerial%
showmessagebox %MyAsset%
set MyAsset=N/A%MyAsset%
if not %MyAsset%==N/A goto assetfound
set MyAsset=%MySerial%
goto continue
:assetfound
set MyAsset=substring %MyAsset% 4 -1
:continue
;Set in registry for Customer Data
regset HKEY_LOCAL_MACHINE\Software\Apps\SOTI\MobiControl\PDB\Device\DeviceName?VD=MyAsset
;rename device to asset tag
\windows\startup\CommLoader.exe -n %MyAsset%
\windows\startup\CommLoader.exe -n %MyAsset%
reset /s
Этот код принимает серийный номер в порядке, но не обменивается на номер актива и перезаписывает в рег.
Любая помощь будет принята с благодарностью.
1 ответ
Оказывается, следующая строка была причиной ошибки...
:assetfound
set MyAsset=substring %MyAsset% 4 -1
-1 заставлял актив очищаться, когда я использовал следующее, он работал отлично
:assetfound
set MyAsset=substring %MyAsset% 4 10