Создание поставщика учетных данных с помощью Eclipse CDT

В настоящее время я пытаюсь разработать поставщика учетных данных для Windows 7 32Bit. В настоящее время я использую Eclipse CDT для достижения этой цели. После установки Windows SDK и правильной настройки CDT я смог скомпилировать и связать необходимые dll (было довольно хлопотно, и я не на 100% уверен, что он работает так, как ожидалось, но, по крайней мере, он не выдает ошибок). Когда я сейчас пытаюсь установить поставщика учетных данных, он выдает ошибку отсутствия msvcr90.dll. Я обошел это, найдя правильную версию dll в сети (обратите внимание, что нужная версия msvcr90.dll не поставлялась ни в одной версии распространяемого пакета, поэтому нет необходимости указывать их, я прошел через это) уже). Теперь, когда я установил его и скопировал msvcr90.dll в папку system32, я начал получать ошибку времени выполнения R6034 ("... попытка загрузить библиотеку времени выполнения C неправильно...").

Не удалось решить это до сих пор. Я попробовал наоборот, создав статическую dll вместо общей dll. Все, что происходит, когда я пытаюсь это сделать, это то, что Credential Provider даже не загружается во время запуска системы.

Кто-нибудь сталкивался с подобными проблемами или знает, как это решить? Моим последним средством было бы каким-то образом получить VS, но я бы хотел пока остаться с CDT, так как я не совсем уверен, что это связано с проблемой.

Для справки: в настоящее время я просто пытаюсь заставить работать стандартный учебник по SampleCredentialProvider. Код, написанный мной, не используется, так что это не должно быть причиной проблем.

Редактировать: В качестве обновления я отказался от этого предприятия, чтобы заставить CDT скомпилировать работающий поставщик учетных данных. Так как я студент, и я делаю это для диссертации, я только что скачал VS, и он работал как шарм без особых хлопот и т. д. Слишком много пустой траты времени, чтобы попытаться заставить его работать, не получая никакого результата относительно что происходит не так и т. д. Я оставляю этот вопрос открытым для обсуждения, если у кого-то когда-нибудь появится желание заставить это работать. Сейчас у меня нет времени этим заниматься. Для Рекорда наиболее важными библиотеками для линковки являются: advapi32.lib, ole32.lib, user32.lib, secur32.lib и shlwapi.lib (пришлось выяснить это методом проб и ошибок...)


person Dekker    schedule 01.11.2012    source источник
comment
Это большое дело. Пожалуйста, рассмотрите возможность публикации вашего проекта Eclipse, когда он будет готов (по крайней мере, тот, который создает образец CP).   -  person ixe013    schedule 01.11.2012
comment
Я отказался от этого на данный момент, поскольку кажется излишним пытаться выяснить, что не работает и т. Д. Основная проблема, по-видимому, заключается в том, что CDT в основном не поддерживает все необходимые функции для компиляции поставщика учетных данных.   -  person Dekker    schedule 07.11.2012


Ответы (1)


В основном у вас есть два варианта:

  1. Установите среду выполнения Visual Studio 2008 бок о бок, в основном запуская Vcredist_x86.exe.
  2. Заставьте статическую сборку работать.

Оба варианта имеют свои за и против, но поскольку поставщик учетных данных должен быть установлен администратором, и, учитывая трудности, с которыми вы уже столкнулись, я бы выбрал вариант 1.

Я не уверен, что vcredist включен в SDK платформы. Вот прямая ссылка.

person ixe013    schedule 01.11.2012