powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Windows 7 x64 Home Basic генерирует посредника *r1.dll для COM-сервера
2 сообщений из 2, страница 1 из 1
Windows 7 x64 Home Basic генерирует посредника *r1.dll для COM-сервера
    #38501499
Rostislav D. Kudryashov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Использую локальный COM-сервер с CODEPAGE = 866 во встроенном config.fpw для работы с индексами по полям с "двоичным текстом" в досовских таблицах. Сервер CP866.dll построен как Single-threaded COM server (dll).
Через несколько дней отладочной эксплуатации рядом с CP866.dll возникает дополнительный файл CP866r1.dll размером 4624 Kb, при том, что размер CP866.dll равен 35155 байт - в 131 раз меньше. Работоспособность не нарушается, пока не удалю CP866r1.dll. После этого даже восстановление CP866r1.dll не возвращает работоспособность сервера. Программа regsvr32.exe для любого из этих *.dll выдаёт какой-то сбой (не записал, какой). И даже удаление обеих *.dll и повторная постройка сервера не даёт успеха. Чтобы получить возможность построить в Visual Fox сервер CP866.dll заново, приходится восстанавливать инстоляцию Фокса с дистрибута.

Повреждения CP866.dll явно не происходит. Этот же CP866.dll нормально работает на целевой (клинтской ПК), если положить приложение в пусковом каталоге рядом с ран-таймовскими файлами GdiPlus.dll, MsVcr71.dll, Vfp9r.dll, Vfp9rRus.dll. Файл CP866r1.dll в этом случае не требуется.
Пока у меня подозрение на то, что я регистрирую COM-сервер программно каждый раз при запуске приложения и разрегистрирую его обратно при завершении приложения вот таким образом:
DECLARE LONG WinExec IN Kernel32 STRING lpCmdLine, LONG uCmdShow
m.Res_ln = WinExec ('regsvr32 /s' + m.Unreg_lc + m.DllPath_yc, SW_HIDE)
CLEAR DLLS WinExec
Но неясно, как наверняка проверить эту гипотезу.
Что бы это значило, появление посредника *r1.dll, и как с этим бороться.
...
Рейтинг: 0 / 0
Windows 7 x64 Home Basic генерирует посредника *r1.dll для COM-сервера
    #38501624
Rostislav D. Kudryashov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rostislav D. Kudryashov, Ситуация немного прояснилась. Посредник *r1.dll возникает при запуске реального фоксовского exe-приложения, а не в отладном режиме из среды разработки. И не только под Win7 x64, но и под WinXP x86. Но для чего он нужен, как от него отделаться, все равно загадка.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Windows 7 x64 Home Basic генерирует посредника *r1.dll для COM-сервера
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]