![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Привет всем! Помогите с одним маленьким кодом ... Есть форма, на ней есть Edit1 - и мне нужно сделать так, что бы через стандартный или какой либо другой браузер заходило на какой либо сайт, введенный через Edit1.TEXT.
Например : в Edit1.Text:='www.yandex.ru' нажимаешь на кнопку или Enter и у тебя уходит на этот сайт !!! |
|
#2
|
||||
|
||||
|
Цитата:
|
|
#3
|
|||
|
|||
|
ShellExecute - у меня с этой функцией как бы я клево все не делал получается ТАКАЯ ФИГНЯ = я ввожу веб адресс и вместо того что бы я ушел на какой либо сайт у меня Открывается Explorel и папка мои документы
|
|
#4
|
|||
|
|||
|
Так что? Не кто не знает что ли?
|
|
#5
|
||||
|
||||
|
Покажи как и с каким параметром вызываешь ShellExecute
|
|
#6
|
|||
|
|||
|
Так как я делаю у меня не получается и нет смысла этого показывать!
короче нужна лишь одна строчка uses ShellAPI; .... var s:string; begin s:=Edit1.Text; //////////////////// вот тут что нужно ввести? end; |
|
#7
|
|||
|
|||
|
Код:
ShellExecute(0, nil, PChar(Edit1.Text), nil, nil, SW_ShowNormal); Последний раз редактировалось Kapitoshka438, 19.11.2009 в 16:55. |
|
#8
|
|||
|
|||
|
ShellExecute(0, nil, PChar(Edit1.Text), nil, nil, SW_ShowNormal);
На веб сайты не переходит по такой схеме, работает только локально(по вводу диска "С:\")!!! Нужно другой вариант какой то .... ![]() |
|
#9
|
|||
|
|||
|
А какой браузер у вас в ОС стоит по умолчанию?
|
|
#10
|
|||
|
|||
|
У меня так то их три! Ну по умолчанию стоит Mazila. Дело опять же не в этом! У каждой системы свой путь к этому браузеру и поэтому нет повода прописывать ДОПУСТИМЫЙ. Например у меня на севене она находится не в program files а program files(86х) ... Поэтому лучше вызвать процедуру без использования пути
![]() |
|
#11
|
|||
|
|||
|
Дело не в пути. Просто у меня, если использовать код, который я написал, ссылка открывается в браузере, которы стоит по умолчанию. Я пробовал ставить по умолчанию Opera и Internet Explorer.
|
|
#12
|
|||
|
|||
|
А если моей программой будут другие пользоваться ? Не у всех же будет Стоять Опера или ИЭ?
Я весь инет облазил не где не нашел не чего нового ![]() |
|
#13
|
|||
|
|||
|
Вот такой дурацкий способ я нашел.
Код:
uses Registry;
procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
KeyName: string;
ValueStr: string;
S: string;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_CLASSES_ROOT;
KeyName := 'htmlfile\shell\open\command';
if Reg.OpenKey(KeyName, False) then
begin
ValueStr := Reg.ReadString('');
Reg.CloseKey;
end
finally
Reg.Free;
end;
S := Copy(ValueStr, 2, Length(ValueStr) - Pos('"', ReverseString(ValueStr)) - 1);
ShellExecute(0, 'open', PChar(S), PChar(Edit1.Text), nil, SW_SHOW);
end;здесь ищется путь к браузеру по умолчанию. |
|
#14
|
|||
|
|||
|
А если их пользователь удаляет ??? Мне нужно что бы навярника
![]() |
|
#15
|
|||
|
|||
|
Ну если пользователь удалит браузер, который стоял у него по умолчанию, то таким браузером станет какой-нибудь другой. И написанный выше код найдет его в реестре.
А вообще, мне кажется, первый вариант, который я предложил, должен работать, просто что-то не так с вашей системой. У меня работает, я проверял еще на нескольких компьютерах. |