Как получить серийный номер сканера с помощью TWAIN?

Я хотел бы получить серийный номер сканера на C#, используя twain_32.dll.
Я обнаружил, что это нужно сделать с помощью метода dscap с возможностью icap_serialnumber.

Может ли кто-нибудь дать мне пример, как это сделать?


person Hans V    schedule 09.01.2013    source источник
comment
Я не совсем уверен, но часть кода в этом примере stackoverflow.com/questions/13357297/ может помочь вам.   -  person Tobias Nilsson    schedule 09.01.2013
comment
когда я пробую код, я получаю ошибку в качестве кода возврата для инструкции dsmparent. может ли кто-нибудь сказать мне, почему?   -  person Hans V    schedule 10.01.2013


Ответы (1)


Вы подтвердили, что ваш драйвер сканера поддерживает эту возможность? Я нашел его в спецификации TWAIN как CAP_SERIALNUMBER (0x1024). И это необязательно - вы не можете предположить, что сканер поддерживает это.

Если вы получаете TWRC_FAILURE при попытке получить эту возможность, проверьте код условия. В вашей библиотеке или компоненте должен быть предусмотрен способ получения кода условия после GET. Значение TWCC_CAPUNSUPPORTED будет означать, что драйвер сканера не поддерживает эту возможность. Другие коды состояний описаны в спецификации TWAIN, хотя иногда требуется немного воображения, чтобы догадаться, что пытается сказать драйвер...

форум рабочей группы TWAIN, возможно, лучше подходит для таких вопросов.

person Spike0xff    schedule 08.04.2013