![]() |
Узнать имя подпапки
Добрый день!
Есть проблема: на 30 компах есть папка вида "D:\WORK\%UserName%" %UserName%" - у каждого пользователя разная, подскажите, пожалуйста, как узнать имя этой папки. |
Имя этой папки равно
Код:
$sPath = 'D:\Work\' & @UserName |
К сожалению, нет. @UserName и %UserName% не совпадают
|
очень странно, т.к. у меня совпадает.
ну тогда попробуй так Код:
#include <encoding.au3> |
Хм, дело в том, что эту папку создает сам пользователь и называет ее как захочет, например:
@UserName = "Бухгалтер" а папка называется: "D:\WORK\Тетя Клава" |
tehnik_srs, в таком случае рекомендую тебе изучить что такое переменные окружения, которое ты пытался использовать в первом посте.
если переменная задана в системе как %Username% то при вызове через echo система покажет его значение. а то что ты пытаешься сделать, это определить какую же папку создал пользователь. ИМХО, это нереально. по какому критерию ты пытаешься это сделать? или же в папке 'D:\Work' находится всего одна папка? |
tehnik_srs, вот способ узнать первую подпапку в указанной папке:
Код:
$tmp="" |
Почему-то не работает
|
Все, нашел, если кому-нибудь нужно
Global $Found FileView("D:\Work", 0) Func FileView($sPath = @ScriptDir, $Flag = 1) Local $sRet Local $Find_First = FileFindFirstFile($sPath & "\*.*") If @error Then Return While 1 $FindNext = FileFindNextFile($Find_First) If @error Then ExitLoop $Full_File = $sPath &"\"& $FindNext If StringInStr(FileGetAttrib($Full_File), "D") Then $Found &= $Full_File $sRet = FileView($Full_File, $Flag) ElseIf $Flag Then $Found &= $Full_File EndIf WEnd FileClose($Find_First) EndFunc MsgBox(4096, "", $Found) |
tehnik_srs, удовлетворяющее решение не соответствует заголовку темы.
А результата (список папок) можно добиться проще: Код:
$tmp="" |
Время: 21:53. |
Время: 21:53.
© OSzone.net 2001-