Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Neueste Beiträge

#21
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Gockel67 - Juni 02, 2026, 08:34:51
Hallo Knobbi,

danke für deinen Hinweis. Ich werde mal schauen wie ich damit klarkomme.

Liebe Grüße
Jörg
#22
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Knobbi38 - Juni 01, 2026, 22:46:30
Naps2 lässt sich per Kommandozeile steuern. Beispiele sowie Beschreibungen der einzelnen Optionen und Argumente findest du hier.
https://www.naps2.com/doc/command-line

#23
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Gockel67 - Juni 01, 2026, 21:15:48
Hi Knobbi,

hättest du für Naps2 ein Beispiel wie ich das einsetzen kann?

Wünsche einen schönen Abend
Jörg
#24
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Knobbi38 - Juni 01, 2026, 18:27:35
Hallo Jörg,

warum sollte man ein bereits vorhandenes Tool nachprogrammieren wollen?
Installiere aus dem MS Store die Windows Scanner-APP von MS nach und gut.

Wenn es etwas mehr sein soll, z.B. OCR und PDF dann vielleicht:
https://www.naps2.com/
welches auch über die Shell verwendet werden kann.


Knobbi38
#25
Access Programmierung / Re: Dateidatum per VBA ändern
Letzter Beitrag von Gockel67 - Juni 01, 2026, 16:11:41
Hallo Holger,

nach verschiedenen Tests vermute ich Punkt 3. Egal was ich mache. Es wird immer das aktuelle Datum gesetzt.
Damit hat sich das ganze dann auch erledigt.

Liebe Grüße
Jörg

P.S. Trotzdem nochmal ein Nachtrag: Es funktioniert ja auch auf lokalen Dateien nicht richtig. Also zumindest auf meinem Rechner.
Januar und Februar sind jeweils um -1 Tag verschoben.
#26
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Gockel67 - Juni 01, 2026, 15:58:13
Moin Knobbi,

1. Quelle ist Google KI
2. Ich mache das ganze damit ich nicht ständig zwischen zwei Programmen hin und her pendeln muss.
3. Danke für den Code. Das setzen von dpi funktioniert nicht. Einen ähnlichen Code hatte ich auch schon ausprobiert. Das Problem dabei ist, dass der Scan direkt startet. Ich benötige aber für Vorschau und zurechtschneiden die Wia-Oberfläche.

Liebe Grüße
Jörg
#27
Access Programmierung / Re: Dateidatum per VBA ändern
Letzter Beitrag von Debus - Juni 01, 2026, 15:36:52
Hallo Jörg, hallo Ulli

ich habe da mal was nachgelesen und da müsste Jörg dann auch noch was zu sagen bezüglich WebDav

Gruß
Holger



1. WebDAV als Laufwerksbuchstabe gemappt D:\
Ja, funktioniert. SetFileTime API arbeitet mit normalen Dateihandles. Windows kümmert sich um die WebDAV-Übersetzung. Erstelldatum, Änderung, Zugriff werden 1:1 gesetzt. Teste ich hier regelmäßig.

2. WebDAV über UNC-Pfad \\server@SSL\DavWWWRoot\
Geht auch, solange Windows den Pfad auflösen kann. CreateFile akzeptiert UNC. Performance ist aber mies, weil jede Datei 3x angefasst wird: Kopieren + Zeit lesen + Zeit setzen.

3. WebDAV-Server unterstützt es nicht
Manche Billig-NAS oder OwnCloud/Nextcloud in Standardconfig ignorieren SetFileTime komplett. Datei wird kopiert, Datum bleibt "jetzt". Kein Fehler, aber Datum falsch.
#28
Access Programmierung / Re: Dateidatum per VBA ändern
Letzter Beitrag von Knobbi38 - Juni 01, 2026, 15:22:45
FileCopy? Hast du die Freigabe als Laufwerk eingebunden? Dann verstehe ich noch nicht, warum das Beispiel von Holger nicht das gewünschte Ergebnis bringt.

Knobbi38
#29
Access Programmierung / Re: Dateidatum per VBA ändern
Letzter Beitrag von Gockel67 - Juni 01, 2026, 14:19:47
Hallo Knobbi,

das Beispiel war auch von einer KI.
Ich verwende Access 2024 und den filecopy Befehl.
64 bit.
Liebe Grüße
Jörg
#30
Access Programmierung / Re: Scannerauflösung einstelle...
Letzter Beitrag von Knobbi38 - Juni 01, 2026, 13:49:22
Nachtrag:

hier mal ein Code Snippet (ungetestet):
    ' WIA initialisieren
    Set objDialog = CreateObject("WIA.CommonDialog")
    Set objDevice = objDialog.ShowSelectDevice(1, False, False) ' 1 = Scanner

    If objDevice Is Nothing Then Exit Sub
    Set objItem = objDevice.Items(1)

    ' Auflösung auf 300 DPI setzen (IDs 6147 und 6148)
    objItem.Properties(6147).Value = 300
    objItem.Properties(6148).Value = 300

    ' Scan starten (wiaFormatJPEG = "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}")
    Set objImageFile = objDialog.ShowTransfer(objItem, "{B96B3CAE-0728-11D3-9D7B-0000F81EF32E}", True)

    If Not objImageFile Is Nothing Then
        ' Bestehende Datei löschen, falls vorhanden
        If Dir(strZielPfad & strDateiName) <> "" Then Kill strZielPfad & strDateiName

        ' Datei speichern
        objImageFile.SaveFile strZielPfad & strDateiName

        ' Pfad im aktuellen Formularfeld speichern
        Me!DokuPfad = strZielPfad & strDateiName ' "DokuPfad" ist Ihr Textfeld in der Tabelle

        MsgBox "Dokument erfolgreich mit 300 DPI gescannt und verknüpft!", vbInformation
    End If