Форум: "Основная";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];
ВнизКак открыть файл? Найти похожие ветки
← →
ден555 (2003-03-08 14:34) [0]Здравствуйте!
Недавно начал изучать Delphi и упёрся в вопрос:
допустим,при нажатии на button1 должен открыться файл (x.exe)
procedure TForm1.Button1Click(Sender: TObject);
begin
???
end;
А что надо вставить вместо ??? ?
Заранее спасибо!
← →
Palladin (2003-03-08 14:36) [1]как открытся?
← →
X3coder (2003-03-08 14:43) [2]ShellExecute() чтоли??
← →
Anatoly Podgoretsky (2003-03-08 14:54) [3]Зачем открывать и для чего?
← →
Романов Р.В. (2003-03-08 15:03) [4]Консервным ножом. Но закусывать лучше огурцами.
← →
MAN-In-RED (2003-03-08 15:06) [5]
if ShellExecute(0,nil,
{1},
{2},
{3},
1)<32 then
// Если файл не найден, или не может быть открыт...
ShowMessage("Error!");
// 1: Имя файла, пример: "notepad.exe";
// 2: Параметры, пример: "C:\WINDOWS\win.ini";
// 3: Директория в которой он находится, пример: "c:\windows";
Если нужно именно открыть файл, а не загрузить в TMemo, для примера...
← →
Intell (2003-03-08 15:19) [6]16 и 32 разрядный вызов (работает на разных операционных системах)
procedure TForm1.Button1Click(Sender: TObject);
begin
winexec(pchar("notepad.exe"),sw_shownormal);
end;
Есть другой способ - 32 разрядный (работает только под Windows, но быстрее предыдущего)
добавляем модуль ShellAPI в USES
procedure TForm1.Button1Click(Sender: TObject);
begin
ShellExecute(Handle,nil,PChar("notepad.exe"),nil,nil,SW_ShowNormal);
end;
Ещё один способ - открывает не только *.exe файлы, как предыдущие, а открывает по маске
добавляем модуль ShellAPI в USES
procedure TForm1.Button1Click(Sender: TObject);
begin
ShellExecute(Application.Handle, "open", "C:\мои документы\Doc1.doc", nil, nil, sw_ShowNormal);
end;
Другой способ - открывает ссылки в инет:
добавляем модуль ShellAPI в USES
procedure TForm1.Label1Click(Sender: TObject);
begin
ShellExecute(0, "open", " http://www.pl-computers.ru", "", "", SW_Show);
end;
открывает ссылки Email:
procedure TForm1.Label1Click(Sender: TObject);
begin
ShellExecute(0, "open", "mailto:sergein@nojabrsk.ru", "", "", SW_Show);
end;
Другой способ: (Не забудьте добавить Shellapi в Uses)
function ExecuteFile(const FileName, Params, DefaultDir: string; ShowCmd: Integer): THandle;
var
zFileName, zParams, zDir: array[0..79] of Char;
begin
Result := ShellExecute(Application.MainForm.Handle, nil,
StrPCopy(zFileName, FileName), StrPCopy(zParams, Params),
StrPCopy(zDir, DefaultDir), ShowCmd);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ExecuteFile("maker.exe","text_file","c:\maker", SW_SHOWNORMAL);
end;
Intell
sergein@nojabrsk.ru
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.03.20;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c