Урлянка

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Урлянка

Сообщение KDima » 13.05.2005 (Пт) 18:56

Как грамотно запустить новую копию браузера по умолчанке и послать его на яндекс?
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 13.05.2005 (Пт) 19:24

Код: Выделить всё
Private Const SW_SHOWNORMAL = 0
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
'...
ShellExecute 0, "open", "http://www.yandex.ru", vbNullString, vbNullString, SW_SHOWNORMAL
Моду создают модоки, а распространяют модозвоны.

Шурик
Самогонщик
Самогонщик
Аватара пользователя
 
Сообщения: 1657
Зарегистрирован: 30.06.2003 (Пн) 13:27
Откуда: из запоя :))))) Матных сообщений: 972

Сообщение Шурик » 14.05.2005 (Сб) 9:45

Код: Выделить всё
Shell "iexplore.exe http://yandex.ru"

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 14.05.2005 (Сб) 18:51

Шурик

Как грамотно запустить новую копию браузера по умолчанке и послать его на яндекс?


Пример хкора вроде рулит... тока вот на дельфях такое не повторить (мне)
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 14.05.2005 (Сб) 19:49

Кстати, мой код откроет страницу в уже существующем окне (по крайней мере, для Internet Explorer.)

А вот и код на Delphi:
Код: Выделить всё
program readthisfunnymanual;
uses ShellAPI;
procedure nav(sAddr: string);
begin
    ShellExecute(0, 'open', PAnsiChar(sAddr), nil, nil, 0);
end;

begin
    nav('http://www.yandex.ru');
end.
Моду создают модоки, а распространяют модозвоны.

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 14.05.2005 (Сб) 20:53

А дельфёвый?
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 14.05.2005 (Сб) 21:01

В смысле? Это и есть код для Delphi. Инструкция по применению:
1) Открываешь Delphi (у меня 7-я версия). Автоматически создается проект с модулем и формой.
2) Закрываешь окна автоматически созданной формы и модуля. На вопрос IDE о сохранении файлов ответь "No".
3) Project>View Source. Удаляешь весь текст в окне редактора, вставляешь код с форума.
4) File>Save Project - сохраняешь проект.
5) Запуск: F9. Вуаля - появляется страница Яндекса!
Моду создают модоки, а распространяют модозвоны.

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 14.05.2005 (Сб) 21:20

:D

мой код откроет страницу в уже существующем окне


А дельфёвый?
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 14.05.2005 (Сб) 21:41

Дошло :oops:

Как ты думаешь, Дима, API-функции при вызове из VB и из Delphi разные? Если есть уже открытое окно IE, сайт будет показан в нем. Как при использовании VB, так и Delphi. Проверено кувал... то есть методом научного тыка :)
Моду создают модоки, а распространяют модозвоны.

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 15.05.2005 (Вс) 15:17

Код: Выделить всё
uses ShellAPI;


Тык это не значит, что тут есть некая библа в которой это уже написанно?
Может в ней не API используется?
:roll:

З.Ы. Ура! Вправил клаве мозги! Теперь раскладка переключается!
З.Ы. хКОР => hCORe, hCORe Работает! :)
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 15.05.2005 (Вс) 16:04

ShellAPI.pas {полный путь: \source\rtl\win\shellapi.pas из-под директории Delphi} - это модуль (а не библиотека!), содержащий объявления функций из системной библиотеки shell32.dll. Мини-подсказка: в Delphi IDE, подведи указатель мыши к строчке ShellAPI и, удерживая Ctrl, нажми левую кнопку. Что наблюдаешь?

Я - вот это:
Код: Выделить всё
{*******************************************************}
{                                                       }
{       Borland Delphi Run-time Library                 }
{       Win32 Shell API Interface Unit                  }
{                                                       }
{       Copyright (c) 1985-1999, Microsoft Corporation  }
{                                                       }
{       Translator: Borland Software Corporation        }
{                                                       }
{*******************************************************}

unit ShellAPI;


А функции там объявляются, соответственно, вот так:
Код: Выделить всё
{$EXTERNALSYM ShellExecute}
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
  Directory: PChar; ShowCmd: Integer): HINST; stdcall;
Моду создают модоки, а распространяют модозвоны.

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 15.05.2005 (Вс) 18:05

Сдаюсь!
Набо было просто подумать :oops:
А кто такой PChar?
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 15.05.2005 (Вс) 18:11

Код: Выделить всё
type PChar = ^char;


То есть, PChar - указатель на символ.
Моду создают модоки, а распространяют модозвоны.

KDima
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 759
Зарегистрирован: 14.07.2004 (Ср) 23:14
Откуда: СПб

Сообщение KDima » 15.05.2005 (Вс) 18:58

На первый? :roll:
Хороший прогер не тот, кто всё знает, хороший прогер знает, где найти знание.

Последний раз редактировалось: Administrator (15.07.2004 (Вт) 00:01), всего редактировалось 999 раз(а)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 15.05.2005 (Вс) 19:06

Скорее всего, да, но я не вдавался в такие подробности. Однако помню, что char по умолчанию не wide, а ansi. Вот.
Моду создают модоки, а распространяют модозвоны.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 15.05.2005 (Вс) 19:35

А никого не смущает, что форум называется "Visual Basic"? :-?
Изображение

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 16.05.2005 (Пн) 20:07

Меня спрашивают - я отвечаю, если знаю :D
Моду создают модоки, а распространяют модозвоны.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 168

    TopList