Hallo Kollegen,
ich hatte die Komponente schon vor dem Umstieg auf XE2 unter 2007 im Einsatz. Hab jetzt die aktualisierte Version installiert, komme aber nicht weiter.
So war die "alte" Version unter D2007
Code:
procedure TFrmScanDlg.Execute;
begin
DelphiTwain1.LibraryLoaded := TRUE;
DelphiTwain1.SourceManagerLoaded := TRUE;
if DelphiTwain1.LibraryLoaded = FALSE then Exit;
if DelphiTwain1.SourceCount = 0 then exit;
DelphiTwain1.Source[0].TransferMode := ttmMemory;
DelphiTwain1.Source[0].Loaded := TRUE;
DelphiTwain1.Source[0].Enabled := TRUE;
end;
An dieser Stelle unter XE2 jetzt eine Zugriffsverletzung:
DelphiTwain1.Source[0].Loaded := TRUE;
Also hab ich....
Code:
procedure TFrmScanDlg.Execute;
var
Index: integer;
begin
DelphiTwain1.LibraryLoaded := TRUE;
DelphiTwain1.SourceManagerLoaded := TRUE;
if DelphiTwain1.LibraryLoaded = FALSE then Exit;
if DelphiTwain1.SourceCount = 0 then exit;
Index := DelphiTwain1.SelectSource;
if Index < 0 then begin
DelphiTwain1.LibraryLoaded := False;
DelphiTwain1.SourceManagerLoaded := False;
Exit;
end;
DelphiTwain1.Source[Index].TransferMode := ttmMemory;
DelphiTwain1.Source[Index].Loaded := TRUE;
DelphiTwain1.Source[Index].Enabled := TRUE;
end;
Es werden zwei Quellen angeboten:
http://otto-herdegen.de/images/twain-source.jpg
Bei der Auswahl Twain (Index "0") nach wie vor die Zugriffsverletzung, bei WIA friert die App ein. (Win7 Ultimate 64Bit) Mit meinen anderen installierten Programmen funktioniert der Scanner. Ich kapier's nicht. Liegt vielleicht auch daran, dass ich mit dem Scanner-Handling keine Erfahrung hab. Ist auch nur ein kleines AddOn in meiner Datenbank-Anwendung, aber sollte trotzdem funktionieren.
Gibt es eine Alternative? Muss nicht kostenlos sein, sollte aber auch nicht gleich meine App unnötig aufblähen.