Я почти уверен, что это невозможно, но стоит спросить ...
У нас есть .NET DLL, которая вызывается из нашего приложения VB6. Приложение VB6 работает в 32-битном процессе, поэтому DLL работает в том же процессе (оно скомпилировано как любой процессор)
Поэтому, когда я делаю мой доступ к базе данных ODBC в DLL, я использую только 32-битный драйвер, так как это то, что, по его мнению, ему нужно (для записи это БД Pervasive PSQL)
Моя проблема возникает, когда приложение работает на 64-битной машине (когда установлен только 64-битный драйвер ODBC), так как не может найти подходящий драйвер для использования.
Итак, есть ли способ заставить .NET DLL работать в 64-битном процессе (компиляция как x64 не работает, так как регистрация для COM-взаимодействия не разрешена)
Это не обязательно является проблемой в данный момент, потому что я могу установить 32-битный драйвер, но в какой-то момент в будущем я могу представить, что 32-битный драйвер может быть недоступен, поэтому я поднимусь до пословицы .