[AccessD] 32->64 bit

Rocky Smolin rockysmolin2 at gmail.com
Thu Nov 4 18:06:25 CDT 2021


I have a module called Publics which has all of my handy functions - like
browse for file, browse for folder, screen resizing etc. I copy it into any
new app I create. Handy.  I have another one that has the back end
relinking  routines, which I use in almost all my apps. Ok used to use.
I'm on my last two clients.

r

On Thu, Nov 4, 2021 at 3:22 PM Bill Benson <bensonforums at gmail.com> wrote:

> I have never seen the benefit of declaring Windows APIs privately and
> duplicating the declarations in several places. Could someone explain how
> things would go wrong if declared public? It might make code less modular
> that’s for sure, as the temptation will grow over time to collect more and
> more of them in a single module and then never be able to disentangle them.
> But if you are not so foolish, and just want to have one central std module
> with the APIs that all your form and other type modules need to call in a
> particular project, what is the problem with a public declaration? Not
> saying there isn’t any, I am asking sincerely for information where that
> fails in the real world, not some awkwardly contrived coding scenario
> created just to prove a point.
>
> On Thu, Nov 4, 2021 at 12:50 PM Jim Dettman via AccessD <
> accessd at databaseadvisors.com> wrote:
>
> >
> >
> > It’s best practice to always limit the scope, and they probably didn’t
> use
> > it outside of the module, so they marked it private.
> >
> >
> >
> > Jim.
> >
> >
> >
> > From: Arthur Fuller
> > Sent: Thursday, November 4, 2021 12:35 PM
> > To: Access Developers discussion and problem solving <
> > accessd at databaseadvisors.com>
> > Cc: Jim Dettman <jimdettman at verizon.net>
> > Subject: Re: [AccessD] 32->64 bit
> >
> >
> >
> > Jim,
> >
> > I know that. I'm just a bit puzzled why Getz et.al <http://et.al> .
> chose
> > to set it up that way in all the BAS files in their book.
> >
> >
> >
> >
> >
> > On Thu, Nov 4, 2021 at 11:40 AM Jim Dettman via AccessD <
> > accessd at databaseadvisors.com <mailto:accessd at databaseadvisors.com> >
> > wrote:
> >
> >
> >  That's something that pertains to scope, not 32/64 bit.
> >
> >  Private just means that the declare can only be called from the module
> > it's
> > in.  Public would be the opposite, where it can be called from anywhere.
> >
> >  Here's a link that covers it:
> >
> >
> >
> https://docs.microsoft.com/en-us/office/vba/language/concepts/getting-starte
> > <
> >
> https://docs.microsoft.com/en-us/office/vba/language/concepts/getting-started/understanding-scope-and-visibility
> >
> >
> > d/understanding-scope-and-visibility
> >
> > Jim.
> >
> > -----Original Message-----
> > From: AccessD On Behalf Of Arthur Fuller
> > Sent: Thursday, November 4, 2021 10:38 AM
> > To: Access Developers discussion and problem solving
> > <accessd at databaseadvisors.com <mailto:accessd at databaseadvisors.com> >
> > Subject: [AccessD] 32->64 bit
> >
> > This is more work than I had hoped. Also confusing. A bunch of the code
> I'm
> > trying to upgrade comes frm Access 2000 Developers Handbook (Getz, Liwin
> > et. a.) All the code I gpt from there declares the API stuff like this:
> >
> > Private Declare Function xyz
> >
> > I don't understand the use of "Private" in this context.
> >
> > the Win32API_PtrSafe.txt file doesn't use the Private word. Instead the
> >
> > declarations look like this:
> >
> >  #If VBA7 Then
> >   Declare PtrSafe Function SetTimer Lib "user32" (ByVal hWnd As LongPtr,
> > ByVal nIDEvent As LongPtr, ByVal uElapse As Long, ByVal lpTimerFunc As
> > LongPtr) As LongPtr
> > #Else
> >   Declare Function SetTimer Lib "user32" (ByVal hWnd As Long, ByVal
> > nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As
> Long
> > #End If
> >
> > --
> > Arthur
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com <mailto:AccessD at databaseadvisors.com>
> > https://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com <mailto:AccessD at databaseadvisors.com>
> > https://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
> >
> >
> >
> >
> >
> > --
> >
> > Arthur
> >
> >
> >
> > --
> > AccessD mailing list
> > AccessD at databaseadvisors.com
> > https://databaseadvisors.com/mailman/listinfo/accessd
> > Website: http://www.databaseadvisors.com
> >
> --
> AccessD mailing list
> AccessD at databaseadvisors.com
> https://databaseadvisors.com/mailman/listinfo/accessd
> Website: http://www.databaseadvisors.com
>


More information about the AccessD mailing list