OVH Cloud OVH Cloud

Problème de scannérisation avec chargeur

5 réponses
Avatar
Christophe BADET
Bonjour,

j'ai écrit le code suivant pour scannériser toutes les pages d'un scan avec
chargeur:
fSupprime("c:\dclic\ww\*.*")

bRetour est un booléen = Vrai

NumPage est un entier = 1

nomf est une chaîne = ""

maxatt est un entier = 5

ctatt est un entier = 0

deb:

BOUCLE

ctatt = 0

nomf = "c:\dclic\ww\"+DateSys()+HeureSys()+".jpg"

SI TwainVersJPEG(nomf,0, VISU,TwainNiveauGris,8,qualite) = Faux ALORS

Erreur(ErreurInfo(errMessage))

FIN

SI TwainEtat() = teNonChargé ALORS SORTIR

BOUCLE1:

Multitâche(200)

ctatt = ctatt + 1

IF TwainEtat() <> teSourcePrêt AND ctatt <= maxatt THEN GOTO BOUCLE1

NumPage++

FIN

ca marche bien avec mon scan (HP Officejet), mais avec un COPIEUR CANON mega
rapide, ca se bloque sur la seconde page. Une idée ?

Merci.
Christophe BADET

5 réponses

Avatar
BLR
Christophe BADET avait prétendu :
Bonjour,

j'ai écrit le code suivant pour scannériser toutes les pages d'un scan avec
chargeur:
fSupprime("c:dclicww*.*")

bRetour est un booléen = Vrai

NumPage est un entier = 1

nomf est une chaîne = ""

maxatt est un entier = 5

ctatt est un entier = 0

deb:

BOUCLE

ctatt = 0

nomf = "c:dclicww"+DateSys()+HeureSys()+".jpg"

SI TwainVersJPEG(nomf,0, VISU,TwainNiveauGris,8,qualite) = Faux ALORS

Erreur(ErreurInfo(errMessage))

FIN

SI TwainEtat() = teNonChargé ALORS SORTIR

BOUCLE1:

Multitâche(200)

ctatt = ctatt + 1

IF TwainEtat() <> teSourcePrêt AND ctatt <= maxatt THEN GOTO BOUCLE1

NumPage++

FIN

ca marche bien avec mon scan (HP Officejet), mais avec un COPIEUR CANON mega
rapide, ca se bloque sur la seconde page. Une idée ?

Merci.
Christophe BADET



As-tu essayé de jouer sur le Multitache(200). 2 secondes c'est
peut-être long pour le Canon ?

--
BLR
Avatar
mat
Christophe BADET wrote:
Bonjour,

j'ai écrit le code suivant pour scannériser toutes les pages d'un scan avec
chargeur:
fSupprime("c:dclicww*.*")

bRetour est un booléen = Vrai

NumPage est un entier = 1

nomf est une chaîne = ""

maxatt est un entier = 5

ctatt est un entier = 0

deb:

BOUCLE

ctatt = 0

nomf = "c:dclicww"+DateSys()+HeureSys()+".jpg"

SI TwainVersJPEG(nomf,0, VISU,TwainNiveauGris,8,qualite) = Faux ALORS

Erreur(ErreurInfo(errMessage))

FIN

SI TwainEtat() = teNonChargé ALORS SORTIR

BOUCLE1:

Multitâche(200)

ctatt = ctatt + 1

IF TwainEtat() <> teSourcePrêt AND ctatt <= maxatt THEN GOTO BOUCLE1

NumPage++

FIN

ca marche bien avec mon scan (HP Officejet), mais avec un COPIEUR CANON mega
rapide, ca se bloque sur la seconde page. Une idée ?

Merci.
Christophe BADET





Bonjour,

c'est que les commandes Twain ne marchent pas avec tout le matériel.
Avec un scanneur Brother je n'ai jamais réussi faire fonctionner les
commandes Twain sous WD7.5/8.0. Par contre, un programme utilisant un
ActiveX de Windows marchait très bien avec la Brother et ne marche
absolument plus avec mon nouveau scanneur HP...

Salutations
mat
Avatar
Christophe BADET
Finalement,

j'ai réussi ... avec la DLL EZTWAIN achetée chez dosadi.com. Une version
d'évaluation est dispo (elle fonctionne plein pout pdt 21 jours).

Si ca intéresse quelqu'un, je peux fournir mon source.

Cette DLL est géniale ! on peut gérer le recto-verso...

mais ca coute un peu de sous...

Monsieur PC Soft l'intègrera peut etre un jour...

.

"Christophe BADET" a écrit dans le message de
news: 4309de97$0$12430$
Bonjour,

j'ai écrit le code suivant pour scannériser toutes les pages d'un scan
avec chargeur:
fSupprime("c:dclicww*.*")

bRetour est un booléen = Vrai

NumPage est un entier = 1

