51 (изменено: Xameleon, 2017-02-10 12:48:59)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

koros, ааа. Пардон. Туплю. Да, я поэтому и решил, что стоит из shell32 всё-таки дёргать. Там, по идее, сдвига ID-шников не должно быть.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

52

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Мда, как г..рится, дело было тёмной ночью, глаза слипались... Как следствие, вылет этой очевидности из головы.

Xameleon
ОК. В теме только файл на shell32.dll замените.

koros, Xameleon
Идея с упрощённым вариантом для нашего глагола ясна? Тесты на разных системах интересуют. Особенно иностранных.

53

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher,

ОК. В теме только файл на shell32.dll замените.

Благодарю. Не заметил. Сейчас пересобрал сие чудо в WSC и обновил темку.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

54

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Гуд. А по второму что?

55

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, со вторым беда, шеф. Надо виртуалку подымать. ) Пока под рукой подходящего железа нет.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

56

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Железа или оси? Т.е. под рукой чего-то кроме XP/7 нет? Или нет системы с другой локалью?

57

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, железа. На рабочем компе не рискую виртуалку разворачивать, да и ресурсов маловато. Под рукой для теста Win 10 Pro (RU).

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

58

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Так 10-ку никто не отменял. smile Там работает?

59 (изменено: Xameleon, 2017-02-10 18:21:35)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, Не смог проверить. sad

1. Взял Ваш скрипт из сообщения: ссылка
2. Запустил

На экране никаких сообщений.

Поизучал на каком шаге отваливается:


If VarType(Opera) = 9 Then WSH.Quit

У меня VarType(Opera) именно 9, т.е [Nothing] и по тексту происходит выход. Хотя у меня опера установлена и ярлык ярко режет глаз на рабочем столе.

Где я косячу ?

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

60

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Путь в 3 строке %ProgramFiles%\Opera\Opera.exe где-то не соответствует реальности.
Если Opera 32-битная, т.е. лежит в папке Program Files (x86), и запуск производится из 64-битного Проводника/файлменеджера, то тут и возникает проблемка, тогда путь можно на прямой заменить для теста ("C:\Program Files (x86)\ вмеcто WSS.Environment("Process")("PROGRAMFILES") & "). Просто я писал чисто под инсталлятор.

61

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, ааа. Ясно. А у меня опера 64-битная. Поэтому и не срабатывает.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

62

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Т.е., полагается, файлменедждер, откуда производится попытка запуска, 32-хбитный? Из Проводника-то должно работать.

63 (изменено: Xameleon, 2017-02-10 19:46:19)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, ммм... Почему 32-битный ? Win 10 PRO x64, соответствено и exlorer 64-битный. ОС 64-битная, поэтому решил оперу 64-битную поставить. )

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

64

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Т.е. скрипт запускался из Проводника? И точный путь к Opera такой же?

65 (изменено: Xameleon, 2017-02-10 20:24:28)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, скрипт запускал с рабочего стола. Путь, т.к Opera 64-битная и ОС 64-битная - "C:\Program Files\Opera\launcher.exe" вместо "C:\Program Files (x86)\Opera\launcher.exe". Т.е в родном, для своей разрядности, каталоге лежит.

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

66

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Только речь идёт об opera.exe, а не launcher.exe.

MsgBox CreateObject("WScript.Shell").Environment("Process")("PROGRAMFILES") & "\Opera\Opera.exe"

Что возвращает такой скрипт?

67 (изменено: Xameleon, 2017-02-10 20:46:56)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher,

---------------------------

---------------------------
C:\Program Files\Opera\Opera.exe
---------------------------
ОК   
---------------------------

Я намеренно указал "launcher.exe", т.к у меня в каталоге нет Opera.exe. Предположил, что это тоже может быть важно. neutral

Или там должен в последствии появиться файл Opera.exe ?

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

