Как разработать с использованием WIA 1 под Vista?

Я использую VS2008 SP1 под Vista SP1. Моя.Net-программа использует COM-ссылку на WIA (Microsoft Windows Image Acquisition Library v2.0). Я использую CommonDialogClass.ShowAcquireImage для сканирования документа, и он работает нормально. Один из моих клиентов работает под управлением XP. Как я понимаю WIA, под XP вы должны использовать WIALib (WIA 1.0). Можно ли разрабатывать под Vista с использованием WIA1?

3 ответа

Решение

Я установил небольшой WIALib-проект с VS2008 под Windows XP и скопировал созданный Interop.WIALib.dll на мою машину с Vista. Когда я ссылаюсь на этот файл в проекте C#, я могу скомпилировать его. Теперь у меня есть два проекта, один для XP и один для Vista. С помощью вызова GetVersionEx я определяю работающую версию Windows в моей C++- программе и вызываю метод соответствующей Dll.

MS позволяет скачать библиотеку WIA 2.0 для XP здесь. Таким образом, ваш клиент может использовать ваше приложение как есть.

Также мне нравится WIA 2.0 больше, чем 1.0.

Можно, в общем. Тем не менее, вам все равно нужно будет иметь WIA1 Dlls в вашей системе Vista. То, как я делал это в прошлом, - это копирование DLL-файлов WIA1 из XP в XP. Я не регистрирую библиотеки WIA1, а просто ссылаюсь на них. Ссылаясь на них, ваш код теперь использует WIA1. Теоретически, вы все еще можете запускать и тестировать на Vista, потому что WIA2 должен быть обратно совместим с WIA1. Хотя вы должны проверить с XP, чтобы быть уверенным.

Если у вас нет другой машины, я бы порекомендовал вам взглянуть на VMWare, чтобы вы могли установить новую XP и получить Dll таким образом.

Другие вопросы по тегам