Неопределенная ссылка на `DSM_ENTRY` - PullRequest
0 голосов
/ 15 мая 2018

Я пытался реализовать протокол Твена, и я получил эту ошибку только на начальном этапе.Может кто-нибудь со знанием протокола Twain помочь.

#include<twain.h>
#include<kdscust.h>
#include<stddef.h>
#include<stdio.h>
#include<string.h>
int main()
{
    TW_IDENTITY twIdentity;  
    TW_UINT16 rc;
    TW_IDENTITY  kdk;
    kdk.Id=0;
    kdk.Version.MajorNum=5;
    kdk.Version.MinorNum=5;
    kdk.Version.Language=TWLG_ENGLISH_USA;
    kdk.Version.Country=TWCY_USA;
    strcpy(kdk.Version.Info,"KDS v2.3.8 2017/11/09");
    kdk.ProtocolMajor =2;
    kdk.ProtocolMinor=2;
    kdk.SupportedGroups=DG_CONTROL;
    strcpy(kdk.Manufacturer,"Kodak"); 
    strcpy(kdk.ProductFamily,"Generic");
    strcpy(kdk.ProductName,"Kodak");
    //Opening The Source Manager
    rc = (DSM_Entry)(&kdk,NULL,DG_CONTROL,DAT_PARENT,MSG_OPENDSM,NULL);
    if (rc == TWRC_SUCCESS)
    {
        printf("Success");
    }
    else
    {
        printf("Failure");
    }
    return 0;
}

1 Ответ

0 голосов
/ 18 июля 2018

Вы включили заголовочный файл, который содержит только объявление DSM_Entry.

Я не совсем уверен, но я думаю, что одним из подходов будет вызов LoadLibrary для DLL-библиотеки TwainDSM.Но я думаю, что более лучшим подходом было бы загрузить пример драйвера / приложения из Twain org и создать свой код, используя его.

https://sourceforge.net/projects/twain-samples/.Возможно, это может помочь.

...