68

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Аа.. А почему его нет там? Я сам лично почти уже не пользуюсь Opera, но для проверки скачал сейчас последнюю на базе Blink и увидел рядом с launcher.exe и opera.exe. Изначально ведь обсуждался инсталлятор с opera.exe. Сам файл там никак появиться не может. После замены имени на launcher.exe тоже не срабатывает?

69

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Немного вмешаюсь в обсуждение.
Неважно какой exe-шник пытаться прикрепить на панель задач. Можно взять любую портабельную программу, например, AkelPad и положить в папку с прстым путем, типа c:\temp. и уже с этим файлом проводить эксперименты.
Также у меня на виртуалке установленно несколько ситем (есть даже китайская 7) - могу потестировать.

70

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

koros
Так тестируйте. Вам же в первую очередь надо. Тем более, что в вашем случае путь совпадает.

71 (изменено: Xameleon, 2017-02-10 21:26:02)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher, честно говоря не знаю. Я тоже оперой не пользуюсь. Поставил в момент начала участия в теме. Т.е, по идее, тоже самая последняя версия, взятая с opera.com. У меня версия файла launcher.exe - 43.0.2442.806. Такая же и у OperaSetup.exe, которым производил установку.

OperaSetup.exe MD5: 17d6db08410330581b1c8832a3405f07

Вот дерево в каталоге:

+ открыть спойлер

>tree /F "C:\Program Files\Opera"
Структура папок
Серийный номер тома: ACFC-B90F
C:\PROGRAM FILES\OPERA
│   installation_status.xml
│   installer_prefs.json
│   launcher.exe
│   launcher.visualelementsmanifest.xml
│   pref_default_overrides
│   Resources.pri
│   server_tracking_data

