Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Адрес файла 
:(
    Опции темы
BIV
Дата 10.12.2012, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 20.12.2007

Репутация: 1
Всего: 1



Всем доброе время суток!
Пишу на Visual Studia C++ 2008. Механизм работы таков, выделяю файл или папку, вызываю контекстное меню, через это контекстное меню запускаю мою программу. Как добавлять программу в контекстное меню я узнал здесь, вопрос в том, как в запущенной программе получить адрес файла или папки из которого вызвал меню?
Эффект должен быть как в свойствах папки или файла во вкладке "Общие" в "Расположение"

Это сообщение отредактировал(а) BIV - 10.12.2012, 21:39
PM MAIL   Вверх
tzirechnoy
Дата 10.12.2012, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: -1
Всего: 16



Берясь за новую для тебя, но вполне известную человечеству область деятельности -- несколько опрометчиво пытаться изобрести всё самому, без учёта накопленного и доступного опыта. Сборниками такого опыта обычно являются учебники.
И C++ и программирование -- это именно такая, новая для тебя, область деятельности.

Возьми, наконец, учебник, и пройди его (не прочитай дажэ, а прочитай и прорешай задачи)!
Поможэт хотя бы с термнологией.
PM MAIL   Вверх
BIV
Дата 10.12.2012, 22:01 (ссылка)    | (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 20.12.2007

Репутация: 1
Всего: 1



Ничего себе ответ. Я уже прочел книги Рихтера, Румянцева и Майкла Дж.Янга. Находил как получить адреса если файл открыть обычным способом, но через контекстное меню ни разу не встречал. Прошу внимательно прочесть мой вопрос
PM MAIL   Вверх
tzirechnoy
Дата 10.12.2012, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: -1
Всего: 16



И чем жэ ты читал эти книги, если до сих пор считаешь, что файл в windows идэнтифицыруется адресом?
PM MAIL   Вверх
BIV
Дата 10.12.2012, 22:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 20.12.2007

Репутация: 1
Всего: 1



Имел бы смысл это писать если потом будет пояснение что я понимаю не так и как можно решить эту поставленную задачу
PM MAIL   Вверх
volatile
Дата 10.12.2012, 23:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 16
Всего: 85



Цитата(BIV @  10.12.2012,  21:34 Найти цитируемый пост)
вызываю контекстное меню, через это контекстное меню запускаю мою программу. 

Цитата(BIV @  10.12.2012,  21:34 Найти цитируемый пост)
 как в запущенной программе получить адрес файла 

Код

int main(int argc, char** argv)
{
   if (argc > 1)
   {
      std::cout << argv [1]; // Выведет имя файла.
   }

}

BIV, 
tzirechnoy прав. у вас проблемы с терминологией. у файла нет адреса, (верней строго говоря, адрес есть, но он вам врядли когда понадобится), вам нужно имя файла.



PM MAIL   Вверх
BIV
Дата 10.12.2012, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 20.12.2007

Репутация: 1
Всего: 1



Т.е. если я щелкну по файлу или папке правой кнопкой мыши и выберу в контекстном меню мою программу, то передастся имя файла? Это будет что-то похоже если я передам параметры через командную строку типа file.exe <параметры>?

Смогу ли я потом применить команду к папке например system("append argv");?

P.S. С tzirechnoy проблема в том, что сразу говорит что типа ты дурак, читай и прочее, а что именно я не понимаю не понятно.

Это сообщение отредактировал(а) BIV - 10.12.2012, 23:53
PM MAIL   Вверх
volatile
Дата 11.12.2012, 00:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 16
Всего: 85



Цитата(BIV @  10.12.2012,  23:52 Найти цитируемый пост)
е. если я щелкну по файлу или папке правой кнопкой мыши и выберу в контекстном меню мою программу, то передастся имя файла?

если на файле выбрать "открыть с помощью..." и затем выбрать вашу программу, да.
по-крайней мере, если в системе не копались, она так делает по умолчанию.

PM MAIL   Вверх
BIV
Дата 11.12.2012, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 20.12.2007

Репутация: 1
Всего: 1



Не знаю, об одном и том же говорим или нет, но я имею ввиду вот что
user posted image
На место Unlocker будет висеть моя программа. Если это одно и тоже, то спасибо большое за помощь, если нет, то хотел бы для этого случая понять
PM MAIL   Вверх
volatile
Дата 11.12.2012, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 16
Всего: 85



BIV, ну попробуйте... что долго рассуждать то?
(по рисунку я же не вижу как там у вас она подключена.)


Это сообщение отредактировал(а) volatile - 11.12.2012, 00:26
PM MAIL   Вверх
feodorv
Дата 11.12.2012, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Цитата(BIV @  11.12.2012,  00:52 Найти цитируемый пост)
Это будет что-то похоже если я передам параметры через командную строку типа file.exe <параметры>?

Да, если в команде, прописываемой в реестре, определить параметр "%1":
Цитата

"D:\Program Files\ACDSee32\ACDSee32.exe" "%1"

Двойные кавычки нужны для тех файлов, чьё имя содержит пробелы.

Проверьте на тестовой программе, которую привёл volatile.

Это сообщение отредактировал(а) feodorv - 11.12.2012, 08:40


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
Dem_max
Дата 11.12.2012, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1780
Регистрация: 12.4.2007

Репутация: 4
Всего: 39



Ну можно имя файла получать через DDE сервер.


--------------------
Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte")
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

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


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0523 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.