Вверх ↑
Ответов: 2059
Рейтинг: 132
#1: 2017-11-27 15:53:59 ЛС | профиль | цитата
3042 писал(а):
Как у вас для Хрома, есть такое в ddeexec?

Есть.

Но я опять чего-то не догоняю.
Правильно я понимаю, что вся задача состоит в том, чтобы открыть новые вкладки из командной строки в IE?

У меня давно нет IE, по этому делаю умозрительные выводы:
Раз есть ключ -new, который запускает новое окно IE в отдельном процессе, то по умолчанию IE должен добавлять новые вкладки, или он заменяет текущую?
Аналогично работает ключ --new-window в Chromium, а по умолчанию прибавляет вкладки.

Ключи IE

— iexplore.exe url, в этом случае будет просто открыт браузер с указанным адресом, пример iexplore.exe /
— iexplore.exe -extoff позволит запустить браузер без надстроек
— iexplore.exe -new этот ключ позволит запустить новое окно IE в отдельном процессе
— iexplore.exe -nohome с помощью этого ключа, запуск браузера будет без каких либо страниц, что интересно, запуск быстрее даже когда в качестве домашней странице указано about:blank
— iexplore.exe -nomerge этот ключ используется для запуска новой сессии, к примеру чтобы быть одновременно сразу в двух аккаунтах социальной сети
— iexplore.exe -k даст возможность запустить браузер на весь экран (kiosk mode)
— iexplore.exe -slf этот ключ используется, как я понял, для принудительного открытия домашней страницы
— iexplore.exe -embedding ключ позволит запустить объект браузера IE без визуального отображения страницы
— iexplore.exe -private запуск браузера в приватном режиме, довольно удобный ключ
Ключи Chromium, тут побольше будет.

https://olegon.ru/showthread.php?t=17073
[url]https://webcache.googleusercontent.com/search?q=cache:Q0vRfPTxLbsJ:https://peter.sh/experiments/chromium-command-line-switches/+&cd=1&hl=ru&ct=clnk&gl=ru[/url]
https://elims.org.ua/blog/sovety-po-ispolzovaniyu-google-chrome/

Следовательно:
Открыть сайт в новом окне Chromium.
ShellExecute(0, 'open', 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe', '--new-window http://forum.hiasm.com/topic/66757/1',, nil, SW_SHOWNORMAL);

Открыть сайт в новой вкладке Chromium.
ShellExecute(0, 'open','C:\Program Files (x86)\Google\Chrome\Application\chrome.exe', 'http://forum.hiasm.com/topic/66757/1',, nil, SW_SHOWNORMAL);

Открыть сайт в новом окне IE
.ShellExecute(0, 'open', 'c:\Program Files (x86)\Internet Explorer\iexplore.exe', '-new http://forum.hiasm.com/topic/66757/1',, nil, SW_SHOWNORMAL);

Открыть сайт в новой вкладке IE.
ShellExecute(0, 'open','C:\Program Files (x86)\Google\Chrome\Application\iexplore.exe', 'http://forum.hiasm.com/topic/66757/1',, nil, SW_SHOWNORMAL);

Открыть сайт в браузере по умолчанию.
ShellExecute(0, 'open','http://forum.hiasm.com/topic/66757/1',, nil, SW_SHOWNORMAL);
Аналогично с компонентом WinExec.

P.S.
Кстати, чтобы не лазить в реестр, можно установить Chrome по умолчанию в командной строке --make -default-browser.
Sersey, примерь.

Add(MainForm,2953706,21,105)
{
}
Add(Button,6857501,140,308)
{
Left=15
Top=50
Width=85
Caption="Browser"
link(onClick,9268460:doWork1,[(205,314)(205,342)])
}
Add(Edit,4732400,427,224)
{
Left=120
Top=85
Width=225
Text="http://www.povarenok.ru/recipes/show/128373/"
}
Add(InlineCode,9268460,238,336)
{
WorkPoints=#7:doWork1|7:doWork2|7:doWork3|7:doWork4|
EventPoints=#6:onTrue|0:|
DataPoints=#6:Param1|6:Param2|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|38:uses kol,Share,ShellAPI,Windows,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|8: |10: public|21: Param1: THI_Event;|22: Param2: THI_Event; |19: onTrue: THI_Event;|3: |50: Procedure doWork1(var _Data:TData; Index:Word); |49: Procedure doWork2(var _Data:TData; Index:Word);|49: Procedure doWork3(var _Data:TData; Index:Word);|49: Procedure doWork4(var _Data:TData; Index:Word);|5: end;|0:|2: |15: implementation|3: |30:Procedure THiAsmClass.doWork1;|0:|5:begin|0:|104:ShellExecute(0, 'open', PChar(ToStringEvent(Param2)), PChar(ToStringEvent(Param1)), nil, SW_SHOWNORMAL);|30: _hi_OnEvent(onTrue,'OK') ;|7: end;|31:Procedure THiAsmClass.doWork2; |5:begin|0:|80:ShellExecute(0, 'open', PChar(ToStringEvent(Param1)), nil, nil, SW_SHOWNORMAL); |30: _hi_OnEvent(onTrue,'OK') ;|7: end;|3: |32: Procedure THiAsmClass.doWork3; |5:begin|0:|122:ShellExecute(0, 'open', PChar(ToStringEvent(Param2)),PChar('--new-window ' + ToStringEvent(Param1)), nil, SW_SHOWNORMAL); |30: _hi_OnEvent(onTrue,'OK') ;|9: end; |32: Procedure THiAsmClass.doWork4; |5:begin|0:|114:ShellExecute(0, 'open', PChar(ToStringEvent(Param2)),PChar('-new ' + ToStringEvent(Param1)), nil, SW_SHOWNORMAL); |30: _hi_OnEvent(onTrue,'OK') ;|12: end; |0:|4:end.|
link(Param1,4732400:Text,[(244,303)(433,303)])
link(Param2,14267906:Text,[(251,300)(238,300)])
}
Add(Edit,14267906,232,231)
{
Left=120
Top=50
Width=225
Text="c:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
}
Add(Button,4272316,140,364)
{
Left=15
Top=90
Width=85
Caption="По умолчанию"
link(onClick,9268460:doWork2,[(190,370)(190,349)])
}
Add(Button,5819255,140,413)
{
Left=20
Top=125
Width=75
Caption="New chrome"
link(onClick,9268460:doWork3,[(205,419)(205,356)])
}
Add(Button,15280467,142,456)
{
Left=20
Top=155
Width=75
Caption="New IE"
link(onClick,9268460:doWork4,[(206,462)(206,363)])
}

карма: 6

0
Редактировалось 7 раз(а), последний 2017-11-27 17:06:12