Lazarus 3.0 (2023.12.21.)
Letöltés

  • Oldal:
  • 1

TÉMA:

Válasz: Twain eszközök kezelése 2012 jún. 20 18:19 #1119

  • Athomas
  • Athomas profilkép Témaindító
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0
Kedves Gábor!

Köszönöm a segítségedet. A hiba biztos bennem van, talán még nem jött el az ideje hogy ilyet csináljak.

Válasz: Twain eszközök kezelése 2012 jún. 17 10:07 #1117

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 504
  • Köszönetek: 86
TWAIN specifikációt lehet találni a twain.org -on (most juttott eszembe, hogy kell ilyennek is lenni valahol).

+ talán ez a delphicikk is tartalmaz valami hasznosat...
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64

Válasz: Twain eszközök kezelése 2012 jún. 17 08:48 #1116

  • Athomas
  • Athomas profilkép Témaindító
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0
Aha... De valami info így is hiányzik, valszinűleg kellene azért valami ami azonosítja az üzenetet. Mert azt már tudom hogy hol van, mit használ, de hogy mit kéne üzenjek ahhoz hogy egy képet natívan beolvasson azt nem tudom. Mi a véleményed?

Válasz: Twain eszközök kezelése 2012 jún. 17 07:44 #1115

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 504
  • Köszönetek: 86
Az MSDN-en megtaláltam az MSG-t, amire a PMSG mutat:
msdn2.microsoft.com/en-us/library/ms644958.aspx
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64

Válasz: Twain eszközök kezelése 2012 jún. 16 20:32 #1114

  • Athomas
  • Athomas profilkép Témaindító
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0
Szia!

Azért ragaszkodnák hozzá, mert ez direkt freepascalhoz való.
Hát igen... Itt akadtam el én is, és csak ezt szajkózza, hogy Windows pMSG vagy Mac pEvent... :(

{ DAT_EVENT. For passing events down from the application to the DS. }
TW_EVENT = packed record
pEvent : TW_MEMREF; { Windows pMSG or Mac pEvent. }
TWMessage : TW_UINT16; { TW msg from data source, e.g. MSG_XFERREADY }
end;

Válasz: Twain eszközök kezelése 2012 jún. 16 14:58 #1113

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 504
  • Köszönetek: 86
Amit írtam azt az általad használni kívánt twain csomag helyett javasoltam, mert nem tudom mi az pontosan amit letöltöttél...

Miként van deklarálva a twEvent.pEvent?
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64

Válasz: Twain eszközök kezelése 2012 jún. 15 17:57 #1112

  • Athomas
  • Athomas profilkép Témaindító
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0
Köszönöm, de ebből nem derült ki számomra semmi. A funkció amit meg kell hívjak így néz ki:
function SendMsgToDS ( hParentWindow : HWND; aMsg : PMSG ):boolean;
  var
   rc : TW_UINT16;
  begin
    twEvent.pEvent    := TW_MEMREF(aMsg);        // Message to be sent
    twEvent.TWMessage := MSG_NULL;
 
    rc := DSM_Entry( @AppId,         // Send Message for processing
                     @SourceId,
                     DG_CONTROL,
                     DAT_EVENT,
                     MSG_PROCESSEVENT,
                     @twEvent );
 
    case twEvent.TWMessage of           // Check return message
      MSG_XFERREADY  : begin
                         case twMode of
                           Native : TransferNativeImage( hParentWindow, hImage );
                           Disk   : ;  // ToDo: TransferDiskImage ( 'c:\temp\test.bmp' );
                           Memory : ;  // ToDo
                         end;
                         TWDisableDS( hParentWindow );
                         TWCloseDS( hParentWindow );
                       end;
      MSG_CLOSEDSREQ : begin
                         TWDisableDS( hParentWindow );
                         TWCloseDS( hParentWindow );
                       end;
      MSG_CLOSEDSOK  : begin
                         TWDisableDS( hParentWindow );
                         TWCloseDS( hParentWindow );
//                         GetCustomDsData();
                       end;
      MSG_NULL       : begin
                       end;
    end;
    SendMsgToDS := not (rc = TWRC_NOTDSEVENT);
  end;  

viszont a PMSG típust nem deklarálja sehol, csak hivatkozik rá, és az ide is ismeri. Csak én nem.

Válasz: Twain eszközök kezelése 2012 jún. 15 14:33 #1111

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 504
  • Köszönetek: 86
Hát... nekem kevés az infó amit írtál, de ha nem erről van szó akkor ezt megpróbálhatod:
delphitwain.sourceforge.net/
(példaprogram is van az oldalon)
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 3.0 -- FPC 3.2-- GNU/Linux 5.15.0 x86_64

Twain eszközök kezelése 2012 jún. 15 05:47 #1110

  • Athomas
  • Athomas profilkép Témaindító
  • Moderátor
  • Moderátor
  • Sör, virsli, Lazarus
  • Hozzászólások: 46
  • Köszönetek: 0
Sziasztok!

Szeretném egy kamera képét beolvasni egy saját alkalmazásba. Ehhez letöltöttem a netről a Delphi Runtime Library twain interfész Free pascal implementációját. Addig működik is a dolog, hogy a kamera twain driver-ének a beállítóablakát be tudom hívni, ebben van képmegjelenítés is. Azonban én szeretném a képet a saját alkalmazásomban megjeleníteni, ehhez egy üzenetet kell küldjek a kamerának. Az üzenet egyik paramétere (maga az üzenet) pmsg-típusú. Ez állítólag a windowsban van, pontosabban a windows üzenetek lparamétere.
Tudja valaki mit kell ide írni?

  • Oldal:
  • 1