добавить не "библиотеку типов" dll в качестве ссылки на VS C ++ 2008 - PullRequest
0 голосов
/ 21 декабря 2010

Я только что получил запрос от коллеги, чтобы выяснить, почему конкретная DLL не может быть добавлена ​​в качестве ссылки в Visual Studio 2008 версии 9.0.21022.8 RTM с MS .Net Framework версии 3.5 SP1.

Используемый языкэто Visual C ++ 2008, я никогда ничего не делал на этом языке, хотя я немного делал на C # раньше ...

Пожалуйста, проверьте следующие два сообщения об ошибках, первое пришло с моего ноутбука, второеот моего коллеги: my error message

another error message

Из моего исследования Google я боюсь, что целевая dll:

  • НЕ библиотека типов,Подтверждено запуском утилиты tlbimp:

    tlbimp C:\test\tm1api.dll
    
    ......
    
    error TI0000 : The input file 'C:\test\tm1api.dll' is not a valid type library
    

    Что это значит, что-либо преобразовать в библиотеку типов?

  • НЕ сборка .NET или зарегистрированныйActiveX Control.DLL не была запрограммирована в VS Я боюсь.Но как я могу это проверить?

По сути, я запутался, потому что две VS 2008 показывают разные сообщения об ошибках, эта проблема относится только к VS 2008?Или в VS есть общее решение для такого рода вещей?

Большое спасибо за помощь заранее.

1 Ответ

1 голос
/ 21 декабря 2010

у вас, вероятно, просто обычная старая DLL. используйте dllimport для доступа к его методам. Имейте в виду, что при взаимодействии с DLL-библиотекой C ++ обычно возникают проблемы с сортировкой данных, например, вместо int вам может понадобиться использовать short и IntPtr вместо массивов ... и тому подобное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...