Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Цитата: Капча на странице для регистрации аккаунта по данной вами ссылке. | А у вас получается куча-мала которую иным способом кроме разделения на несколько независимых задач разгрести не возможно - вы связываете техническую проблему - подключение модулей с чисто административной - регистрацией учётной записи на ресурсе. Интересно каким образом регистрация учётной записи пользователя на ресурсе влияет на поведение программ? Или для вас между этими вещами стоит знак равенства? Если вы так себе это представляете, то позвольте вас уверить никакой связи между этими вещами нет. Регистрация на ресурсе и возможно ручная активация вашей учётной записи там это ко мне, баг-репорты на форум либо на Мантис. С библиотеками - давайте посмотрим а как по отношению к программе вы их расположили? Есть чёткие правила ОС по их поиску описанные в MSDN: Цитата: Путь поиска, используемый Windows для обнаружения библиотеки DLL http://msdn.microsoft.com/ru-ru/library/7d83bc18.aspx Используя механизмы явного и неявного связывания, Windows сначала выполняет поиск "известных библиотек DLL", таких как Kernel32.dll и User32.dll. Затем Windows выполняет поиск библиотек DLL в следующей последовательности: 1) Каталог, в котором находится исполняемый модуль текущего процесса. 2) Текущий каталог. 3) Системный каталог Windows. Путь к этому каталогу извлекается с помощью функции GetSystemDirectory. 4) Каталог Windows. Путь к этому каталогу извлекается с помощью функции GetWindowsDirectory. 5) Каталоги, указанные в переменной среды PATH. Примечание Переменная среды [b]LIBPATH не используется.[/b] | и их следует соблюдать, но некоторые программы могут искать вызываемые модули по строго определённым в коде относительным путям. Например Far Manager, NSIS, Process Hacker, ... ищут свои плагины в каталоге ./Plugins расположенном в корне каталога где находится их основной исполняемый модуль, и некоторые из них могут искать их в его подкаталогах (не обязательно). Но и сами модули могут вызывать внешние по отношению к ним модули или файлы которые должны располагаться либо по фиксированному относительному пути, либо (редко) он указывается в их настройках. Это связано с механизмом работы функции LoadLibraryEx() - Если функции передано имя модуля, то она осуществляет его поиск согласно правилам поиска, используемым Windows для обнаружения библиотеки DLL, иначе загружается модуль с указанным абсолютным путём, если указано имя только модуля, но одноимённых модулей найдено несколько функция загружает первый найденный и дальнейший поиск не производится. А для формирования пути абсолютного пути если мы указали относительный путь к загружаемому модулю для получения текущего каталога процесса вызывается системная функция GetFullPathNameW() которой в качестве имени файла передаётся относительный путь к нему, а она возвращает абсолютный путь к нужному файлу который мы и передаём в LoadLibraryEx() в качестве входного параметра, а та в свою очередь смотрит кого ей поручили загрузить и не загрузит иные исполняемые файлы кроме имеющих внутреннюю структуру EXE/DLL. Так что не всё столь просто как бы нам хотелось. ОС накладывает ряд ограничений на множество доступных нам операции, и эти правила мы вынуждены соблюдать.
---------- Жив курилка! (Р. Ролан, "Кола Брюньон") Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti |
|