Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Неправильно возвращает значение метод Path


Автор: XPurple 17.5.2007, 12:00
Был неприятно удивлен, что метод Path работает корректно с русскоязычными папками только с локальными, с UNC - ресурсами на русском языке выдает каку.
Код

Wscript.Echo "Now for the Sub folders"
                    
Set objFSO = CreateObject("Scripting.FileSystemObject")                
'Если переменной objStartFolder задать UNC путь вида \\server\share, т.е. objStartFolder="\\server\share" ,
'то все будет нормально,
'Если задать папку вида \\server\Шара, то получите ошибку. Можете проверить.
objStartFolder = "C:\myfolder"                        

Set objFolder = objFSO.GetFolder(objStartFolder)
Wscript.Echo objFolder.Path
Set colFiles = objFolder.Files
For Each objFile in colFiles
    Wscript.Echo "the file is:" & objFile.Name

strComputer = "."

Set objWMIService = GetObject("winmgmts:" _
      & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")                         'bind to cimv2



Set colItems = objWMIService.ExecQuery _                    
    ("ASSOCIATORS OF {Win32_LogicalFileSecuritySetting='" & objFile & "'}" _     
        & " WHERE AssocClass=Win32_LogicalFileOwner ResultRole=Owner")  

For Each objItem in colItems                            
    Wscript.Echo "The domain is:" & objItem.ReferencedDomainName        'echo owner etc
    Wscript.Echo "The owner is:" & objItem.AccountName
    WSCript.Echo "==============="
Next
Next  


В VB6 ,естественно, тоже самое.

С чем это ,интересно, связано и как это обойти  ?

Автор: Tectoder 17.5.2007, 19:59
У меня windows vsita, все работает.
Может быть, vbs-файл имеет не правильную кодировку?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)