Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Programma code aanpassen voor 64 bit systemen

59 views
Skip to first unread message

dirkz...@gmail.com

unread,
Nov 20, 2016, 8:26:39 AM11/20/16
to
Onderstaande zat in een excel file gemaakt voor office 2010.
Bij het openen in een omgeving van office 2016 kreeg ik een fout.
De code moet aangepast worden naar een 64 bit systeem.

Hij stopt bij Private Declare Function.
Erg bedreven ben ik hier niet in. De code werkte altijd tot ik dit open
deed in een office 2016 omgeving.

Option Explicit

Private Const WS_SYSMENU As Long = &H80000
Private Const GWL_STYLE As Long = -16

Private Declare Function GetWindowLong Lib "user32" Alias _
"GetWindowLongA" (ByVal hwnd As Long, _
ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias _
"SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Private Declare Function SetFocus Lib "user32" ( _
ByVal hwnd As Long) As Long


Sub DisableAppClose()
Dim lpwnd&
lpwnd = Application.hwnd
SetWindowLong lpwnd, GWL_STYLE, _
GetWindowLong(lpwnd, GWL_STYLE) And Not WS_SYSMENU
SetFocus (lpwnd)
End Sub

Sub EnableAppClose()
Dim lpwnd&
lpwnd = Application.hwnd
SetWindowLong lpwnd, GWL_STYLE, _
GetWindowLong(lpwnd, GWL_STYLE) Or WS_SYSMENU
SetFocus (lpwnd)
End Sub

JF

unread,
Nov 20, 2016, 8:53:07 AM11/20/16
to
Ik heb er geen verstand van maar als je user32 veranderd in user64 ?

--
Fons
Message has been deleted

dirkz...@gmail.com

unread,
Nov 20, 2016, 9:59:35 AM11/20/16
to
Op zondag 20 november 2016 14:53:07 UTC+1 schreef JF:
Thuis een pc met 32 bit windows en een laptop met 64 bit windows. Allebei met 32 bit excel. De code met user32 werkt op allebei perfect, de code met user64 werkt op allebei niet.Dus de fout die ik op het werk krijg in office 2016 kan zijn dat het een 64 bit excel is of dat de code moet aangepast worden, maar niet met user32 te vervangen door user64.
0 new messages