Prev: update tables
Next: ciao
From: xbound on
I have the following code to get the network login name:

Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
"GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long

Function fOSUserName() As String
' Returns the network login name
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = vbNullString
End If
End Function


This code is available widely from the internet and I've been using it in a
couple of my Access projects with no problem. Then lately I created a new
Access project and import the form containing that piece of code straight
from one of the old projects. However; as soon as that function is
entered, I would get an error : "Compile error. Type declaration does not
match declared data type." such that I couldn't examine the values of
variables there. It seems the statement "fOSUserName = Left$(strUserName,
lngLen - 1)" is causing trouble. If I comment out that statement, I don't
get any error but of course I won't get the network login name either. As
a precaution I stepped through the function in the old project and found
that everything is working as expected.

The old adp projects were created in Access 2003 on a XP workstation. The
new project was created in Access 2007 on a Win 7 workstation. Since the
old projects are functioning perfectly on the Win 7 machine, I gather that
the Access version and the OS platform are not the issues. This only
makes the problem more baffling to me. Maybe someone could spot or have
an idea what I've missed?

thanks.

From: Mark Andrews on
I just copied your code into a new database in Access 2007 sp2 on my Windows
7 laptop and it worked fine.

HTH,
Mark

"xbound" <ekwong999(a)hotmail.com> wrote in message
news:162CFB93-ADF0-4D33-9495-5B8FF564C99E(a)microsoft.com...
> I have the following code to get the network login name:
>
> Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
> "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
>
> Function fOSUserName() As String
> ' Returns the network login name
> Dim lngLen As Long, lngX As Long
> Dim strUserName As String
> strUserName = String$(254, 0)
> lngLen = 255
> lngX = apiGetUserName(strUserName, lngLen)
> If lngX <> 0 Then
> fOSUserName = Left$(strUserName, lngLen - 1)
> Else
> fOSUserName = vbNullString
> End If
> End Function
>
>
> This code is available widely from the internet and I've been using it in
> a couple of my Access projects with no problem. Then lately I created a
> new Access project and import the form containing that piece of code
> straight from one of the old projects. However; as soon as that function
> is entered, I would get an error : "Compile error. Type declaration does
> not match declared data type." such that I couldn't examine the values
> of variables there. It seems the statement "fOSUserName =
> Left$(strUserName, lngLen - 1)" is causing trouble. If I comment out that
> statement, I don't get any error but of course I won't get the network
> login name either. As a precaution I stepped through the function in
> the old project and found that everything is working as expected.
>
> The old adp projects were created in Access 2003 on a XP workstation.
> The new project was created in Access 2007 on a Win 7 workstation. Since
> the old projects are functioning perfectly on the Win 7 machine, I gather
> that the Access version and the OS platform are not the issues. This
> only makes the problem more baffling to me. Maybe someone could spot or
> have an idea what I've missed?
>
> thanks.

From: Gina Whipp on
Was that Windows 7 64 bit or 32 bit? And are either of you running in
Compatibly Mode?

"Mark Andrews" <mandrews___NOSPAM___(a)rptsoftware.com> wrote in message
news:uRbAA6KvKHA.1796(a)TK2MSFTNGP02.phx.gbl...
I just copied your code into a new database in Access 2007 sp2 on my Windows
7 laptop and it worked fine.

HTH,
Mark

"xbound" <ekwong999(a)hotmail.com> wrote in message
news:162CFB93-ADF0-4D33-9495-5B8FF564C99E(a)microsoft.com...
> I have the following code to get the network login name:
>
> Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
> "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
>
> Function fOSUserName() As String
> ' Returns the network login name
> Dim lngLen As Long, lngX As Long
> Dim strUserName As String
> strUserName = String$(254, 0)
> lngLen = 255
> lngX = apiGetUserName(strUserName, lngLen)
> If lngX <> 0 Then
> fOSUserName = Left$(strUserName, lngLen - 1)
> Else
> fOSUserName = vbNullString
> End If
> End Function
>
>
> This code is available widely from the internet and I've been using it in
> a couple of my Access projects with no problem. Then lately I created a
> new Access project and import the form containing that piece of code
> straight from one of the old projects. However; as soon as that function
> is entered, I would get an error : "Compile error. Type declaration does
> not match declared data type." such that I couldn't examine the values
> of variables there. It seems the statement "fOSUserName =
> Left$(strUserName, lngLen - 1)" is causing trouble. If I comment out that
> statement, I don't get any error but of course I won't get the network
> login name either. As a precaution I stepped through the function in
> the old project and found that everything is working as expected.
>
> The old adp projects were created in Access 2003 on a XP workstation.
> The new project was created in Access 2007 on a Win 7 workstation. Since
> the old projects are functioning perfectly on the Win 7 machine, I gather
> that the Access version and the OS platform are not the issues. This
> only makes the problem more baffling to me. Maybe someone could spot or
> have an idea what I've missed?
>
> thanks.

From: Mark Andrews on
Mine is 64bit. Not in compatibility mode. However I'm not the one with the
issue.
Mark