├───43.0.2442.806
│   │   d3dcompiler_47.dll
│   │   icudtl.dat
│   │   installer.exe
│   │   libEGL.dll
│   │   libGLESv2.dll
│   │   message_center_win8.dll
│   │   msvcp100.dll
│   │   msvcp140.dll
│   │   msvcr100.dll
│   │   natives_blob.bin
│   │   opera.exe
│   │   opera.pak
│   │   opera_100_percent.pak
│   │   opera_125_percent.pak
│   │   opera_150_percent.pak
│   │   opera_200_percent.pak
│   │   opera_250_percent.pak
│   │   opera_autoupdate.exe
│   │   opera_autoupdate.licenses
│   │   opera_autoupdate.version
│   │   opera_browser.dll
│   │   opera_child.dll
│   │   opera_crashreporter.exe
│   │   osmesa.dll
│   │   pgort140.dll
│   │   snapshot_blob.bin
│   │   ucrtbase.dll
│   │   vccorlib140.dll
│   │   vcruntime140.dll
│   │   win8_importing.dll
│   │
│   ├───localization
│   │       af.pak
│   │       az.pak
│   │       be.pak
│   │       bg.pak
│   │       bn.pak
│   │       ca.pak
│   │       cs.pak
│   │       da.pak
│   │       de.pak
│   │       el.pak
│   │       en-GB.pak
│   │       en-US.pak
│   │       es-419.pak
│   │       es.pak
│   │       fi.pak
│   │       fil.pak
│   │       fr-CA.pak
│   │       fr.pak
│   │       fy.pak
│   │       gd.pak
│   │       he.pak
│   │       hi.pak
│   │       hr.pak
│   │       hu.pak
│   │       id.pak
│   │       it.pak
│   │       ja.pak
│   │       kk.pak
│   │       ko.pak
│   │       lt.pak
│   │       lv.pak
│   │       me.pak
│   │       mk.pak
│   │       ms.pak
│   │       nb.pak
│   │       nl.pak
│   │       nn.pak
│   │       pa.pak
│   │       pl.pak
│   │       pt-BR.pak
│   │       pt-PT.pak
│   │       ro.pak
│   │       ru.pak
│   │       sk.pak
│   │       sr.pak
│   │       sv.pak
│   │       sw.pak
│   │       ta.pak
│   │       te.pak
│   │       th.pak
│   │       tr.pak
│   │       uk.pak
│   │       uz.pak
│   │       vi.pak
│   │       zh-CN.pak
│   │       zh-TW.pak
│   │       zu.pak
│   │
│   ├───resources
│   │   │   013E742B-287B-4228-A0B9-BD617E4E02A4.ico
│   │   │   07593226-C5C5-438B-86BE-3F6361CD5B10.ico
│   │   │   0CD5F3A0-8BF6-11E2-9E96-0800200C9A66.ico
│   │   │   1AF2CDD0-8BF3-11E2-9E96-0800200C9A66.ico
│   │   │   1CF37043-6733-479C-9086-7B21A2292DDA.ico
│   │   │   2A3F5C20-8BF5-11E2-9E96-0800200C9A66.ico
│   │   │   2F8F0E41-F521-45A4-9691-F664AFAFE67F.ico
│   │   │   3B6191A0-8BF3-11E2-9E96-0800200C9A66.ico
│   │   │   3BFDFA54-5DD6-4DFF-8B6C-C1715F306D6B.ico
│   │   │   4C95ADC1-5FD9-449D-BC75-77CA217403AE.ico
│   │   │   5BBBDD5B-EDC7-4168-9F5D-290AF826E716.ico
│   │   │   66DD4BB6-A3BA-4B11-AF7A-F4BF23E073B2.ico
│   │   │   6D3582E1-6013-429F-BB34-C75B90CDD1F8.ico
│   │   │   76C397A8-9E8E-4706-8203-BD2878E9C618.ico
│   │   │   8D754F20-8BF5-11E2-9E96-0800200C9A66.ico
│   │   │   ab_tests.json
│   │   │   AD2FD2BD-0727-4AF7-8917-AAED8627ED47.ico
│   │   │   adblocker_rules.json
│   │   │   B478FE0C-0761-41C3-946F-CD1340356039.ico
│   │   │   browser.js
│   │   │   C665D993-1B49-4C2E-962C-BEB19993BB86.ico
│   │   │   CCCED631-6DA2-4060-9824-95737E64350C.ico
│   │   │   CFCE84E5-9A95-4B3F-B8E4-3E98CF7EE6C5.ico
│   │   │   CFD4BE41-4C6D-496A-ADDB-4095DFA1DD0E.ico
│   │   │   default_localized_themes.json
│   │   │   default_partner_content.json
│   │   │   dictionaries.xml
│   │   │   ev_hashes_whitelist.bin
│   │   │   F3F34CBB-24FF-4830-9E87-1663E7A0A5EE.ico
│   │   │   F98D4D4C-8AA7-4619-A1E7-AC89B24558DD.ico
│   │   │   FDC2CCAB-E8F9-4620-91DD-B0B67285997C.ico
│   │   │   FF57F01A-0718-44B7-8A1F-8B15BC33A50B.ico
│   │   │   FFF3F819-B6CE-4DE6-B4E4-8E2618ABC0D9.ico
│   │   │   license.txt
│   │   │
│   │   └───standard_themes
│   │           darkbreeze.zip
│   │           default_theme.zip
│   │           feathers.zip
│   │           grey.zip
│   │           landscape_photo.zip
│   │           mesh.zip
│   │           reine.zip
│   │
│   └───WidevineCdm
│       └───_platform_specific
│           └───win_x64
│                   widevinecdmadapter.dll

└───Assets
        150x150Logo.scale-100.png
        150x150Logo.scale-100_contrast-white.png
        150x150Logo.scale-140.png
        150x150Logo.scale-140_contrast-white.png
        150x150Logo.scale-180.png
        150x150Logo.scale-180_contrast-white.png
        150x150Logo.scale-80.png
        150x150Logo.scale-80_contrast-white.png
        70x70Logo.scale-100.png
        70x70Logo.scale-100_contrast-white.png
        70x70Logo.scale-140.png
        70x70Logo.scale-140_contrast-white.png
        70x70Logo.scale-180.png
        70x70Logo.scale-180_contrast-white.png
        70x70Logo.scale-80.png
        70x70Logo.scale-80_contrast-white.png
        notification_default.png

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !

