We help IT Professionals succeed at work.

We've partnered with Certified Experts, Carl Webster and Richard Faulkner, to bring you two Citrix podcasts. Learn about 2020 trends and get answers to your biggest Citrix questions!Listen Now

x

User Logon Groups & Windows 95

flfmdll
flfmdll asked
on
Medium Priority
309 Views
Last Modified: 2013-12-03
Under NT, I can use NetUserGetLocalGroups to get a list of groups the user belongs to. A similar function can be used for global groups. When I transfer my executable to Windows95, it tells me there are DLLs missing. I know the DLLs relate to the function for getting this group information. The DLLs are netapi32, netrap, ntdll, samlib, and advapi32.

How do I keep this functionality under Windows 95 and keep the source code the same?
Comment
Watch Question

Commented:
flfmdll...
I have found the wollowing article at the MSDN Library:

============================================
Windows 95 Support for Net Function Calls

Article ID: Q125700
Creation Date: 01-FEB-1995
Revision Date: 21-OCT-1996

The information in this article applies to:
•Microsoft Win32 Software Development Kit (SDK)

Windows 95 supports a subset of Net function calls. This is a list of the supported functions:

  NetAccessAdd
  NetAccessCheck
  NetAccessDel
  NetAccessEnum
  NetAccessGetInfo
  NetAccessGetUserPerms
  NetAccessSetInfo
  NetConnectionEnum
  NetFileClose2
  NetFileEnum
  NetSecurityGetInfo
  NetServerGetInfo
  NetServerSetInfo
  NetSessionDel
  NetSessionEnum
  NetSessionGetInfo
  NetShareAdd
  NetShareDel
  NetShareEnum
  NetShareGetInfo
  NetShareSetInfo

Windows 95 support for these functions differs from Windows NT in two ways. First, because Windows 95 doesn't support Unicode, these functions require ANSI strings. Second, Windows 95 exports the Net functions from SVRAPI.DLL instead of NETAPI32.DLL. If an attempt is made to run a native Windows NT application on Windows 95, the following error will result:

  "The <application> file is linked to missing export NETAPI32.DLL
   <Net...API>"

To handle these differences, applications targeted to both Windows NT and Windows 95 should do the following:
1. Avoid importing Net functions from NETAPI32.DLL at link time. Instead, applications should do a run time version check and dynamically link to NETAPI32.DLL for Windows NT or SVRAPI.DLL for Windows 95.

For additional information on version checking, please see the following article in the Microsoft Knowledge Base:

ARTICLE-ID:Q92395
TITLE     :Determining System Version from a Win32-based Application

2. Make sure the application doesn't depend on the presence of unsupported API's. 3.When calling Net functions, pass strings using a character set appropriate for the host operating system. Use Unicode strings for Windows NT and ANSI strings for Windows 95.

If you are only targeting Windows 95 and wish to use SVRAPI.DLL, SVRAPI.H and SVRAPI.LIB are included in the Windows 95 DDK. NOTE: The formal parameter lists for the Net function calls may be slightly different between the header files for Windows NT and Windows 95.

------------------------------------------------------------------------
©1997 Microsoft Corporation. All rights reserved. Legal Notices.

Additional reference words: 4.00 95
KBCategory: kbnetwork
KBSubcategory: NtwkLmapi

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

Author

Commented:
This is the most correct answer I have seen. I stumbled upon the same MS item late yesterday. Thanks.
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.