Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
3-64005
ewgeny
2003-02-28 14:54
2003.03.20
SQLOLEDB


14-64333
calm
2003-03-03 15:15
2003.03.20
Как убрать кнопку отключения питания на клавиатуре


1-64056
spROOT13
2003-03-09 15:00
2003.03.20
Диалоговое окно замены иконки


1-64156
QUE
2003-03-07 14:26
2003.03.20
Как работать с файлом справки включенным в проект ?


14-64317
Романов Р.В.
2003-03-04 16:34
2003.03.20
Бывают в жизни совпадения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский