473,386 Members | 1,943 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Who's feeling brave?

I'm working on a .net remoting application that's taken a strange turn
for the worst. I've posted the shortest code snippet that still causes
the crash below. I've got a server app, a client caller and a remoting
object all in one project.

The kicker is, the remoting call's appear to work but *every* single
time we make a call, and the client exits, the server application
crashes.

The "brave" part is this. The event log shows that the faulting module
is in PGP. Now, how a PGP LSP module would cause the remoting
application to crash is *beyond* me and PGP is about as helpful at
support as sticking your hand down a emu's throat and trying to get
marshmallows.

If anyone has any idea whats going on here I'd like to know what could
be going on here. The error code is below the code. I've squeezed
things down to make it fit.

[code]

///
/// the remote object
///
using System;

namespace c1.Remoting {
public class RemotingInteropClass : MarshalByRefObject { //
singleton
private int counter = 0;

private RemotingInteropClass() { }
public void IncrementCounter(int value) { counter += value; }
public int GetCounter() { return counter; }
public override Object InitializeLifetimeService() { return
null; }

static RemotingInteropClass mInstance = null;
public static RemotingInteropClass Instance {
get { if(mInstance == null) mInstance = new
RemotingInteropClass(); return mInstance; }
}
}
}
/// this works but then promptly crashes the server
/// the client
///
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Http;
using System.Runtime.Remoting.Channels.Tcp;

using c1.Remoting;

namespace c1Client {
class c1Client {
static void Main(string[] args) {
ChannelServices.RegisterChannel(new TcpChannel());
object objIClass =
Activator.GetObject(typeof(RemotingInteropClass),
"tcp://localhost:8090/IDFF");
RemotingInteropClass iClass =
(RemotingInteropClass)objIClass;
for(int i = 0; i < 10; ++i)
iClass.IncrementCounter(i);
Console.WriteLine("{0}", iClass.GetCounter().ToString());
}
}
}

///
/// the server
///
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Messaging;
using System.Runtime.Remoting.Channels.Tcp;

using c1.Remoting;

namespace c1Server {
class c1Server {
static void Main(string[] args) {
RemotingInteropClass iClass =
RemotingInteropClass.Instance;
TcpChannel ch = new TcpChannel(8090);
ChannelServices.RegisterChannel(ch);
RemotingServices.Marshal(iClass, "IDFF");
Console.ReadLine();
ch.StopListening(null);
}
}
}

The code above works in adding values 1 through 10 and shows the result
of 45 but then crashes with this error:

Faulting application c1server.exe, version 1.0.0.0, stamp 439b8910,
faulting module pgplsp.dll, version 9.0.2.2424, stamp 42e7fb45, debug?
0, fault address 0x0000532d

Any idea's?

Dec 11 '05 #1
3 1087
I just tried this *exact* same code in VS 2003 and it works just fine.
No crashes and it works. Looks like this is a VS2005 issue.

Dec 11 '05 #2
Greg,

I tried the code in VS2005 and it worked fine for me. Perhaps you have
a corrupted install??

Brian

gr***********@gmail.com wrote:
I just tried this *exact* same code in VS 2003 and it works just fine.
No crashes and it works. Looks like this is a VS2005 issue.


Dec 11 '05 #3
I'm beginning to think it's something to do with PGP since .net is
showing that dll in it's fault message. Back to square one for me or
mabye I think it's time to uninstall PGP.

Thanks for trying it though.

Dec 11 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
by: WindAndWaves | last post by:
Hi Gurus I am keen to make a search page on a website, but I have absolutely zero experience with PHP. I am going to hire an expert, but I thought that it may pay to try it a bit first myself...
383
by: John Bailo | last post by:
The war of the OSes was won a long time ago. Unix has always been, and will continue to be, the Server OS in the form of Linux. Microsoft struggled mightily to win that battle -- creating a...
6
by: Keith H Duggar | last post by:
Often I've felt that the ability to alias an existing type where the alias would be treated as a different type thus allowing overloading, etc would be very useful. typedef : alias an existing...
21
by: Cigar | last post by:
I am developing a program for a client. She runs a shop where her clients bring in items for sale or short term buyback. Development of the program has been going great but she's mentioned that...
28
by: DFS | last post by:
I'm unfortunately about to change, or sever, a two-year relationship with a very slow-paying client. Most of the 15 invoices I've sent them arrive 6 to 8 weeks late, and usually only after...
7
by: per9000 | last post by:
Dear Black Knight, I have no quarrel with you sir Knight, but I must import your parents. SHORT VERSION: I tried three variants of "from ../brave.py import sir_robin", one works. I want...
0
by: André | last post by:
Hi, I have still this unsolved problem, so i post it again. I hope someone replies and solves this or tells me it's impossible to do that this way ... My feeling is that it must work ... I...
20
by: kwikius | last post by:
As I understand it posts to comp.std.c++ shouldnt contain personal attacks. Since several of my posts on this to comp.std.c++ on this subject have now been simply ignored with out any reply by...
19
by: joebloe | last post by:
Which browsers, if any, other than FF2/3, support Javascript 1.7? And in those, how do you turn it on? As in, for FF2 you must say: <script type="application/javascript;version=1.7"> or the...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.