"Gina Whipp" <NotInterested(a)InViruses.com> wrote in message
news:uwKmlKLvKHA.1964(a)TK2MSFTNGP04.phx.gbl...
> Was that Windows 7 64 bit or 32 bit? And are either of you running in
> Compatibly Mode?
>
> "Mark Andrews" <mandrews___NOSPAM___(a)rptsoftware.com> wrote in message
> news:uRbAA6KvKHA.1796(a)TK2MSFTNGP02.phx.gbl...
> I just copied your code into a new database in Access 2007 sp2 on my
> Windows
> 7 laptop and it worked fine.
>
> HTH,
> Mark
>
> "xbound" <ekwong999(a)hotmail.com> wrote in message
> news:162CFB93-ADF0-4D33-9495-5B8FF564C99E(a)microsoft.com...
>> I have the following code to get the network login name:
>>
>> Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
>> "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
>>
>> Function fOSUserName() As String
>> ' Returns the network login name
>> Dim lngLen As Long, lngX As Long
>> Dim strUserName As String
>> strUserName = String$(254, 0)
>> lngLen = 255
>> lngX = apiGetUserName(strUserName, lngLen)
>> If lngX <> 0 Then
>> fOSUserName = Left$(strUserName, lngLen - 1)
>> Else
>> fOSUserName = vbNullString
>> End If
>> End Function
>>
>>
>> This code is available widely from the internet and I've been using it in
>> a couple of my Access projects with no problem. Then lately I created a
>> new Access project and import the form containing that piece of code
>> straight from one of the old projects. However; as soon as that
>> function
>> is entered, I would get an error : "Compile error. Type declaration does
>> not match declared data type." such that I couldn't examine the values
>> of variables there. It seems the statement "fOSUserName =
>> Left$(strUserName, lngLen - 1)" is causing trouble. If I comment out
>> that
>> statement, I don't get any error but of course I won't get the network
>> login name either. As a precaution I stepped through the function in
>> the old project and found that everything is working as expected.
>>
>> The old adp projects were created in Access 2003 on a XP workstation.
>> The new project was created in Access 2007 on a Win 7 workstation.
>> Since
>> the old projects are functioning perfectly on the Win 7 machine, I
>> gather
>> that the Access version and the OS platform are not the issues. This
>> only makes the problem more baffling to me. Maybe someone could spot
>> or
>> have an idea what I've missed?
>>
>> thanks.
>
From: Gina Whipp on
Mark,

Hopefully, the OP will post back. I found I had to run my Access 2003 in
compatiblity mode, aslo 64 bit but my Access 2007 is fine as long as in a
Trusted Location. But all we can do is wait and see...
--
Gina Whipp
2010 Microsoft MVP (Access)

"I feel I have been denied critical, need to know, information!" - Tremors
II

http://www.regina-whipp.com/index_files/TipList.htm

"Mark Andrews" <mandrews___NOSPAM___(a)rptsoftware.com> wrote in message
news:eFuvyNMvKHA.5980(a)TK2MSFTNGP05.phx.gbl...
Mine is 64bit. Not in compatibility mode. However I'm not the one with the
issue.
Mark

"Gina Whipp" <NotInterested(a)InViruses.com> wrote in message
news:uwKmlKLvKHA.1964(a)TK2MSFTNGP04.phx.gbl...
> Was that Windows 7 64 bit or 32 bit? And are either of you running in
> Compatibly Mode?
>
> "Mark Andrews" <mandrews___NOSPAM___(a)rptsoftware.com> wrote in message
> news:uRbAA6KvKHA.1796(a)TK2MSFTNGP02.phx.gbl...
> I just copied your code into a new database in Access 2007 sp2 on my
> Windows
> 7 laptop and it worked fine.
>
> HTH,
> Mark
>
> "xbound" <ekwong999(a)hotmail.com> wrote in message
> news:162CFB93-ADF0-4D33-9495-5B8FF564C99E(a)microsoft.com...
>> I have the following code to get the network login name:
>>
>> Private Declare Function apiGetUserName Lib "advapi32.dll" Alias _
>> "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
>>
>> Function fOSUserName() As String
>> ' Returns the network login name
>> Dim lngLen As Long, lngX As Long
>> Dim strUserName As String
>> strUserName = String$(254, 0)
>> lngLen = 255
>> lngX = apiGetUserName(strUserName, lngLen)
>> If lngX <> 0 Then
>> fOSUserName = Left$(strUserName, lngLen - 1)
>> Else
>> fOSUserName = vbNullString
>> End If
>> End Function
>>
>>
>> This code is available widely from the internet and I've been using it in
>> a couple of my Access projects with no problem. Then lately I created a
>> new Access project and import the form containing that piece of code
>> straight from one of the old projects. However; as soon as that
>> function
>> is entered, I would get an error : "Compile error. Type declaration does
>> not match declared data type." such that I couldn't examine the values
>> of variables there. It seems the statement "fOSUserName =
>> Left$(strUserName, lngLen - 1)" is causing trouble. If I comment out
>> that
>> statement, I don't get any error but of course I won't get the network
>> login name either. As a precaution I stepped through the function in
>> the old project and found that everything is working as expected.
>>
>> The old adp projects were created in Access 2003 on a XP workstation.
>> The new project was created in Access 2007 on a Win 7 workstation.
>> Since
>> the old projects are functioning perfectly on the Win 7 machine, I
>> gather
>> that the Access version and the OS platform are not the issues. This
>> only makes the problem more baffling to me. Maybe someone could spot
>> or
>> have an idea what I've missed?
>>
>> thanks.
>

 |  Next  |  Last
Pages: 1 2 3 4
Prev: update tables
Next: ciao