Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2010, 11:48   #1
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию открытие каталога в дкльфи

На timage прописал:
Код:
WinExec('antivir', SW_SHOW)
не работает, хотя
Код:
WinExec('proga.exe', SW_SHOW)
работает.
Я так понял не поддерживает открытие каталогов. Еще читал про shellexecute но там слишком запутано. Так чем лучше пользоваться, чтобы открыть каталог (папку)?
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Старый 09.01.2010, 11:56   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

всмысле открыть каталог то?

чтоб открылась нужная папка то пишем
Код:
uses ShellAPI;

procedure OpenFolder(Path:string);
begin
ShellExecute(0,nil,'explorer.exe',PChar(Path),PChar(Path),SW_SHOW);
end;
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 09.01.2010, 12:16   #3
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
всмысле открыть каталог то?

чтоб открылась нужная папка то пишем
Код:
uses ShellAPI;

procedure OpenFolder(Path:string);
begin
ShellExecute(0,nil,'explorer.exe',PChar(Path),PChar(Path),SW_SHOW);
end;
что-то не понял про
Код:
procedure OpenFolder(Path:string);
мне надо для timage прописать
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Старый 09.01.2010, 12:17   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
мне надо для timage прописать
Всмысле? TImage не работает с каталогами.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.01.2010, 12:19   #5
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию

тогда на speedbutton
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Старый 09.01.2010, 12:23   #6
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

в событии onClick компонента
пиши
Код:
OpenFolder(path);
где path переменная типа String, содержащая путь к папке, которую надо открыть
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 09.01.2010, 12:24   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ты яснее можешь выражаться?
Если тебе нужно чтоб каталок открылся по клику компонента, то пропиши ту процедуру в событии клика.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.01.2010, 12:30   #8
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию

теперь совсем запутался, вот так не открывает
Код:
procedure TForm1.SpeedButton1Click(Sender: TObject);
var  Path:string;
begin
ShellExecute(0,nil,'antivir',PChar(Path),PChar(Path),SW_SHOW);
end;
если чтото писать вместо path то он ругается, и зачем 2 раза нужен PChar(Path)?
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Старый 09.01.2010, 12:32   #9
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Код:
ShellExecute(0,nil,'antivir',PChar(Path),PChar(Path),SW_SHOW);
найдите разницу между вашим и вот этим
Код:
ShellExecute(0,nil,'explorer.exe',PChar(Path),PChar(Path),SW_SHOW);
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 09.01.2010, 12:35   #10
grom333
Форумчанин
 
Аватар для grom333
 
Регистрация: 21.10.2008
Сообщений: 337
По умолчанию

Цитата:
Сообщение от ОДИНОЧЕСТВО В СЕТИ Посмотреть сообщение
Код:
ShellExecute(0,nil,'antivir',PChar(Path),PChar(Path),SW_SHOW);
найдите разницу между вашим и вот этим
Код:
ShellExecute(0,nil,'explorer.exe',PChar(Path),PChar(Path),SW_SHOW);
разницу нашел... но скорее всего я бы не написал вместо исходного explorer.exe мою папку, если бы знал куда написать путь.
Лучше быть последним из львов, чем первым среди шакалов.
Мой чат
community on struggle with zoomics
grom333 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
CppWEbBrowser. Запрет на открытие нового окна, и открытие его в том же окне Askar_g Общие вопросы C/C++ 4 25.06.2011 20:00
Удаление каталога Manager Общие вопросы C/C++ 1 24.10.2009 11:30
Монитор каталога BOBAH13 Win Api 0 08.10.2008 21:48
Шифрование каталога _SERGEYX_ Безопасность, Шифрование 3 02.08.2007 15:16
как перехватить открытие чужого приложенияпытаюсь перехватить открытие любого приложе rpy3uH Win Api 2 02.12.2006 12:12