Автор ЛЕНА ПОЛИКАРПОВА задал вопрос в разделе Другие языки и технологии
Как в делфи сделать открытие файла? и получил лучший ответ
Ответ от Jurii[гуру]
Reset(F) - открытие. Но это тебе не нужно!
Тебе нужно курить команду ShellExecute:
Функция ShellExecute
ShellExecute( hwnd: THandle, // указатель на родительское окно
lpOperation: PChar, //выполняемая операция
lpFile: PChar, // файл или папка
lpParameters: PСhar, //строка параметров запускаемой программы
lpDirectory: PChar, // директория по умолчанию
nShowCmd: integer // состояние окна запущенной программы
);
hwnd
Определяет родительское окно, которое будет получать сообщения от запускаемого приложения (например, об ошибке при запуске) .
lpOperation
Определяет выполняемую оперерацию.
"open" - открывает файл lpFile. Файл может быть документом, приложением или папкой.
"print" - печатает файл lpFile. Файл должен быть документом. Если передано приложение, то выполняются действия, аналогичные "open".
"explore" - открывает папку lpFile в проводнике Windows.
nil - аналогично "open".
lpFile
Файл или папка. Функция может открыть или напечатать файл, открыть папку, запустить приложение.
lpParameters
Если lpFile - приложение, то lpParametrs может содержать строку параметров приложения.
Если lpFile - документ или папка, lpParameters должен быть nil.
nShowCmd
Определяет как должно выглядеть окно запущенного приложения, приведу несколько основных констант, остальные можно посмотреть в Windows SDK.
Константа
Описание
SW_HIDEСкрывает окно.
SW_MAXIMIZEРазворачивает окно.
SW_MINIMIZEСворачивает окно.
SW_SHOWMAXIMIZEDАктивизирует и разворачивает окно.
SW_SHOWMINIMIZEDАктивизирует и сворачивает окно.
SW_SHOWNORMALАктивизирует и показывает окно в состоянии, определяемым самим приложением.
Примеры использования функции.
Открытие файлов через OpenDialog:
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
ShellExecute(Self.Handle, \'open\', PChar(OpenDialog1.FileName), nil, nil, SW_SHOWNORMAL);
end;
Открытие IE с заданным URL:
ShellExecute(Self.Handle, \'open\', \' ссылка\', nil, nil, SW_SHOWMAXIMIZED);
Запуск почтового клиента:
ShellExecute(Self.Handle, \'open\', \'mailto:vasya@mail.ru\', nil, nil, SW_SHOWNORMAL);
Примечание. Для использования ShellExecute в раздел uses надо добавить модуль ShellAPI.
var t:textfile; ... assignfile(t,'1.txt'); reset(t); readln(t,s); ... closefile(t); или же более нормальный вариант: str : TStringList; ... str : =TStringList.Create; str.LoadFromFile('1.txt'); ... s
это ж в школу нужно регулярно ходить, чтоб знать...
ищи по тегам ShellAPI..
Запускай через ShellExecute, подробный синтаксис в MSDN.