none
переменные окружения в VBScript RRS feed

  • Вопрос

  • Всем привет,

    подскажите как правильно работать с переменными окружения из VBS? в частности с путями типа %windir% etc.

    Про WshEnvironment в курсе, но вроде как все решения основаны на том что мы изначально знаем какая переменная нам нужна.

    Вот пример кода:

     

    'objReg.GetStringValue HKEY_LOCAL_MACHINE,NOIDMIFKeyPath,NOIDMIFValueName,NOIDMIFstrValue
    
    NOIDMIFstrValue = "%temp%"
    
    
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    
    MifFilePath = NOIDMIFstrValue & "\Migration.MIF"
    
    'Set objShell = CreateObject("Wscript.Shell")
    
    'Set objWshScriptExec = objShell.Exec("echo " & MifFilePath)
    
    'Set objStdOut = objWshScriptExec.StdOut
    
    'strOutName = objStdOut.ReadLine
    
    'Set objTextFile = objFSO.OpenTextFile(strOutName,8,true,0)
    
    Set objTextFile = objFSO.OpenTextFile(MifFilePath,8,true,0)
    
    objTextFile.writeline "hello world"
    
    objTextFile.close

     

    выдает

    test.vbs(20, 1) Microsoft VBScript runtime error: Path not found

    но если путь задать явно то все работает.

    временно обошел ситуацию <off>через попу</off> хитрым инженерным решением :)  (закоментировано в середине кода)  однако хотелось бы узнать как надо правильно писать. В гугле\бинке не нашел.

    Да и кстати какие минусы есть у текущего решения?

    заранее спасибо.

     

     


    25 марта 2011 г. 15:00

Ответы

Все ответы