Solved

rpc server is not available

Posted on 2011-03-23
4
576 Views
Last Modified: 2012-05-11
I have client/server apps that work as long as they are on the same machine. When they are on different machines, I get "The RPC server is not available". I see the message in the debug output window, I don't get a popup. The binding string is composed with

    status = RpcStringBindingCompose(
          szMyUUID,                       // UUID to bind to.
          (unsigned char*)"ncacn_np", // Named Pipe
          szServer,                                 // Address
          szEndpoint,                 // Endpoint (named pipe)
          "Security=identification dynamic true",                                 // Protocol dependent network options to use.
          &szStringBinding);              // String binding output.

The machines are XP and Windows 7. It doesn't matter which one has the client and server.
szEndpoint is "\\pipe\\pipename" and szServer is "\\\\servername". I can ping the server. I have tried it with and without the "Security..." option.
RPCSS is started. The RPC locator is not running but I have tried it with it running. From what I have read, it's not necessary anyway. The Registry Terminal Server value AllowRemoteRPC is a 1. I tried setting the Registry MSDTC value AllowOnlySecureRPCCalls to 0 as a test. Nothing works. RpcStringBindingCompose and RpcBindingFromStringBinding return successfully and the binding string looks correct. It's NdrGetBuffer, which I can't find any documentation for and have seen references where others couldn't either, in the MIDL compiler generated code that fails.

The firewall is off. I'm on an internal lan and settings are managed by Group  Policy.

It seems like it must be a security or permissions issue. I have administrator privileges on both ends.

What am I missing?

Thanks for the help.
0
Comment
Question by:amorales63
  • 3
4 Comments
 
LVL 13

Expert Comment

by:BCipollone
ID: 35200999
When you go into that service and check the dependencies are all of the dependant services running as well?
0
 

Author Comment

by:amorales63
ID: 35201052
Are you referring to the RPCSS or the cilent/sever apps? I don't think RPCSS is dependant on anything. The client/server apps I'm developing and don't have any dependancies except RPCSS. How do I check it? I don't see anything when looking at the services.
0
 

Accepted Solution

by:
amorales63 earned 0 total points
ID: 35206797
Problem solved. This was originally done for the client and server to be on the same machine. I am now going between machines. The named pipe name was created by concatenating the session ID on the end of the name. On XP this is a 0, on Windows 7 it's a 1. So the names didn't match. It works when I get the name to match.
0
 

Author Closing Comment

by:amorales63
ID: 35239063
There was no helpful input from the experts. I found the problem on my own.
0

Featured Post

Three Reasons Why Backup is Strategic

Backup is strategic to your business because your data is strategic to your business. Without backup, your business will fail. This white paper explains why it is vital for you to design and immediately execute a backup strategy to protect 100 percent of your data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows you how to optimize memory allocations in C++ using placement new. Applicable especially to usecases dealing with creation of large number of objects. A brief on problem: Lets take example problem for simplicity: - I have a G…
Issue: Unstable cursor in Windows XP and Windows runs extremely slow in that any click will bring up the Hour glass (sometimes for several seconds before giving you what you want) . Troubleshooting Process and the FINAL FIX: This issue see…
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

832 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question