Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запуск файлов без winexec и ShellExecute... [D5, WinXP]


Gizza ©   (2006-02-13 16:43:00) 

Доброго времени.
Перейду сразу к вопросу:
Вообщем, мне надо сделать кнопку, которая бы запускала определенный файл. Впринципе, это легко:

procedure TForm1.Button1Click(Sender: TObject);
begin
winexec('proga.exe',SW_RESTORE);
end;

Но путь к файлу (да и сам файл) прописаны в edit1, логично было бы написать:

procedure TForm1.Button1Click(Sender: TObject);
begin
winexec('edit1.text',SW_RESTORE);
end;

Но это не работает... Без кавычек тоже ни как...
С ShellExecuteтоже не выходит...
Помогите пожалулуйста.


ExE   (2006-02-16 10:29:00) [1]

winexec(PCHAP(edit1.text),SW_RESTORE);


Zeqfreed   (2006-02-15 12:49:00) [2]

тогда уж так: WinExec(IncludeTrailingPathDelimiter(Edit1.Text) + 'proga.exe', SW_RESTORE);;-)


КиТаЯц   (2006-02-15 12:43:00) [3]

Может это надо?
winexec( edit1.text+'\'+'proga.exe',SW_RESTORE)
????


Плохиш   (2006-02-15 11:30:00) [4]


> Это не работает:
> winexec('edit1.text',SW_RESTORE);
> (ну всмысле winexec счиетает edit1.text программой, а не
> "местом", где она прописана)

А прочитать справку по winexec религия не позволяет?

> Без кавычек тоже ни как...
> winexec(edit1.text,SW_RESTORE);
> Говорит: Undeclared identifier: 'proga'

Судя по "Undeclared identifier" это сообщение компилятора, а т.к. в приведённой строке букв "proga" не наблюдается, то ответ один "Исправь ошибку в 17й строке".

PS. winexec(edit1.text,SW_RESTORE);является вполне рабочим участком кода, будет выполнена команда, записанная в edit1.text.


Gizza   (2006-02-15 11:22:00) [5]

> Можно перевести это всё на русский язык.

Это не работает:
winexec('edit1.text',SW_RESTORE);
(ну всмысле winexecсчиетает edit1.textпрограммой, а не "местом", где она прописана)

Без кавычек тоже ни как...
winexec(edit1.text,SW_RESTORE);
Говорит: Undeclared identifier: 'proga'


Gizza   (2006-02-15 11:22:00) [6]

> Можно перевести это всё на русский язык.

Это не работает:
winexec('edit1.text',SW_RESTORE);
(ну всмысле winexecсчиетает edit1.textпрограммой, а не "местом", где она прописана)

Без кавычек тоже ни как...
winexec(edit1.text,SW_RESTORE);
Говорит: Undeclared identifier: 'pr


Gizza   (2006-02-15 11:21:00) [7]

> Можно перевести это всё на русский язык.

Это не работает:
winexec('edit1.text',SW_RESTORE);
(ну всмысле winexecсчиетает edit1.textпрограммой, а не "местом", где она прописана)

Без кавычек тоже ни как...
winexec(edit1.text,SW_RESTORE);
Говорит: Undeclared identifier: 'proga'


azl   (2006-02-13 18:05:00) [8]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, ShellApi, StdCtrls;

procedure TForm1.Button1Click(Sender: TObject);
begin
 ShellExecute(0, PChar('Open'), PChar(Edit1.Text), nil, PChar(Edit1.Text), SW_SHOW);
end;


Плохиш   (2006-02-13 17:44:00) [9]


> Но это не работает... Без кавычек тоже ни как...

Можно перевести это всё на русский язык.


Кефир87   (2006-02-13 17:32:00) [10]


> Рамиль ©   (13.02.06 17:28) [3]

@Edit1.Text[1]
8))


Рамиль   (2006-02-13 17:28:00) [11]

... PChar(Edit1.Text) ...


kaZaNoVa   (2006-02-13 16:49:00) [12]

CreateProcess


Anatoly Podgoretsky   (2006-02-13 16:46:00) [13]

winexec не предназначен для запуска файлов, только программ.
А ShellExecute может, если настроена ассоциация.


Наверх

Титульная страница Поиск, карта сайта Написать письмо