:: Visual Foxpro, Foxpro for DOS
Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
shumik73

Сообщений: 543
Откуда: Алматы
Дата регистрации: 10.05.2006
Добрый день всем!

Когда-то тема открытия сайта в требуем браузере уже поднималась. А теперь и самому пришлось столкнуться - тока не помню как теперь найти.
Ситуация в следующем - нужно сформировать документ в 2 языках русском и казахском. Документов много - а переводчиком работает гугл транслейт

  • В форме заносится и сохраняется наименование на русском языке - на пример "Привет как дела" в поле " Наименование RU"
  • Кликаем на кнопку после чего открывается по команде ShellExcute сайт по адресу "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела" с уже введенным текстом в левой колонке
  • По установленным настройкам открывается браузер - на пример Internet Explorer так как этот браузер установлен по умолчанию.
  • Сайт загружается и тут же выходит перевод на казахском языке в правой колонке
  • Кликаем скопировать казахский текст в буфер и закрываем сайт
  • Переходим в поле " Наименование KZ" и вставляем значение из буфера

    Вся процедура занимает минуту. Но как оказалось translate.google.com хорошо открывается в Хроме, а вот а IE виснет намертво
    Создать Хром по умолчанию для одного пользователя не вопрос, проблема в том что пользователь подключается по RDP и таких пользователей может быть потом много. Выполнять каждый раз для каждого пользователя установку Хрома по умолчанию становится неудобством.

    Возможно есть вариант открытие сайта в хроме, не зависимо от браузера по умолчанию?
    Или хотя бы на сервере установить Хром для всех пользователей, кто будет подключаться по RDP?


    [attachment 36859 22222.png]



    Исправлено 2 раз(а). Последнее : shumik73, 05.06.24 17:27
    Ratings: 0 negative/0 positive
  • Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    leonid

    Сообщений: 3224
    Откуда: Рига
    Дата регистрации: 03.02.2006
    А нафига вообще открывать какой-то браузер? Что, очень много надо?
    cloud.google.com

    [attachment 36860 Screenshot2024-06-05174748.png]
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    akvvohinc

    Сообщений: 4497
    Откуда: Москва
    Дата регистрации: 11.11.2008
    shumik73
    Возможно есть вариант открытие сайта в хроме, не зависимо от браузера по умолчанию?
    Видимо, я не смог понять ваш вопрос правильно.
    Ведь что мешает в ShellExcute указать не только адрес, но и программу, которой он будет открываться?
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    of63

    Сообщений: 25766
    Откуда: Н.Новгород
    Дата регистрации: 13.02.2008
    () Кргда 2/N офиса, несколько браюзеров "установленных" на компе - это неправильный вопрос автора. Он хочет запуска браузера доя чего - не сказал, покажи скрипт, код на любимом ЯП, хоть что-то!
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    akvvohinc

    Сообщений: 4497
    Откуда: Москва
    Дата регистрации: 11.11.2008
    Да всё он, в принципе, написал - он вызывает ShellExecute, передавая ему только адрес, а поэтому вызывается браузер по умолчанию.
    Примерно так:
    DECLARE Long ShellExecute in Shell32 ;
    Long hWnd, ;
    String lpOperation, ;
    String lpFile, ;
    String lpParameters, ;
    String lpDirectory, ;
    Integer ShowCmd
    = ShellExecute(0, "open", 'https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела', '', '', 3)

    Но в ShellExecute можно указать и программу - другой браузер, установленный в системе, с помощью которого страница будет открыта.
    Например:
    = ShellExecute(0, "open", 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe',;
    "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела", '', 3)



    Исправлено 1 раз(а). Последнее : akvvohinc, 05.06.24 19:48
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    of63

    Сообщений: 25766
    Откуда: Н.Новгород
    Дата регистрации: 13.02.2008
    () где взять имя, путь к ЭХЕ желаемого браузера, Саня, ?

    () зачем они это делают...



    Исправлено 1 раз(а). Последнее : of63, 05.06.24 21:02
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    Joys

    Сообщений: 3567
    Дата регистрации: 25.06.2000
    из ком строки хром можно запускать как
    start chrome "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела"
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    akvvohinc

    Сообщений: 4497
    Откуда: Москва
    Дата регистрации: 11.11.2008
    of63
    где взять имя, путь к ЭХЕ желаемого браузера, Саня, ?
    Не знаю, кто здесь Саня, но я бы взял либо из реестра, либо из конфиг-файла приложения.

    Joys
    из ком строки хром можно запускать как
    start chrome "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела"
    Я проверил, через ShellExecute вызов Хрома тоже можно так же упростить:
    = ShellExecute(0, "open", 'chrome',;
    "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела", '', 3)



    Исправлено 1 раз(а). Последнее : akvvohinc, 06.06.24 00:09
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    shumik73

    Сообщений: 543
    Откуда: Алматы
    Дата регистрации: 10.05.2006
    При передачи текста в параметрах необходимо избавиться от пробелов
    STRTRAN("Привет как дела",SPACE(1),"%20")
    а то окон хром открывает столько сколько словов или словей в тесте
    :hi2:

    DECLARE INTEGER ShellExecute IN "Shell32.dll" ;
    INTEGER hwnd, ;
    STRING lpVerb, ;
    STRING lpFile, ;
    STRING lpParameters, ;
    STRING lpDirectory, ;
    LONG nShowCmd
    =Shellexecute(0, "Open", lcFileExecute , lcParamExecute , lcDirExecute , 1)
    =Shellexecute(0, "Print", lcFileExecute , lcParamExecute , lcDirExecute , 1) &&Печать
    =Shellexecute(0, "Read", lcFileExecute , lcParamExecute , lcDirExecute , 1) &&Чтение
    hwnd - указывает идентификатор окна. Это окно будет выступать в качестве родительского окна для запускаемого приложения.
    lpVerb - операция
    "open" или .NULL. - Открыть файл, указанный параметром lpFile. Файл может быть исполнимым файлом, документом или папкой
    "print" - Распечатать файл, определенный параметром lpFile. Указанный файл должен быть файлом документа
    "explore" - Функция позволяет просмотреть содержимое папки, заданной параметром lpFile с помощью приложения Microsoft Explorer
    lpFile - имя файла
    lpParameters - если запускается EXE-файла, можете передать ему строку параметров через lpParameters. Иначе указывайте в lpParameters значение NULL.
    lpDirectory - задает имя каталога, который используется по умолчанию. Можете указать .NULL.
    nShowCmd - позволяет указать режим, в котором будет запущено приложение. Этот параметр используется только при запуске исполнимых файлов.
    Для открытия или печати файла документа, этот параметр следует указать равным "0".
    nShowCmd=0 SW_HIDE — скрывает окно и активирует другое окно.
    nShowCmd=1 SW_SHOWNORMAL / SW_SHOWNORMAL — активирует и отображает окно. Если окно свернуто или развернуто, Windows восстанавливает его исходный размер и положение. Приложение должно указать этот флаг при первом отображении окна.
    nShowCmd=2 SW_SHOWMINIMIZED — активирует окно и отображает его в свернутом виде.
    nShowCmd=3 SW_SHOWMAXIMIZED / SW_MAXIMIZE — активирует окно и отображает его в развернутом виде.
    nShowCmd=4 SW_SHOWNOACTIVATE — отображает окно в его последнем размере и положении. Активное окно остается активным.
    nShowCmd=5 SW_SHOW — активирует окно и отображает его в текущем размере и положении.
    nShowCmd=6 SW_MINIMIZE — сворачивает указанное окно и активирует следующее окно верхнего уровня в порядке Z.
    nShowCmd=7 SW_SHOWMINNOACTIVE — отображает окно в свернутом виде. Активное окно остается активным.
    nShowCmd=8 SW_SHOWNA — отображает окно в его текущем состоянии. Активное окно остается активным.
    nShowCmd=9 SW_RESTORE — активирует и отображает окно. Если окно свернуто или развернуто, Windows восстанавливает его исходный размер и положение. Приложение должно указать этот флаг при восстановлении свернутого окна.
    nShowCmd=10 SW_SHOWDEFAULT — устанавливает состояние отображения на основе флага SW_, указанного в структуре STARTUPINFO, передаваемой функции CreateProcess программой, запустившей приложение.
    nShowCmd=11 SW_FORCEMINIMIZE - Сворачивает окно, даже если поток, владеющий окном, не отвечает. Этот флаг следует использовать только при сворачивании окон из другого потока.
    Если вызов ShellExecute удался, возвращаемое значение больше 31.
    В противном случае значение может быть следующим:
    Return=0 -операционной системе не хватает памяти или ресурсов.
    Return=2 -ERROR_FILE_NOT_FOUND - Указанный файл не найден.
    Return=3 -ERROR_PATH_NOT_FOUND — указанный путь не найден.
    Return=11 -ERROR_BAD_FORMAT — файл .EXE недействителен (файл .EXE, отличный от Win32, или ошибка в образе .EXE).
    Return=5 -SE_ERR_ACCESSDENIED — операционная система запретила доступ к указанному файлу.
    Return=27 -SE_ERR_ASSOCINCOMPLETE - Ассоциация имени файла неполная или недействительная.
    Return=30 -SE_ERR_DDEBUSY — транзакция DDE не может быть завершена, поскольку обрабатываются другие транзакции DDE.
    Return=29 -SE_ERR_DDEFAIL — транзакция DDE не удалась.
    Return=28 -SE_ERR_DDETIMEOUT — транзакция DDE не может быть завершена, поскольку истекло время ожидания запроса.
    Return=32 -SE_ERR_DLLNOTFOUND — указанная динамическая библиотека не найдена.
    Return=2 -SE_ERR_FNF -- Указанный файл не найден.
    Return=31 -SE_ERR_NOASSOC -- Нет приложения, связанного с данным расширением имени файла.
    Return=8 -SE_ERR_OOM -- Недостаточно памяти для завершения операции.
    Return=3 -SE_ERR_PNF -- Указанный путь не найден.
    Return=26 -SE_ERR_SHARE -- Произошло нарушение общего доступа.



    Исправлено 1 раз(а). Последнее : shumik73, 06.06.24 11:06
    Ratings: 0 negative/1 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    kornienko_ru

    Сообщений: 406
    Откуда: Владивосток
    Дата регистрации: 06.09.2015
    url='https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела'
    edge=createobject('internetexplorer.application')
    edge.navigate("microsoft-edge:"+m.url)

    У navigate и navigate2 есть параметры открыть в новой вкладке, новом окне и др. Также при желании вы можете програмно получить результат перевода в переменную VFP.
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    lemenev
    Автор

    Сообщений: 197
    Дата регистрации: 23.06.2022
    Если IE виснет намертво, то помимо гугловского есть ещё online-переводчики:
    www.online-translator.com
    и
    translate.yandex.ru

    Но мне кажется, что проблему нужно понимать шире: как перевести фразу (фрагмент текста) автоматически без участия человека.



    Исправлено 1 раз(а). Последнее : lemenev, 07.06.24 21:28
    Ratings: 0 negative/0 positive
    Re: Отрыть сайт в требуем браузере независимо от того какой браузер по умолчанию
    lemenev
    Автор

    Сообщений: 197
    Дата регистрации: 23.06.2022
    Joys
    из ком строки хром можно запускать как
    start chrome "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет как дела"

    Из VFP хром можно запускать
    RUN start chrome "https://translate.google.com/?sl=ru&tl=kk&op=translate&text=Привет, как дела"
    Ratings: 0 negative/0 positive


    Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

    On-line: 7 lemenev alex;  (Гостей: 5)

    © 2000-2024 Fox Club 
    Яндекс.Метрика