![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не устраивает ShellExecute-ссылка [D6, Win95/98]
Dr. Genius © (2005-01-04 11:00:00)С помощью функции ShellExecute можно сделать ссылку на форме программы. При открытии этой ссылки запускается окно браузера. Но если браузер уже запущен до того, то при нажатии на ShellExecute-ссылку, браузер открывает новую ссылку в уже открытом окне. Можно ли это дело исправить? Можно ли открыть ссылку в новом окне в независимости от того, открыт сейчас браузер или нет? Я поискал в Интернете, но ничего насчёт решения этой проблемы не нашёл…
Dr. Genius (2005-01-05 16:20:00) [1]Премного благодарен!
easy (2005-01-04 14:23:00) [2]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
shellapi, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure Label1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function DefaultBrowser: string;
var
tmp,res: array [0..MAX_PATH] of char;
begin
GetTempPath(255, tmp);
FileCreate(tmp + 'htmpl.htm');
FindExecutable('htmpl.htm', tmp, Res);
Result := res;
SysUtils.DeleteFile(tmp + 'htmpl.htm');
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
with label1 do begin
caption:=' http://delphimaster.ru';
cursor:=crHandPoint;
font.Color:=clBlue;
font.style:=[fsunderline];
end;
end;
procedure TForm1.Label1Click(Sender: TObject);
begin
shellexecute(0, 'open', pchar(DefaultBrowser),
pchar(TLabel(Sender).Caption), '', SW_SHOWNORMAL);
end;
end.