Тема: Откуда грузился ARX
Как узнать с какого места загрузили ARX (полный путь)?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Откуда грузился ARX
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Как узнать с какого места загрузили ARX (полный путь)?
> Dima
Вопрос задан некорректно. Нужно из самого arx-файла узнать по какому пути он загружен или нужно по имени файла из другого приложения найти полный путь к нему?
Если из самого arx-файла, то есть два варианта решения:
1) Воспользоваться функцией:
char* acedGetAppName();
2) Воспользоваться функцией: GetModuleFileName(hInst,...)
где hInst - HINSTANCE, который передается в функцию DllMain этого arx-файла.
Второй вариант предпочтительней, так как в ряде случаев первый вариант не срабатывает.
Если для другого arx-файла, то нужно воспользоваться таким кодом:
// Имя arx-файла для которого ищется // полный путь. Он должен быть уже загружен в AutoCAD. char arxname[]="MyArxFile.arx"; // Полный путь к arx-файлу char arxpath[_MAX_PATH+1]; HMODULE h = GetModuleHandle(arxname); if (h) { GetModuleFileName(h,arxpath,sizeof(arxpath)-1); }
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Откуда грузился ARX
Форум работает на PunBB, при поддержке Informer Technologies, Inc