Форум: "Начинающим";
Текущий архив: 2007.04.01;
Скачать: [xml.tar.bz2];
Внизпути поиска bpl-файлов Найти похожие ветки
← →
Антоныч_ск (2007-03-06 09:40) [0]Подскажите пожалуйста, как можно программно указать путь, где содержатся bpl-файлы. Дело в том, что я компилирую программу без runtime-пакетов и хотелось бы, чтобы при переносе на другой компьютер bpl-файлы не копировались бы в каталог WINDOWS\SYSTEM32, а находились бы, например, в:
{каталог программы}\bpl\
Естественно, {каталог программы} может быть каким угодно. В Environment Options пути для bpl можно указывать только статические, а вот как сделать их динамическими - не могу понять.
← →
Сергей М. © (2007-03-06 09:44) [1]О каких bpl может идти речь, если ты сам сказал, что сборка приложения у тебя осуществляется без использования ран-тайм пакетов ?
← →
Ega23 © (2007-03-06 09:46) [2]
regsvr32 /s " + ExtractFileName(DllList.Strings[i])
И складывай их туда, где тебе хоцца.
← →
Антоныч_ск (2007-03-06 09:54) [3]Сергей М.:
Ну, значит я неправильно сформулировал, но факт в том, что exe-шник у меня идёт отдельно, и bpl-файлы к нему тоже отдельно :)
Ega23:
Можно поподробнее, не пойму, куда это всобачить-то :).
← →
Reindeer Moss Eater © (2007-03-06 09:59) [4]BPL ищутся системой там же, где ею ищутся DLL.
← →
palva © (2007-03-06 10:03) [5]То есть, либо положить в ту же директорию, что и exe, либо директория, в которой они лежат, должна быть прописана в PATH. Если модификация PATH по каким-то соображениям невозможна, то для запуска приложения можно составить bat файл из двух строчек. Первая модифицирует PATH (временно), вторая запускает приложение.
← →
Сергей М. © (2007-03-06 10:04) [6]
> Антоныч_ск (06.03.07 09:54) [3]
И в чем проблема ?
Если статически компонуемый модуль находится в том же каталоге, где размещен стартуемый исполняемый модуль, он будет найден загрузчиком автоматически ..
← →
Антоныч_ск (2007-03-06 10:05) [7]То есть, при запуске программы придётся вызывать regsvr32 и регистрировать путь поиска dll-файлов. А если у пользователя ограничены права? Точно знаю, что с правами "User" regsvr32 посылает подальше.
← →
Антоныч_ск (2007-03-06 10:05) [8]То есть, при запуске программы придётся вызывать regsvr32 и регистрировать путь поиска dll-файлов. А если у пользователя ограничены права? Точно знаю, что с правами "User" regsvr32 посылает подальше.
← →
Антоныч_ск (2007-03-06 10:08) [9]2 Сергей М:
Ну не хочу я в том же каталоге... хочу в отдельном, чтобы покрасивше было :)
То есть, как я понял, без изменений настроек системы пользователя, пусть даже временных, обойтись никак нельзя...
← →
Сергей М. © (2007-03-06 10:12) [10]
> Антоныч_ск (06.03.07 10:08) [9]
> То есть, как я понял, без изменений настроек системы пользователя,
> пусть даже временных, обойтись никак нельзя...
Конечно нельзя.
Системе же должен быть известен "алгоритм" поиска модулей, если они расположены по нестандартным путям..
А regsvr32 не имеет твоей задаче прямого отношения - эта утилита регистрирует только модули, в которых реализованы фабрики классов OLE/COM-серверов автоматизации.
← →
Reindeer Moss Eater © (2007-03-06 10:15) [11]HKLM\Software\Microsoft\Windows\Current Version\App Path\<your_exe_name.exe>
← →
Антоныч_ск (2007-03-06 10:15) [12]Сергей М.:
см. [2]. Поэтому и спросил про regsvr32, т.к. смутило, причём тут это :)
← →
DrPass © (2007-03-06 10:18) [13]
> см. [2]. Поэтому и спросил про regsvr32
Мало ли что где пишут...
← →
Антоныч_ск (2007-03-06 10:22) [14]Ладно, всё равно всем спасибо, буду размещать в том же каталоге...
← →
Reindeer Moss Eater © (2007-03-06 10:23) [15]Ладно, всё равно всем спасибо, буду размещать в том же каталоге...
Интересно, а зачем тогда вообще использовать bpl?
← →
Антоныч_ск (2007-03-06 15:08) [16]Рассказываю конкретно свою ситуацию. Я скачал компонент для доступа к Oracle: "Oracle Data Access Component". Всё работает просто супер, но есть одно но: пока этот компонент не зарегистрирован (trial version), 3 bpl-файла, необходимых для его работы, не включаются при компиляции в exe-шник. Собственно, и фиг с ними, :) но я хотел поместить их в отдельную папку, чтобы не мозолили глаза пользователям в основном каталоге с exe-шниками и вызывали ненужных глупых вопросов типа "А зачем?", "А что это?", "А можно удалить?" :)
← →
Сергей М. © (2007-03-06 15:19) [17]
> Антоныч_ск (06.03.07 15:08) [16]
>
Так ведь эта самая твоя ситуация не имеет ничего общего с опциями сборки твоего приложения)
Компонент-то этот поставляется, очевидно, в виде dcu+bpl. Эти самые dcu уже ссылаются на bpl, и повлиять на этот факт манипуляциями упомянутого выше флага сборки ты никак не можешь, хоть из штанов выпрыгни)
← →
Reindeer Moss Eater © (2007-03-06 15:26) [18]Либо [4], либо [11], либо в папку с программой
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.04.01;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.04 c