Link to home
Start Free TrialLog in
Avatar of 2drews
2drews

asked on

Perl ASPX conflict with .Net 1.1 and .Net 2.0

Hello,
I am a systems administrator who can do basic Perl and PHP without much of a problem. I have a website I have to support which interfaces with a third party. This third party only writes in Perl CGI which I am fine with but I didn't build the site I have to support which is in .Net 1.1.

To interface with the 3rd party they were using Perl ASPX from ActiveState to retrieve the cookie and unencrypt the Perl encrypted session information. The same encryption type wasn't decrypting properly in .Net so to get it unencrypted properly they incorporated this Perl ASPX code. This was working just great until .Net 2.0 was installed on the server.  

Now we get this error and the whole site is taken down:

c:\windows\system32\inetsrv> "C:\Perl\bin\plcx.exe"  --asp.net /noconfig @"C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\root\a4256d24\1c72415f\eapcle8l.cmdline"


PerlNET 1.1.0 build 110
Copyright (C) 2001-2003 ActiveState Corp. All rights reserved.
c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll: error CS1703: An assembly with the same identity 'mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' has already been imported. Try removing one of the duplicate references.
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll: (Location of symbol related to previous error)
Stopped with exit code 1
System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.


Do to another client requiring .Net 2.0 we cannot uninstall it from the server so that is just not an option. The exact errors messages, and situation can be best found by reading this thread.

http://aspn.activestate.com/ASPN/Mail/Message/perl.net/2861761

At the end of the day the need is to only get the session information from the cookie into .Net so their session can stay intact. the Cypt::Tea encryption just doesn't work the same between .Net and Perl. It looks like the Perl ASPX system uses the GAC (Global Assembly Cache) to read in the libraries it needs and completely ignores the bin directory. (I tried to put the correct version in the bin folder to no avail) So when both versions are on the server and have the same named files in the GAC it wiggs out as shown in the error above.

The server is Window 2003 Standard running IIS 6.0 with the site in it's own application pool away from everything else. If I remove this cookie retrieving code in the footer then whole site works PERFECT so I am very sure this is the problem.

Perl ASPX is not supported or being developed anymore so I am pretty much stuck at this point. I have been working on this for about a week and gotten no where so I am appealing for help. Pleae forgive me if I am overlooking or omitting part of the issue.

I love this site and use it a ton for answers but I have found nothing on this. I am a pretty good admin overall and every question I have posted has stumped everyone so I don't ask unless I have axhausted all my resources (I have bugged everyone I know that might be able to help). Thanks for anything you might be able to suggest.
ASKER CERTIFIED SOLUTION
Avatar of tovvenki
tovvenki

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of 2drews
2drews

ASKER

oh man that second link looks very promising. I put that config file in the following location and the bahavior is still the same. :(

c:\perl\bin
C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727

In the doc root of the site too.

They don't say where to put it so I am out of ideas on that.
Avatar of 2drews

ASKER

I am so unbelieveably happy right now!

the new executable name is plcx.exe so I just had to rename the config file and it worked! Thanks so much for your googling. I never found the result you did. Thanks again.