Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 4 676

/ вопрос открыт /

Доброго времени суток, уважаемые эксперты!
Я начал делать программы с помощью Delphi около недели назад поэтому еще мало что знаю. Я делал только программы подсчета формул.
У меня такой вопрос: как сделать программу с помощью Delphi что бы на форме распологались кнопки при нажатии которых открывался например Блокнот или Тотал командер.

Radmin Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Radmin (статус: Посетитель)
Вопрос отправлен: 23 октября 2010, 19:32
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 14; последнее сообщение — 30 октября 2010, 13:09; участников в обсуждении: 4.
min@y™

min@y™ (статус: Доктор наук), 24 октября 2010, 09:09 [#1]:

Положи на форму кнопку, в её обработчике OnClick напиши
ShellExecute(Handle, 'open', 'notepad.exe', nil, nil, SW_SHOWDEFAULT);
При нажатии на кнопку должен будет открыться Блокнот.
Всё остальное - по образу и подобию.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Толяныч

Толяныч (статус: 4-ый класс), 24 октября 2010, 15:53 [#2]:

Вот долго стеснялся спросить этот вопрос, а тут младший товарищ сделал это за меня. Спасибо ему, а уж ответившему - тем боле!. В развитие вопроса : а как передать открывшемуся приложению параметры, если в нем предусмотрен прием их из командной строки ( ключи и т.п. )?
min@y™

min@y™ (статус: Доктор наук), 24 октября 2010, 16:10 [#3]:

Цитата (Толяныч):

Вот долго стеснялся спросить этот вопрос, а тут младший товарищ сделал это за меня. Спасибо ему, а уж ответившему - тем боле!. В развитие вопроса : а как передать открывшемуся приложению параметры, если в нем предусмотрен прием их из командной строки ( ключи и т.п. )?

В функции ShellExecute() такая возможность предусмотрена.
HINSTANCE ShellExecute(
    HWND hwnd,  // handle to parent window
    LPCTSTR lpOperation,  // pointer to string that specifies operation to perform
    LPCTSTR lpFile,  // pointer to filename or folder name string
    LPCTSTR lpParameters,  // pointer to string that specifies executable-file parameters <--- ОНО!!!
    LPCTSTR lpDirectory,  // pointer to string that specifies default directory
    INT nShowCmd   // whether file is shown when opened
   );
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Толяныч

Толяныч (статус: 4-ый класс), 25 октября 2010, 13:10 [#4]:

Thanks, воспользуюсь.
Radmin

Radmin (статус: Посетитель), 25 октября 2010, 19:29 [#5]:

Прописываю ShellExecute(Handle, 'open', 'notepad.exe', nil, nil, SW_SHOWDEFAULT); в OnClick, но пишет вот что:ShellExecute(Handle, 'open', 'notepad.exe', nil, nil, SW_SHOWDEFAULT); is not a valid identifier
Что делать?
Вадим К

Вадим К (статус: Академик), 25 октября 2010, 20:23 [#6]:

а ShellAPI в список uses добавили?
Галочка "подтверждения прочтения" - вселенское зло.
Radmin

Radmin (статус: Посетитель), 25 октября 2010, 20:26 [#7]:

Добавил ShellAPI и теперь выскакивает Invalid property value
Вадим К

Вадим К (статус: Академик), 25 октября 2010, 23:25 [#8]:

может не туда добавили?:)
Галочка "подтверждения прочтения" - вселенское зло.
Radmin

Radmin (статус: Посетитель), 26 октября 2010, 14:56 [#9]:

uses
Windows, Messages, SysUtils, ShellAPI, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
min@y™

min@y™ (статус: Доктор наук), 26 октября 2010, 15:15 [#10]:

Код давай, тот кусок, где вызываешь ShellExecute().
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Radmin

Radmin (статус: Посетитель), 28 октября 2010, 12:02 [#11]:

Вы можете просто написать весь текст программы, на форме которой лежит кнопа Button, при нажатии на которую открывается напримет в H:\asd\прога.exe ???
min@y™

min@y™ (статус: Доктор наук), 28 октября 2010, 13:27 [#12]:

Цитата (Radmin):

Вы можете просто написать весь текст программы

Запросто.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Radmin

Radmin (статус: Посетитель), 29 октября 2010, 18:45 [#13]:

Ну так пожалуйста напишите
min@y™

min@y™ (статус: Доктор наук), 30 октября 2010, 13:09 [#14]:

Цитата (Radmin):

Ну так пожалуйста напишите

Да неохота писать-то.
Положь на форму кнопку, в её обработчик OnClick впиши:
ShellExecute(Handle, 'open', 'H:\asd\прога.exe', nil, nil, SW_SHOWDEFAULT);
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:29
Выполнено за 0.03 сек.