nomf est une chaîne = ""

maxatt est un entier = 5

ctatt est un entier = 0

deb:

BOUCLE

ctatt = 0

nomf = "c:dclicww"+DateSys()+HeureSys()+".jpg"

SI TwainVersJPEG(nomf,0, VISU,TwainNiveauGris,8,qualite) = Faux ALORS

Erreur(ErreurInfo(errMessage))

FIN

SI TwainEtat() = teNonChargé ALORS SORTIR

BOUCLE1:

Multitâche(200)

ctatt = ctatt + 1

IF TwainEtat() <> teSourcePrêt AND ctatt <= maxatt THEN GOTO BOUCLE1

NumPage++

FIN

ca marche bien avec mon scan (HP Officejet), mais avec un COPIEUR CANON
mega rapide, ca se bloque sur la seconde page. Une idée ?

Merci.
Christophe BADET



Avatar
mat
Christophe BADET wrote:
Finalement,

j'ai réussi ... avec la DLL EZTWAIN achetée chez dosadi.com. Une version
d'évaluation est dispo (elle fonctionne plein pout pdt 21 jours).

Si ca intéresse quelqu'un, je peux fournir mon source.



oui, ça m'intéresse, enlever NoSPAM- de mon adress mail, s.t.p.

merci
mat
Avatar
Christophe BADET
Et voila :

NOMDLL est une chaîne = "EZTWAIN3.DLL"

//NOMDLL = "EZTW32.DLL"

hInst = ChargeDLL(NOMDLL)

IF hInst = 0 THEN

Erreur("Impossible de charger EZTWAIN3.DLL")

Ferme

END

res1 = AppelDLL32(NOMDLL,"TWAIN_IsAvailable")

IF res1 <> 1 THEN

Info("Problème avec EZTAINW3.DLL !!")

GOTO FINFIN

END

res2 = AppelDLL32(NOMDLL,"TWAIN_OpenDefaultSource")

// Selection nuveaux de Gris

res2 = AppelDLL32(NOMDLL,"TWAIN_SetCurrentPixelType",1)

// Selectuin Pouces comme unite

res2 = AppelDLL32(NOMDLL,"TWAIN_SetCurrentUnits",0)

// Selection resolution

qte est un réel = qualite+0.0

res2 = AppelDLL32(NOMDLL,"TWAIN_SetCurrentResolution",qte)

res2 = AppelDLL32(NOMDLL,"TWAIN_SelectFeeder",1)

res2 = AppelDLL32(NOMDLL,"TWAIN_SetAutoFeed",1)

res2 = AppelDLL32(NOMDLL,"TWAIN_SetAutoScan",1)

res2 = AppelDLL32(NOMDLL,"TWAIN_EnableDuplex",0)

res2 = AppelDLL32(NOMDLL,"TWAIN_State")

res2 = AppelDLL32(NOMDLL,"TWAIN_SetHideUI",1)

res2 = AppelDLL32(NOMDLL,"TWAIN_SetMultiTransfer",1)

drquestion est un booléen = Faux

debut:

RepS = ("c:dclicww")

name est une chaîne

drscan est un booléen

drscan = Faux

han est un entier

han = Handle()

drfeeder est un entier

encore est un entier

Ind = 0

reponse est un booléen

Nomfic = DateSys()+HeureSys()

Fic1 = RepS+Nomfic+".jpg"

IF drquestion =Vrai ALORS

reponse = OuiNon("Voulez vous numériser une ou plusieurs autres pages ?","Si
oui, mettez en place la ou les feuilles puis cliquez ensuite sur 'OUI'")

SINON

reponse = Vrai

FIN

IF reponse = Vrai ALORS

//res2 = appeldll32("EZTW32.DLL","TWAIN_AcquireToFilename",han,Fic1)

res2 = AppelDLL32(NOMDLL,"TWAIN_AcquireToFilename",han,Fic1)

res2 = AppelDLL32(NOMDLL,"TWAIN_State")

NBP = NBP + 1

// Affichage de l'image scannée et du nom de fichier //

Libellé1 = "Page "+NBP+" -> "+Fic1

Image1..Valeur = Fic1

Multitâche(200)

IF res2 >= 6 THEN GOTO debut

drquestion = Vrai

fics est une chaîne

drscan = True

GOTO debut

FIN

res2 = AppelDLL32(NOMDLL,"TWAIN_CloseSource")

FINFIN:



Bon courage !

"mat" a écrit dans le message de news:
430ca51d$
Christophe BADET wrote:
Finalement,

j'ai réussi ... avec la DLL EZTWAIN achetée chez dosadi.com. Une version
d'évaluation est dispo (elle fonctionne plein pout pdt 21 jours).

Si ca intéresse quelqu'un, je peux fournir mon source.



oui, ça m'intéresse, enlever NoSPAM- de mon adress mail, s.t.p.

merci
mat