Ошибка компоновщика (2028) при переносе проекта с VS 2005 (XP) на VS 2008 (Windows 7) - PullRequest
0 голосов
/ 11 апреля 2011

Я переношу решение из Visual Studio 2005 (Windows XP) в Visual Studio 2008 (Windows 7).Решение содержит несколько библиотек классов (dll).Эти библиотеки написаны на C #.Одна библиотека (названная «SDEWriter»), однако, написана на C ++.Эта библиотека представляет собой проект CLR, и ссылки на внешние библиотеки написаны на нативном языке C. У меня нет доступа к коду C.

Компиляция и компоновка проекта в VS 2005 прошла нормально.Но в VS 2008 я получаю следующую ошибку компоновщика:

* ошибка LNK2028: неразрешенный токен (0A00000E) "extern" C "long __stdcall SE_error_get_string (long, char *)" (? SE_error_get_string @@$$ J18YGJJPAD @ Z) упоминается в функции "public: static bool __clrcall SDEWriter :: SDEfuncs :: Ошибка (long, класс std :: basic_string, класс std :: allocator>)" *

Чтоинтересно: когда я делаю «SDEWriter» статической библиотекой (lib) вместо dll, все работает отлично !!!

Некоторая дополнительная информация о свойствах проекта «SDEWriter»:

  • Поддержка общеязыкового языка: старый синтаксис (/ clr: oldSyntax)
  • Дополнительные каталоги включения: путь к папке включения файлов внешних заголовков C
  • Дополнительные каталоги библиотек: путь к внешнему каталогуlibs
  • Дополнительные зависимости: все необходимые внешние библиотеки

Я искал этот сайт и Интернет, но не нашел решения.Я был бы очень рад, если бы кто-нибудь мог помочь!Заранее большое спасибо.

Барбара

1 Ответ

0 голосов
/ 15 апреля 2011

это было бы невозможно для вас решить.Это была проблема ESRI.См .: Тема форума ArcGIS

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