Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: PeterW am April 12, 2017, 13:48:11

Titel: Umstieg von 2003 auf 2016
Beitrag von: PeterW am April 12, 2017, 13:48:11
Ich habe den Umstieg von Access 2003 auf 2016 versucht und bekommen bei der Declaration
Private Declare PtrSave Function LoadCursorFromFile _
        Lib "user32" _
        Alias "LoadCursorFromFileA" ( _
        ByVal lpFileN4ame As String) As Long

die folgende Meldung:
Der Code in diesem Projekt muss für die Verwendung auf
64Bit Systemem aktualisiert werden. Überarbeietn und aktualisieren Sie
Declare Anweisungen und markieren Sie sie mit dem PtrSave-Attribut

ich finde nirgends eine Hinweis, was das bedeuten soll
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: markusxy am April 12, 2017, 13:56:08
Hier (https://msdn.microsoft.com/de-de/library/office/ee691831(v=office.14).aspx) gibts Infos zum Umstieg von 32 auf 64 Bit und umgekehrt.

Die Funktion lieft die Adresse eines Curors. Damit muss der Rückgabewert 64 Bit haben also LongPtr oder LongLong bei VBA.

LG Markus
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: PeterW am April 12, 2017, 15:28:50
Hallo Marcus,
ich bin deinem Rat gefolgt und habe die 32Bit-version installiert.
Hier habe ich warscheinlich weniger Probleme
Viele Dank
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: PeterW am April 14, 2017, 18:42:06
Ich habe ein Frontend aus der 2003 Welt mitgebracht, worin ich in einigen Formularen ein Bild-Feld habe.
Mit der VBA-Zeile:
me.Feldbild.picture = C:\Pfad\Datei.jpg
habe ich unter 2003 dem Feld ein Bild zugewiesen und es ist einwandfrei angezeigt worden.
Jetzt unter 2016 funktioniert das nicht mehr.
Gibt es dafür eine Erklärung?
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: Beaker s.a. am April 14, 2017, 21:44:09
Hallo Peter,
Vermutlich ist die .Picture-Eigenschaft auch in A2016 immer noch ein Stringwert
Zitatme.Feldbild.picture = "C:\Pfad\Datei.jpg"
gruss ekkehard
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: PeterW am April 15, 2017, 13:55:23
Hallo Ekkehard,
du hast natürlich recht, es ist ein Stringwert und so ist es auch in dem Programm.
Es hat ja doch, wie geschrieben, unter Access 2003 funktioniert.
Das also kann nicht die Ursache sein.
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: Beaker s.a. am April 15, 2017, 14:54:06
Sorry, dann kann ich nicht weiter helfen. Ich habe A2010, und da funzt es wie gehabt.
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: PhilS am April 15, 2017, 15:34:54
Zitat von: PeterW am April 14, 2017, 18:42:06habe ich unter 2003 dem Feld ein Bild zugewiesen und es ist einwandfrei angezeigt worden.
Jetzt unter 2016 funktioniert das nicht mehr.
Das ist (genauer: war) ein Bug in Access 2016.
Seit Dezember 2015 gibt es ein Update für Access 2016 (https://support.microsoft.com/en-us/help/3114379/december-8-2015-update-for-access-2016-kb3114379), das diesen Fehler behebt.

Dieses Update solltest auch über Windows-Update bekommen. Es wäre sicher eine gute Idee, diese Update-Funktionalität zu aktivieren, da darüber auch sicherheitsrelevante Updates verteilt werden.
Titel: Re: Umstieg von 2003 auf 2016
Beitrag von: PeterW am April 16, 2017, 08:10:13
Das war genau der richtige Hinweis, jetzt funktioniert es, vielen Dank