Как загрузить дважды не входящую C ++ / CLI DLL в C #? - PullRequest
0 голосов
/ 27 сентября 2019

Я пытаюсь загрузить C ++ / CLI DLL в мою программу на C #.DLL представляет свой основной класс как синглтон, потому что она содержит код C с большим количеством глобальных переменных.Так что, к сожалению, DLL не реентерабельна.DLL может подключаться к одному экземпляру аппаратного обеспечения (идентифицируется идентификатором оборудования).

Однако у меня есть несколько подключенных частей одного и того же оборудования, и я хочу загрузить несколько экземпляровDLL в мою C # программу, так что я могу получить доступ к каждому элементу оборудования.

Возможно ли в C # загружать эту C ++ / CLI DLL несколько раз в разные области памяти, чтобы глобальные переменные в DLL неконфликтовать друг с другом?

Давайте предположим, что для целей этого вопроса у меня нет доступа к исходному коду C ++ / CLI DLL.

...