Русский / Russian English / Английский

Сейчас на форуме:
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Основной форум —› Контекстное меню.
Посл.ответ Сообщение


Ранг: 279.1 (наставник)
Статус: Участник
wizard

Создано: 30 мая 2008 12:23 · Поправил: MACKLIA New!
Цитата · Личное сообщение · #1

Вопрос в следующем. Пишу программу которая будет совершить определённые действия с файлами.Задача состои в том ,что эти файлы будут выбираться посредством правого клика мышью и выбора своей программы в контекстном меню.Т.е.по средством добавления в реестре HKEY_CLASSES_ROOT\*\shell\Proga\command\(По умолчанию)\C:\Proga.exe %1 ,получаем в контекстном меню вкладку "Proga" при выборе которой запускаем программу C:\Proga.exe ,задача при запуске программы Proga.exe в определить именя и полного пути к файлу через меню которого была вызванна моя программа.
Если определять файл через параметры (ParamStr(1)) то встречаюсь с пробемой ,которыя состоит в том,что если в имени файла встречается пробел ,то это уже считается следующем параметром.Конечно можно определить все параметры ,но если в имени файла подрят идет несколько пробелов ,то опять получаем облом.

Определить имя процесса родителя не поможет ,т.к. он всегда будет EXPLORER.EXE.

P.S. создавал тему в разделе "программирования" ,какого фига она в "основном " появилась.


Ранг: 68.0 (постоянный)
Статус: Участник

Создано: 30 мая 2008 13:00 New!
Цитата · Личное сообщение · #2

В реестре так -> "C:\proga.exe" "%1"
В программе вызываешь GetCommandLine, он вернет такое ->"C:\proga.exe" "C:\WINDOWS\system32\calc.exe"


Ранг: 279.1 (наставник)
Статус: Участник
wizard

Создано: 30 мая 2008 13:15 · Поправил: MACKLIA New!
Цитата · Личное сообщение · #3

GetCommandLine точно ,чтото я ступил немного.Вопрос закрыт.
 eXeL@B —› Основной форум —› Контекстное меню.
Эта тема закрыта. Ответы больше не принимаются.

Видеокурс ВЗЛОМ