72

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Xameleon
Понял. Я-то её по старинке распаковывал. После установки в песочницу уже увидел, что opera в папке 43.0.2442.806.
Что после замены имени в 3-й строке? Как верно замечено, в данном случае неважно, какой exe-шник станет подопытным.

P.S.: Я бы сам в коде поменял на launcher, просто есть вероятность, что речь о Presto 12.18.1872.

73 (изменено: koros, 2017-02-10 23:17:16)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher пишет:

Так тестируйте

Так я пока не понял что тестировать? И, судя по вашему с Xameleon обсуждению, пока не работает.
А по поводу Оперы - я пользуюсь именно Presto. Но создание ярлыка интересует меня применительно к любым exe-шникам.

74

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

koros
На скрипт я ссылался? Ссылался. Интерес к тестам проявил? Проявил. Про то, что путь для вас годный, выше написал? Написал (1, 2). Что ещё требуется?

75 (изменено: Xameleon, 2017-02-11 12:52:58)

Re: HTA, VBS: Ярлык на панель задач с запуском от имени администратора

Flasher,
1)

Flasher пишет:

Что после замены имени в 3-й строке?

По прежнему не работает, потому что код


Verb=Split(.ResponseBody,"")(1):.Abort

заполняет переменную Verb следующим значением:

&Выбрать другое приложение2Открытие документа с помощью конкретной программы."Открытие документа с помощью "%s". &Выбрать приложение по умолчанию&Поиск в Магазине'Открытие Магазина для поиска приложения'Добавление этого элемента в меню "Пуск"&Удаление этого элемента из меню "Пуск"

Функция Split не даёт желаемого результата, потому что в выгруженных данных нет разделителей как таковых.

Структура: [размер данных][данные][размер данных][данные]...

Под размер данных выделены 2 байта (если я правильно понял). Изучал вот тут: MSDN STRINGTABLE resource

И хотел спросить - зачем нужен вызов Abort в строке ? В нём есть необходимость ?

Кстати выяснил, что значение Method

xmlhttp.Open(Method,"res://....")

, при чтение через Res протокол игнорируется. Т.е можно задать хоть "GET" / "PUT" / "ABRACADABRA" / "?", главное не пустое значение. И последний параметр асинхронности можно опустить и не указывать.

2) По поводу нахождения оперы, подумал в двух направлениях:
а) Шарить в реестре по веткам Uninstall:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

б) Посмотрел следы установки в Reg Organizer и вроде можно зацепиться за парочку путей, но не знаю как это будет работать на старых версиях оперы, разных разрядностях ос и 32-битных / 64-битных версиях оперы и т.п. (к тому же я пока не понял, нужно ли koros-у это):


Dim oWshShell, sTmp, sValue
Set oWshShell = CreateObject("WScript.Shell")

aRegPaths = Array( _
	"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\opera.exe\", _
	"HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\App Paths\opera.exe\" _
)

For i = 0 to Ubound(aRegPaths)
	sValue = RegRead(aRegPaths(i))
	if sValue <> "" Then
		sTmp = sTmp & "[" & i & "][" & sValue & "]" & vbCrlf
	End if
Next

MsgBox sTmp

Function RegRead(sRegPath)
	On Error Resume Next
	RegRead = oWshShell.RegRead(sRegPath)
End Function

koros,

Неважно какой exe-шник пытаться прикрепить на панель задач.

Так в итоге то нужно именно оперу закреплять или что-то другое ? O_o

Но создание ярлыка интересует меня применительно к любым exe-шникам.

Так путь до exe модуля заранее известен или его надо сначала найти ?

Передумал переделывать мир. Пашет и так, ну и ладно. Сделаю лучше свой !