IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants VCL Delphi Discussion :

Problème avec TWAIN


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut Problème avec TWAIN
    Bonjour,

    Je suis tombé par hasard sur un sujet parlant de TWAIN et je me suis dit que ce serai pas mal pour mon gestionnaire de DVD pour récupérer la jaquette.

    J'ai donc télécharger et installé le composant DelphiTwain. En regardant l'aide fournie avec les sources j'ai écrit les procédures suivantes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    procedure TFrmInsererFilm.ImporterClick(Sender: TObject);
    var SourceIndex : Integer;
        Source : TTWainSource;
        Jaquette,src,dest:string;
    begin
      // S'assure que la librairie et le source manager sont chargés
      Scanner.LibraryLoaded := True;
      Scanner.SourceManagerLoaded := True;
      // Boîte de dialogue pour sélectionner la source, -1 si pas de source
      SourceIndex := Scanner.SelectSource;
      if (SourceIndex <> -1) then
      begin
        if (Sauver.Execute) then
        begin
          Jaquette:=Sauver.FileName;
     
          //Variable pour la copie de la jaquette dans le répertoire voulu
          src:=Jaquette;
          dest:=Chemin+'Jaquette\'+ExtractFileName(src);
     
     
          // Récupère la source
          Source := Scanner.Source[SourceIndex];
     
          // Sauvegarde le chemin de l'image
          ImageJaquette:=dest;
          Scanner.TransferMode := ttmFile;
          Source.SetupFileTransfer(dest,tfJPEG);
     
          // Charge la source
          try
            Source.Loaded := True;
            Source.TransferMode := ttmFile;
          // Acquère l'image
            Source.Enabled := True;
          finally
            Source.Free;
          end;
          FrmStart.CopierFichier('"'+src+'"','"'+dest+'"');
     
          ImageJaquette:=dest;
        end;
      end;
    end;
     
    procedure TFrmInsererFilm.ScannerTwainAcquire(Sender: TObject;
      const Index: Integer; Image: TBitmap; var Cancel: Boolean);
    begin
      ImgJaquette.Picture.Assign(Image);
      Cancel := True;
    end;
    Au moment de tester, tout semblait fonctionner à merveille. J'avais une boite de dialogue TWAIN qui me proposait de choisir un périphérique. J'ai choisi mon scanner (qui au passage apparaissait plusieurs fois :
    - Une fois avec marqué TWAIN et #2 dans le nom du scanner
    - Une fois avec marqué TWAIN et #4 dans le nom du scanner
    - Une fois avec juste le nom du scanner)
    J'ai pris le #4.
    Ensuite ma boite de dialogue de sauvegarde est apparue. J'ai choisi le nom du fichier (test.jpg puisque mon scanner HP Photosmart C4280 enregistre les images dans ce format là, entre autre).
    Je valide et je vois le logiciel HP se lancer et commencer la numérisation.
    Je me suis dit "Génial ça fonctionne à la perfection" mais au moment d'accepter la capture Vista m'informe que le programme HP dois se fermer. AU bout de quelques secondes, le logiciel HP se ferme effectivement et en toute logique l'image n'apparait pas.

    J'ai rajouté le try...finally après.
    Pour info la procédure CopierFichier contient juste un ShellExecute qui execute un fichier bat de copy de fichier en langage DOS et fonctionne tout à fait correctement sur Vista, j'ai testé. Mais de toute façon elle est lancée après et donc n'intervient pas dans le scan.
    ImageJaquette est une variable globale déclarée en string qui me sert pour l'insertion du chemin vers l'image en question dans la base de données.

    j'ai cherché sur le forum des sujets pour mon problème mais je n'en ai trouvé aucun.

    Quelqu'un s'est-il déja servi de DelphiTwain sous Vista ?
    A-t-il rencontré ce genre de problème ?
    Comment l'a-t_il résolu ?

    Merci

  2. #2
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 400
    Par défaut
    Salut;

    et sous windows XP ça donne quoi car il me semble que le problème vient de windows vista.

  3. #3
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    Je n'ai malheureusement pas la possibilité de le tester sous XP avant au moins une semaine.

    Et d'ailleurs depuis que j'ai quitté le domicile familiale pour m'installer dans mon appart il faut dire qu'il n'y a que mon frère qui se sert de cet ordinateur avec XP et que la dernière fois que je suis venu, l'ordi ramait, y'avais des tonnes de virus, etc et j'ai pas trop envie de me risquer à y brancher quoi que ce soit.

    Juste une petite info, je ne sais pas si ça peut jouer dans la balance mais j'ai installé DelphiTwain directement dans le répertoire où je travaille, c'est a dire c:/BiblioDVD/TWAINY/

    J'ai trouvé les sources ici : http://delphitwain.sourceforge.net/

    Cela ne pourrait-il pas venir du paramétrage de l'objet TDelphiTWAIN également
    Voici ce que j'ai mis pas défaut dans les propriétés :
    + Infos
    - CountryCode : 33
    + Groups : laissé par défaut comme expliqué dans l'aide
    - Language : tlFrench
    - MajorVersion : 1
    - Manufacturer : mes noms et prénoms sans accents
    - MinorVersion : 0
    - ProductFamily : Biblio DVD
    - ProductName : Biblio DVD
    - VersionInfo : Biblio DVD
    - LibraryLoaded : False
    - Name : Scanner
    - SourceCount : 0
    - SourceManagerLoaded : False;
    - Tag : 0
    - TransferMode : ttmFile

    Peut -être quelqu'un pourrait t-il tester mon code sur XP sachant que la procedure CopierFichier et les variables Jaquette, src, dest et ImageJaquette sont inutile pour tester ce bout de code

    Merci

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    Citation Envoyé par Kelloucheaeh Voir le message
    Salut;

    et sous windows XP ça donne quoi car il me semble que le problème vient de windows vista.
    Quelqu'un peut-il me confirmer ça ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 113
    Par défaut
    j'utilise Twain, sous Vista + delphi 2007, et ca marche.

    contacte moi sur mrim07 [at] orange.fr si tu veux mon code

    Pascal07

  6. #6
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    Si tu utilise un composant gratuit alors oui ça m'interesse.
    Je te contact dès que je rentre chez moi car la messagerie est bloquée là où je travaille

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 64
    Par défaut
    Bonjour

    ce code m'interesse aussi

    cordialement
    Sébastien

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo