RPC in Windows 9x

The native RPC implementation provided by Microsoft as a part of Windows 9x is DCE-compatible and is supported by LayGO RPC. An exception is that Microsoft does not provide RPC Name Service as part of Windows 9x. RPC Name Service, if needed, must be supplied by another operating system.

LayGO RPC was developed with and has only been tested with Microsoft's implementation of RPC. LayGO RPC for Win32 in Windows 9x is fully interoperable with LayGO RPC for Solaris under the same restrictions that apply to RPC in Windows NT.

Configuring Windows 9x to Use RPC Name Service

The following is the text of Article Q137567 of the Microsoft Knowledge Base concerning use of RPC Name Service under Windows 95:

Article ID: Q137567

To implement client-side RPC, Windows 95 uses a Name Service Provider on
a Windows NT Workstation or Windows NT Server. This service is provided by
the Windows NT Locator which is a database that contains a list of servers
and the information to connect to them. To allow Windows 9x to point to the
computer running the locator service, modify the Registry.

WARNING: Using Registry Editor incorrectly can cause serious, system-wide
problems that may require you to reinstall Windows NT to correct them.
Microsoft cannot guarantee that any problems resulting from the use of
Registry Editor can be solved. Use this tool at your own risk.

1. On the computer running Windows 95, run Registry Editor and add the
   NameService key under:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc

2. The NameService key should contain the following string values:

      DefaultSyntax        "3"
      Endpoint             "\pipe\locator"
      NetworkAddress       "\\<Machine running Locator service>"
      Protocol             "ncacn_np"
      ServerNetworkAddress "\\<Machine running Locator service>"

3. For other protocol entries, view the registry under:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\ClientProtocols

      Default              (value not set)
      ncacn_ip_tcp         "rpcltc3.dll"
      ncacn_nb_nb          "rpcltc5.dll"
      ncacn_np             "rpcltc1.dll"
      ncacn_spx            "rpcltc6.dll"
      ncalrpc              "ncalrpc"