Potrzebuję zintegrować jakiś staroświecki 32-bitowy kod - dla którego nie mam kodu źródłowego - w projekcie w taki sposób, aby można go było wywołać z 64-bitowego zestawu .NET. Oryginalny kod jest zaimplementowany jako 32-bitowy obiekt COM w bibliotece DLL. System Windows nie zezwala na bezpośrednie połączenia z obiektów 64 do 32-bitowych, więc szukam inspiracji, jak sobie z tym poradzić.Od 64 do 32 bitów Interop - jak?
W jaki sposób można uzyskać dostęp do starego 32-bitowego obiektu COM z 64-bitowego zestawu .NET?
AKTUALIZACJA: Odkryliśmy, że komponent COM sam był opakowaniem wokół jakiegoś ANSI C, z którego pochodzi oryginalne źródło. Udało nam się skompilować to w Visual Studio jako natywną 64-bitową bibliotekę dll i zaimportować ją do .NET - przepraszam, aby przenieść bramki!
Komentarz, ponieważ tego nie zrobiłem, ale musisz upewnić się, że uruchamiasz obiekt COM jako serwer poza procesem. Jeśli załadujesz go jako proces, będzie działał jako 64-bitowy, co nie powiedzie się. –