View previous topic :: View next topic |
Author |
Message |
flm
Joined: 09 Dec 2007 Posts: 467
|
(Separately) Posted: Sat Oct 17, 2009 05:38 Post subject: [REQ] Меню пуск на button bar!!! |
|
|
Здравствуйте. Порой хочется странного, вот и теперь возникло желание необычного, а именно перенести меню Пуск (стандартное виндовое) на тоталовский button bar. Остановимся на этот раз просто на пункте Программы. Итак, для выполнения задачи требуется написать некий парсер, который бы, грубо говоря, рекурсивно сканировал "c:\Documents and Settings\All Users.WINDOWS\Главное меню\Программы\" и создавал bar-файлы соответствующие структуре данного каталога.
Начинаем так - создаём programs.bar, далее сканируем структуру, если попадается каталог, создаём *.bar с его именем, в programs.bar кидаем на него ссылку и в самом *.bar файле сразу делаем выход на вышестоящий bar. Т.е. на programs.bar в данном случае.
Надеюсь, я не слишком запутанно изъясняюсь и в целом задача ясна. Может кто напишет программку или скрипт, который бы проделывал вышеописанное? Я так подумал, что данную программу можно было бы использовать шире, не только для перевода меню Пуск на button.bar... Ладно, то уже дело десятое...
Всё-таки дам пример небольшой для многоуровневого bar'а, вдруг не ясно что я имею в виду.
Итак, допустим мы имеем следующую структуру: каталог catroot содержит 2 подкаталога: sub1 и sub2. При этом в каждом из этих подкаталогов у нас имеются проги, которые мы хотим запускать (по 2 штуки) - sub1prg1.exe, sub1prg2.exe и sub2prg1.exe, sub2prg2.exe.
При этом bar-файлы реализующие всё это будут выглядить так:
catroot.bar:
Code: |
[Buttonbar]
Buttoncount=2
button1=TOTALCMD.EXE, 1
cmd1=sub1.bar
menu1=sub1
iconic1=1
button2=TOTALCMD.EXE, 1
cmd2=sub2.bar
iconic2=1
menu1=sub2
|
sub1.bar:
Code: |
[Buttonbar]
Buttoncount=3
button1=TOTALCMD.EXE, 10
cmd1=catroot.bar
iconic1=1
menu1=[...]
button2=sub1prg1.exe, 0
cmd2=sub1prg1.exe
menu2=sub1prg1
button3=sub1prg2.exe, 0
cmd3=sub1prg2.exe
menu3=sub1prg2 |
sub2.bar:
Code: |
[Buttonbar]
Buttoncount=3
button1=TOTALCMD.EXE, 10
cmd1=catroot.bar
iconic1=1
menu1=[...]
button2=sub2prg1.exe, 0
cmd2=sub2prg1.exe
menu2=sub2prg1
button3=sub2prg2.exe, 0
cmd3=sub2prg2.exe
menu3=sub2prg2 |
Вроде всё. Писал руками, ничего не проверял, мог где-то ошибиться, но принцип тут уж точно должен стать ясным. Единственное, что при "парсинге" меню пуск, надо будет ещё lnk обрабатывать, иконки там правильные выдирать, пути и т.д. _________________ cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Sat Oct 17, 2009 14:50 Post subject: |
|
|
flm
Я не понял... Ты пишешь "некий парсер" или хочешь, чтобы кто-нибудь его сделал?
Посмотри ещё сюда. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
iNorbert
Joined: 03 Mar 2008 Posts: 221
|
(Separately) Posted: Sat Oct 17, 2009 15:27 Post subject: |
|
|
Batya wrote: | flm
Я не понял... Ты пишешь "некий парсер" или хочешь, чтобы кто-нибудь его сделал?
Посмотри ещё сюда. |
flm wrote: |
Надеюсь, я не слишком запутанно изъясняюсь и в целом задача ясна. Может кто напишет программку или скрипт, который бы проделывал вышеописанное? Я так подумал, что данную программу можно было бы использовать шире, не только для перевода меню Пуск на button.bar... Ладно, то уже дело десятое...
Всё-таки дам пример небольшой для многоуровневого bar'а, вдруг не ясно что я имею в виду. |
Видимо все-таки реквест. |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Sat Oct 17, 2009 16:25 Post subject: |
|
|
flm wrote: | Надеюсь, я не слишком запутанно изъясняюсь ... | Нда, видимо, всё-таки слишком запутанно
Как говорится, "ниасилил - слишкам многа букф"
iNorbert
Спасибо за прояснение ситуации.
На выходных, просто, голова почти не варит
Решение задачи нужно искать в теме по приведённой мной выше ссылке раньше и позже указанного поста. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Sun Oct 18, 2009 03:29 Post subject: |
|
|
Да, запутано, но я непонимаю зачем это нужно
К примеру у меня в меню пуск нечего сканировать, там нет ни одной программы, т.к. всё давно в Тотале в Портабльском виде и все ссылки находятся в меню Тотала, на панелях и на горячих клавишах
и по сей день выбираю программы, которые не требуют установки
С уважением Андрей А А |
|
Back to top |
|
|
flm
Joined: 09 Dec 2007 Posts: 467
|
(Separately) Posted: Sun Oct 18, 2009 21:37 Post subject: |
|
|
Batya
Я хочу, чтоб кто-нибудь написал.
По преведённой ссылке есть скрипт, который при доработке, думается, будет делать то, что надо. Проблема только что я не разбираюсь в этом деле... Я даже, честно говоря, не знаю, какие службы должны быть в системе запущены, чтоб подобные скрипты срабатывали.
Andrey_A
Ай какой ты молодец. Интересно, а стандартных ярлыков там у тебя тоже нету? При установке винда там создаёт штук 50... А, к примеру, драйвера или игры не создают в пуске ярлыков? Или какие-нть кодек-паки, среды разработки и т.д. Очень бы хотелось верить, но что-то не могу. _________________ cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Mon Oct 19, 2009 15:48 Post subject: |
|
|
flm wrote: | По преведённой ссылке есть скрипт, который при доработке, думается, будет делать то, что надо. |
А разве сейчас не делает "то, что надо"? Какая доработка нужна?
flm
P.S. Не в обиду... Весьма удручает, когда недостаточно подкованные в программировании пользователи ставят задачи в виде некоторого подробно-технического задания, как в первом посте. Сразу хочеться спросить - тебе нужен результат или тебе нужно, чтобы процедура получения результата абсолютно соответствовала твоему компьютерному мировоззрению? Если - второе, то на это, чаще всего, ты рискуешь получить ответ вида "Тебе это надо, ты и делай".
Если тебе нужен именно результат, не вдавайся в технические детали. Тебя переспросят, если что-то будет непонятно. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
flm
Joined: 09 Dec 2007 Posts: 467
|
(Separately) Posted: Mon Oct 19, 2009 19:30 Post subject: |
|
|
Batya
То, что я написал - не является техническим заданием. Это просто описание процедуры, которая должна выполняться, чтоб получался необходимый результат. К тому же, эта процедура описана весьма размыта, тонкости реализации по сути меня не интересуют. Зато, по идее, это всё описание должно было сразу снять кучу вопросов, которые, к сожалению, таки последовали.
В примере видно, что любая ссылка на bar-файл, должна иметь iconicN=1, где N - номер элемента в текущем bar-файле, ссылающегося на другой bar-файл. Дальше про необходимость дороботки пока сказать не могу, потому как мне не удалось запустить скрипт. Перевожу ремарку из моего второго сообщения в вид вопроса: какие службы должны быть запущены в системе, чтоб отрабатывали скрипты? _________________ cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Mon Oct 19, 2009 23:04 Post subject: |
|
|
flm wrote: | Это просто описание процедуры, которая должна выполняться, чтоб получался необходимый результат. |
Я, всё таки, думаю, что такую процедуру должен для себя определять программист, а не пользователь.
flm wrote: | какие службы должны быть запущены в системе, чтоб отрабатывали скрипты? |
Ничего специально делать не надо. В винде всё работатет по умолчанию. Работоспособность может отъехать только, если с виндой проводить нестандартные действия.
flm wrote: | мне не удалось запустить скрипт |
В папке TC необходимо создать папку "Bars".
Также представленный по ссылке скрипт выполнен под английскую винду.
Переделал под русскую винду:
Code: | '=======================================================================================
' Создание в каталоге TC панели, содержащей Главное меню (Start Menu)
' Для вызова из TC необходимо в качестве параметра передать число:
' 0 - скрипт отработает один раз
' > 0 - скрипт будет висеть в памяти и обновлять панель через данное число миллисекунд
' При вызове скрипта без параметра будет изменено значение ключа в реестре,
' что остановит работу скрипта, висящего в памяти
'=======================================================================================
Option Explicit
Dim MyKey, WSH, StartMenuFile, FolderIconFile, BarsFolder, ExitButton, ExitIconFile
Dim StartMenuPath, UnknowTypeIcon
Set WSH = WScript.CreateObject("WScript.Shell")
'========== Изменяемые параметры =======================================================
MyKey = "HKCU\Software\BatyaSoft\RunningMyScript" 'Ключ в реестре
StartMenuFile = "startmenu.bar" 'Имя основного файла панели
'Иконка для папок на панели:
FolderIconFile = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\TOTALCMD.EXE,1"
'Папка в каталоге TC для формирования вложенных bar:
BarsFolder = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\Bars"
'Признак формирования кнопки выхода на предыдущую панель - 0 или 1
ExitButton = 1
'Иконка для кнопки выхода на предыдущую панель:
ExitIconFile = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\TOTALCMD.EXE,10"
'Иконка для файлов неизвестных типов:
UnknowTypeIcon = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\TOTALCMD.EXE,9"
'=======================================================================================
If WScript.Arguments.Count = 0 Then
WSH.RegWrite MyKey, "False"
Set WSH = Nothing
WScript.Quit
End If
If IsNumeric(WScript.Arguments(0)) = True Then
Dim FSO, DelFiles
Const ForWriting = 2, Hidden = 2
If WScript.Arguments(0) = 0 Then
Set FSO = CreateObject("Scripting.FileSystemObject")
If Not FSO.FolderExists(BarsFolder) Then FSO.CreateFolder BarsFolder
If FSO.GetFolder(BarsFolder).Files.Count > 0 Then
FSO.DeleteFile(BarsFolder & "\*.*")
End If
ScanningStartMenu
End If
If WScript.Arguments(0) > 0 Then
Dim MykeyValue
MykeyValue = True
WSH.RegWrite MyKey, MykeyValue
Do While MykeyValue
FSO.DeleteFile(BarsFolder & "\*.*")
ScanningStartMenu
WScript.Sleep WScript.Arguments(0)
MykeyValue = WSH.RegRead(MyKey)
Loop
End If
End If
Set WSH = Nothing
WScript.Quit
Function ScanningStartMenu
Dim F, AUSM, CUSM, AUSP, CUSP, Menu, n, i, RegTree
RegTree = "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\"
Set CUSM = FSO.GetFolder(WSH.RegRead(RegTree & "Programs"))
Set CUSP = FSO.GetFolder(WSH.RegRead(RegTree & "Start Menu"))
RegTree = "HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\"
Set AUSM = FSO.GetFolder(WSH.RegRead(RegTree & "Common Programs"))
Set AUSP = FSO.GetFolder(WSH.RegRead(RegTree & "Common Start Menu"))
StartMenuPath = WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\" & StartMenuFile
n = 0
For Each Menu in AUSM.Files
If (Menu.Attributes and Hidden) <> Hidden Then
n = n + 1
End If
Next
For Each Menu in CUSM.Files
If (Menu.Attributes and Hidden) <> Hidden Then
n = n + 1
End If
Next
For Each Menu in AUSP.Files
If (Menu.Attributes and Hidden) <> Hidden Then
n = n + 1
End If
Next
For Each Menu in CUSP.Files
If (Menu.Attributes and Hidden) <> Hidden Then
n = n + 1
End If
Next
Set F = FSO.OpenTextFile(StartMenuPath, ForWriting, True)
n = n + AUSM.SubFolders.Count + CUSM.SubFolders.Count + AUSP.SubFolders.Count + CUSP.SubFolders.Count - 1
If ExitButton = 1 Then
n = n + 2
End If
F.WriteLine "[Buttonbar]"
F.WriteLine "Buttoncount=" & n
i = 0
If ExitButton = 1 Then
F.WriteLine "button1=" & ExitIconFile
F.WriteLine "cmd1=" & WSH.ExpandEnvironmentStrings("%COMMANDER_PATH%") & "\DEFAULT.BAR"
F.WriteLine "menu1=" & "Назад"
F.WriteLine "button2="
i = 2
End If
For Each Menu in AUSM.SubFolders
' If Menu.Name <> "Programs" Then
If Menu.Name <> "Программы" Then
i = i + 1
ProcessFolder F, Menu, i, StartMenuPath
End If
Next
For Each Menu in CUSM.SubFolders
' If Menu.Name <> "Programs" Then
If Menu.Name <> "Программы" Then
i = i + 1
ProcessFolder F, Menu, i, StartMenuPath
End If
Next
For Each Menu in AUSM.Files
If (Menu.Attributes and Hidden) <> Hidden Then
i = i + 1
ProcessFile F, Menu, i
End If
Next
For Each Menu in CUSM.Files
If (Menu.Attributes and Hidden) <> Hidden Then
i = i + 1
ProcessFile F, Menu, i
End If
Next
i = i + 1
F.WriteLine "button" & i & "="
For Each Menu in AUSP.SubFolders
i = i + 1
ProcessFolder F, Menu, i, StartMenuPath
Next
For Each Menu in CUSP.SubFolders
i = i + 1
ProcessFolder F, Menu, i, StartMenuPath
Next
For Each Menu in AUSP.Files
If (Menu.Attributes and Hidden) <> Hidden Then
i = i + 1
ProcessFile F, Menu, i
End If
Next
For Each Menu in CUSP.Files
If (Menu.Attributes and Hidden) <> Hidden Then
i = i + 1
ProcessFile F, Menu, i
End If
Next
F.Close
Set Menu = Nothing
Set F = Nothing
Set AUSM = Nothing
Set CUSM = Nothing
Set AUSP = Nothing
Set CUSP = Nothing
Set FSO = Nothing
End Function
Function ProcessFolder(OTF, SubFold, j, SM)
Dim k, NewBar
NewBar = BarsFolder & "\" & SubFold.Name & ".bar"
If FSO.FileExists(NewBar) Then
k = 1
NewBar = BarsFolder & "\" & SubFold.Name & k & ".bar"
While FSO.FileExists(NewBar)
k = k + 1
NewBar = BarsFolder & "\" & SubFold.Name & k & ".bar"
Wend
End If
OTF.WriteLine "button" & j & "=" & FolderIconFile
OTF.WriteLine "cmd" & j & "=" & NewBar
OTF.WriteLine "menu" & j & "=" & SubFold.Name
OTF.WriteLine "iconic" & j & "=1"
Dim F1, Menu1, n1
Set F1 = FSO.OpenTextFile(NewBar, ForWriting, True)
n1 = 0
For Each Menu1 in SubFold.Files
If (Menu1.Attributes and Hidden) <> Hidden Then
n1 = n1 + 1
End If
Next
n1 = n1 + SubFold.SubFolders.Count
F1.WriteLine "[Buttonbar]"
If ExitButton = 1 Then
F1.WriteLine "Buttoncount=" & n1 + 2
F1.WriteLine "button1=" & ExitIconFile
F1.WriteLine "cmd1=" & SM
F1.WriteLine "menu1=" & "Назад"
F1.WriteLine "iconic1=" & "1"
F1.WriteLine "button2="
k = 2
Else
F1.WriteLine "Buttoncount=" & n1
k = 0
End If
For Each Menu1 in SubFold.SubFolders
k = k + 1
ProcessFolder F1, Menu1, k, NewBar
Next
For Each Menu1 in SubFold.Files
If (Menu1.Attributes and Hidden) <> Hidden Then
k = k + 1
ProcessFile F1, Menu1, k
End If
Next
F1.Close
Set Menu1 = Nothing
Set F1 = Nothing
End Function
Function ProcessFile(OTF, oFile, j)
If LCase(FSO.GetExtensionName(oFile.Path)) = "lnk" Then
Dim Lnk
Set Lnk = WSH.CreateShortcut(oFile.Path)
If Lnk.IconLocation <> ",0" Then
Dim LnkPath
LnkPath = Lnk.IconLocation
LnkPath = Left(LnkPath, InStrRev(LnkPath, ",") - 1)
If FSO.FileExists(LnkPath) Then
Dim Ext
Ext = LCase(FSO.GetExtensionName(LnkPath))
If Not (Ext = "exe" or Ext = "dll" or Ext = "ico" or Ext = "icl") Then
OTF.WriteLine "button" & j & "=" & FileIcon(LnkPath)
Else
OTF.WriteLine "button" & j & "=" & Lnk.IconLocation
End IF
Else
OTF.WriteLine "button" & j & "=" & Lnk.IconLocation
End IF
Else
OTF.WriteLine "button" & j & "=" & FileIcon(Lnk.TargetPath)
End If
OTF.WriteLine "cmd" & j & "=" & oFile.Path
OTF.WriteLine "menu" & j & "=" & FSO.GetBaseName(oFile.Path)
If Lnk.WorkingDirectory <> "" Then
OTF.WriteLine "path" & j & "=" & Lnk.WorkingDirectory
End If
Set Lnk = Nothing
Else
OTF.WriteLine "button" & j & "=" & FileIcon(oFile.Path)
OTF.WriteLine "cmd" & j & "=" & oFile.Path
OTF.WriteLine "menu" & j & "=" & FSO.GetBaseName(oFile.Path)
End If
End Function
Function FileIcon(FilePath)
Dim Ext
Ext = LCase(FSO.GetExtensionName(FilePath))
If Not (Ext = "exe" or Ext = "dll" or Ext = "ico" or Ext = "icl") Then
On Error Resume Next
FileIcon = WSH.RegRead("HKCR\" & WSH.RegRead("HKCR\." & Ext & "\") & "\DefaultIcon\")
If Err.Number <> 0 Then
FileIcon = UnknowTypeIcon
End If
On Error GoTo 0
Else
FileIcon = FilePath
End If
If FileIcon = "%1" or FileIcon = """%1""" Then
FileIcon = "%SystemRoot%\system32\url.dll,0"
End If
End Function |
_________________ Нет, я не сплю. Я просто медленно моргаю.
Last edited by Batya on Tue Oct 20, 2009 10:58; edited 1 time in total |
|
Back to top |
|
|
Andrey_A
Joined: 10 Apr 2009 Posts: 394 Location: Сочи
|
(Separately) Posted: Tue Oct 20, 2009 00:30 Post subject: |
|
|
Стало интересно, решил попробовать скрипт
выдаёт ошибку
Code: |
Строка: 70
Символ: 3
Ошибка: Разрешение отклонено
Код: 800A0046
Источник: Ошибка выполнения Microsoft VBScript |
Андрей А А |
|
Back to top |
|
|
flm
Joined: 09 Dec 2007 Posts: 467
|
(Separately) Posted: Tue Oct 20, 2009 03:07 Post subject: |
|
|
Batya wrote: | flm wrote: | Это просто описание процедуры, которая должна выполняться, чтоб получался необходимый результат. |
Я, всё таки, думаю, что такую процедуру должен для себя определять программист, а не пользователь.
|
Ладно, хорошо, тогда забудь всё, что я писал раньше. Вот оно новое и красивое:
"нужен скрипт, который обрабатывал бы структуру каталогов и на её основе делал кучу связаных bar-файлов." Неужели так понятнее? Или тут самое интересное - выяснять, чего же хочет просящий?
Batya wrote: |
flm wrote: | какие службы должны быть запущены в системе, чтоб отрабатывали скрипты? |
Ничего специально делать не надо. В винде всё работатет по умолчанию. Работоспособность может отъехать только, если с виндой проводить нестандартные действия.
|
Ну, если я спрашиваю, значит действия проводились, в любом случае, с этим я разобрался, скрипт запустился .
Batya wrote: |
flm wrote: | мне не удалось запустить скрипт |
В папке TC необходимо создать папку "Bars".
Также представленный по ссылке скрипт выполнен под английскую винду.
|
Да. С этим разобрался, спасибо.
Batya wrote: |
Переделал под русскую винду:
|
Спасибо. Немного о ожиданиях и о результатах:
Ожидания:
1). Подставляем скрипту путь (к примеру "c:\Documents and Settings\All Users.WINDOWS\Главное меню\Программы\")
2). Скрипт отрабатывает и на выходе получаем структуру bar-файлов с содержимым нашего пути (в данном случае "c:\Documents and Settings\All Users.WINDOWS\Главное меню\Программы\")
О результатах:
1). Чтобы заставить скрипт работать нужно:
a. создать в каталоге tc каталог bars
б. запустить скрипт с параметром 0
При этом:
- скрипт создаёт структуру только в каталоге текущего запущенного tc
- скрипт не принимает в качестве параметра путь (т.е. работает только для одной конкретной задачи, которая, к тому же, не совсем совпадает с нашей)
2). Итак, скрипт отработал, но на выходе мы получили нечто не совсем то. На сколько я понял, скрипт через реестр берёт пути к содержимому меню пуск, причём берёт от разных юзеров, на выходе получается бяка. К примеру 2 пункта "Администрирование" - хотя у меня в пуске нету их вообще , 2 пункта "Автозагрузка" и т.д. Кроме того, скрипт как бы, раз он самостоятельно берёт уровень выше "Программ" в пуске - должен создавать подпункт "Программы" в таком случае, а он этого не делает и всё содержимое меню "Программы" вываливается вместе с содержимым родительского меню... И ещё, первой кнопкой скрипт создаёт:
Code: | button1=C:\programs\tc\TOTALCMD.EXE,10
cmd1=C:\programs\tc\DEFAULT.BAR
menu1=Назад
|
Можно это убрать? И за одно пустые кнопки вида"button2="... _________________ cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Tue Oct 20, 2009 10:07 Post subject: |
|
|
flm wrote: | "нужен скрипт, который обрабатывал бы структуру каталогов и на её основе делал кучу связаных bar-файлов." Неужели так понятнее? | Вот теперь задача звучит внятно.
flm wrote: | Ну, если я спрашиваю, значит действия проводились, в любом случае, с этим я разобрался, скрипт запустился | Очень рад за вас.
1) Этого делать не хочу.
2) Скрипт и сейчас формирует структуру bar-файлов, но не для одной папки, а для для четырёх - ярлыки в кнопке Пуск текущего пользователя и всех пользователей и ярлыки папки "Прогарммы" в кнопке Пуск текущего пользователя и всех пользователей.
flm wrote: | 1). Чтобы заставить скрипт работать нужно: | Не нужно "заставлять" работать мой скрипт, нужно создать условия для его работы, которые легко понятны из шапки скрипта.
flm wrote: | работает только для одной конкретной задачи, которая, к тому же, не совсем совпадает с нашей | Извините, для вашей задачи мой скрипт не работает. Думаю, кто-нибудь сможет вам помочь решить вашу задачу. Только, вряд ли, это буду я.
flm wrote: | На сколько я понял, скрипт через реестр берёт пути к содержимому меню пуск, причём берёт от разных юзеров | Вы поняли неверно.
flm wrote: | Можно это убрать? И за одно пустые кнопки вида"button2="... | А внимательно почитать в шапке скрипта секцию "Изменяемые параметры" религия мешает?
flm wrote: | на выходе получается бяка | Ну так, никто не заставляет вас пользоваться этим скриптом. Если не устраивает, ищите другие средства решения своей задачи.
P.S. Очень сильно раздражает, когда при попытке помочь, тебе начинают высказывать претензии даже минимально не попытавшись разобраться в предлагаемой помощи. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
Batya
Joined: 15 Dec 2004 Posts: 2218 Location: Москва, Россия
|
(Separately) Posted: Tue Oct 20, 2009 11:00 Post subject: |
|
|
Andrey_A wrote: | Стало интересно, решил попробовать скрипт
выдаёт ошибку | Скорее всего проблема из-за того, что приведённый скрипт был для русской винды.
Скрипт поправил. Теперь должно работать для любого языка операционки. _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
|
flm
Joined: 09 Dec 2007 Posts: 467
|
(Separately) Posted: Tue Oct 20, 2009 11:27 Post subject: |
|
|
Batya wrote: | flm wrote: | "нужен скрипт, который обрабатывал бы структуру каталогов и на её основе делал кучу связаных bar-файлов." Неужели так понятнее? | Вот теперь задача звучит внятно.
|
)
Batya wrote: |
flm wrote: | Ну, если я спрашиваю, значит действия проводились, в любом случае, с этим я разобрался, скрипт запустился | Очень рад за вас.
|
)
Batya wrote: |
1) Этого делать не хочу.
|
Ну, если не хочешь, тогда и разговаривать не о чем.
Batya wrote: |
2) Скрипт и сейчас формирует структуру bar-файлов, но не для одной папки, а для для четырёх - ярлыки в кнопке Пуск текущего пользователя и всех пользователей и ярлыки папки "Прогарммы" в кнопке Пуск текущего пользователя и всех пользователей.
|
Да да, и в результате получаем кашу, которая не является ни копией меню "пуск", ни копией конкретного каталога... Зачем оно такое?
Batya wrote: |
flm wrote: | 1). Чтобы заставить скрипт работать нужно: | Не нужно "заставлять" работать мой скрипт, нужно создать условия для его работы, которые легко понятны из шапки скрипта.
|
Ну, как тупой юзер, я не обязан знать про параметры, читать шапки скриптов и тд. А вообще, это скорее замечание по юзабилити, нежели упрёк в чём-то... На мой взгляд, программы должны служить юзерам, а не юзеры создавать условия для работы программ. Как-то так.
Batya wrote: |
flm wrote: | работает только для одной конкретной задачи, которая, к тому же, не совсем совпадает с нашей | Извините, для вашей задачи мой скрипт не работает. Думаю, кто-нибудь сможет вам помочь решить вашу задачу. Только, вряд ли, это буду я.
|
Да, это я уже понял.
Batya wrote: |
flm wrote: | На сколько я понял, скрипт через реестр берёт пути к содержимому меню пуск, причём берёт от разных юзеров | Вы поняли неверно.
|
Ну из глобальных переменных часть пути тырит, не суть важно.
Batya wrote: |
flm wrote: | Можно это убрать? И за одно пустые кнопки вида"button2="... | А внимательно почитать в шапке скрипта секцию "Изменяемые параметры" религия мешает?
|
Вот я не вижу там параметров, которые позволяли бы убрать пустую кнопку и выход на DEFAULT.BAR, хоть убей. Может я ослеп?
Batya wrote: |
flm wrote: | на выходе получается бяка | Ну так, никто не заставляет вас пользоваться этим скриптом. Если не устраивает, ищите другие средства решения своей задачи.
|
Столько много советов, беда только в том, что я их не просил и мне они не интересны.
Batya wrote: |
P.S. Очень сильно раздражает, когда при попытке помочь, тебе начинают высказывать претензии даже минимально не попытавшись разобраться в предлагаемой помощи. |
Где конкретно ты пытался мне помочь? Ты даже не прочитал оригинального первого сообщения, в котором описывается то, что же мне требуется... Зато куча упрёков, советов, и раздражений. Надо бы попроще быть мб. _________________ cogito ergo sum
http://www.yakimchuk.ru/questions.htm - Как правильно задавать вопросы |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10255 Location: Россия, Саратов
|
(Separately) Posted: Tue Oct 20, 2009 11:50 Post subject: |
|
|
flm
Batya
Убедительно прошу либо постараться вернуть дискуссию в конструктивные рамки, либо её вовсе прекратить. Продолжать в нынешней тональности, пожалуйста, больше не надо. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|