С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/37: Рейтинг темы: голосов - 37, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 39
1

Узнать корневой каталог

11.05.2012, 19:39. Показов 7306. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет. Подскажите пожалуйста как можно узнать программно полный путь где лежит проект? Если я перенесу программу на другой компьютер с другими папками, то прога должа получить полный путь своего нахождения. Буду очень благодарен!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.05.2012, 19:39
Ответы с готовыми решениями:

Пользователь вводит каталог и надо узнать в нём размер всех каталогов и подкаталогов
Всем привет!Мужики спасайте. Есть такая задачка. Пользователь вводит каталог и надо узнать в нём...

Корневой каталог
Добрый день! Вот, что надо сделать. Где найти хоть что-нибудь? :cry: Для подтверждения, что вы...

Корневой каталог
Есть 2 -ве папки, вторая вложена в корневую www. В обоих есть хтассе, содержит: Options -Indexes...

Корневой каталог
Ребят подскажите пожалуйста, есть вопрос. Вот предположим в пхп можно указывать путь к файлу не...

15
144 / 123 / 14
Регистрация: 10.10.2011
Сообщений: 366
Записей в блоге: 2
11.05.2012, 20:15 2
есть функция для этого GetCurrentDir - возвращает текущее положение в каталоге
0
2836 / 1645 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
11.05.2012, 20:33 3
ParamStr(0) попробуй.
А GetCurrentDir возвращает текущий каталог, который может и не совпадать с тем, откуда запущена прога.
0
144 / 123 / 14
Регистрация: 10.10.2011
Сообщений: 366
Записей в блоге: 2
11.05.2012, 20:50 4
интересно как эт он не будет совпадать... в таком случае????
C++
1
2
3
4
5
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
    AnsiString  CurDir = GetCurrentDir();
}
0
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 39
11.05.2012, 20:50  [ТС] 5
Большое спасибо!
0
67 / 67 / 10
Регистрация: 20.02.2012
Сообщений: 234
11.05.2012, 20:54 6
А зачем всё так сложно, можно сделать всё намного проще.
Писать например не "D:\Program Files\C++ Builder 6\Projects\Моя программа\Музыка Часть-1"
А писать "Моя программа\Музыка Часть-1"
Это как пример.
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.05.2012, 21:00 7
C++
1
Application->ExeName; // Путь к экзешнику
C++
1
ExtractFileDir(Application->ExeName); // Путь к его каталогу
Pirat-SR,не стоит потому как есть неособо умно написанные программы которые запустят твое приложение из своего каталога и оно не будет работать так как не найдет свои файлы в чужем каталоге
1
2836 / 1645 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
11.05.2012, 22:02 8
Цитата Сообщение от QWIPQ Посмотреть сообщение
интересно как эт он не будет совпадать... в таком случае????
Можно запустить через ярлык, в свойствах которого поменять. Можно запустить из командной строки с любым текущим каталогом. Или если сама прога меняла (например, в процессе использования OpenDialog'а).
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.05.2012, 22:16 9
В ярлыке можно и правильно задать рабочий каталог.
Это вопрос опытности пользователя и требований предъявляемых им.
0
144 / 123 / 14
Регистрация: 10.10.2011
Сообщений: 366
Записей в блоге: 2
11.05.2012, 22:16 10
Somebody и что хочешь сказать что будет адрес браться ярлыка??? какая разница как вызывать программу... вызывается она все равно из одного места!!! а место вызова является местом последнего открытого каталога!!!
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.05.2012, 22:20 11
что хочешь сказать что будет адрес браться ярлыка???
Да именно так если в нем не прописан рабочий каталог
0
144 / 123 / 14
Регистрация: 10.10.2011
Сообщений: 366
Записей в блоге: 2
11.05.2012, 23:03 12
ок, рабочий каталог не прописан, откуда вызывается программа??? последнее обращение куда идет???
допустим ярлык на столе а прога в папке, что позже вызывается ярлык или екзе файл???
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.05.2012, 23:04 13
Рабочим каталогом будет рабочий стол,соответсвенно будут проблемы
0
144 / 123 / 14
Регистрация: 10.10.2011
Сообщений: 366
Записей в блоге: 2
11.05.2012, 23:11 14
тогда вопрос с какого??? ведь екзешник вызывается последним и должен возвращаться последним адрес по которому он открыт....
0
67 / 67 / 10
Регистрация: 20.02.2012
Сообщений: 234
11.05.2012, 23:12 15
Цитата Сообщение от Avazart Посмотреть сообщение
Рабочим каталогом будет рабочий стол,соответсвенно будут проблемы
Тоже столкнулся с такой проблемой когда просто копировал Project1.exe на рабочий стол, а когда нажал правой кнопкой мыши на Project1.exe потом "Отправить->Рабочий стол (создать ярлык)", то всё нормально.
0
Эксперт С++
8483 / 6150 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
11.05.2012, 23:16 16
Ярлык-"программа(процесс)-родитель" его каталог наследуется вашим приложением (дочерний процесс).

Таже ерунда происходит при запуске с помощью ShellExecute() без указания директории.
2
11.05.2012, 23:16
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.05.2012, 23:16
Помогаю со студенческими работами здесь

Как восстановить корневой каталог?
подскажите как восстановить корневой каталог, видимо проблема в HDD, как я и подозревал раньше

Как установить корневой каталог в FolderBrowserDialog?
Как установить корневой каталог в FolderBrowserDialog из textbox?

Как сделать текущим корневой каталог флешки?
Здравствуйте! Подскажите, как заставить cmd сменить свою директорию на флешку? Хочется...

Сериализация. Запись данных в один корневой каталог
Здравствуйте,столкнулся с такой проблемой,имеется база xml ,заношу данные и когда одна запись ,то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Блоги программистов
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного суматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­­­хронны­й счётчик с управляющим сигналом задержки).
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
Применение компонентов PrimeVue в Vue.js 3 на TypeScript
BasicMan 04.01.2025
Введение в PrimeVue и настройка окружения PrimeVue представляет собой мощную библиотеку компонентов пользовательского интерфейса для Vue. js 3, которая предоставляет разработчикам богатый набор. . .
Как стать Senior developer
cpp_developer 04.01.2025
В современной индустрии разработки программного обеспечения позиция Senior Developer представляет собой не просто следующую ступень карьерной лестницы, а качественно новый уровень профессионального. . .
Что известно о дате выхода Windows 12 и чего от нее ждать
IT_Exp 04.01.2025
В мире технологий постоянно происходят изменения, и операционные системы не являются исключением. Windows 11, выпущенная в октябре 2021 года, принесла множество инноваций и улучшений, но. . .
Что новенького в .NET Core 9
Programming 04.01.2025
Обзор ключевых изменений в . NET Core 9 Платформа . NET Core продолжает активно развиваться, и версия 9 представляет собой значительный шаг вперед в эволюции этой технологии. Новый релиз. . .
Инструкция по установке python3.13.1 в Debian 12
AlexSky-coder 03.01.2025
sudo apt update sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget. . .
Затестил триггеры. архив проекта прилагаю с GOA файлами в настройках архиватора проектов.
Hrethgir 03.01.2025
В этот раз нет закольцованности, потому что от неё только глюки, как я понял, логика не вырезанная. Триггеры очень быстрые если верить измерениям с помощью анализатора от Gowin. Есть ещё регистры,. . .
Python в помощь DevOps
IT_Exp 03.01.2025
Причины использования Python в работе DevOps Python стал неотъемлемой частью мира DevOps, и это не случайно. Этот язык программирования обладает множеством преимуществ, которые делают его. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru