CGI Error w/No Touch Deployment Application

A

Anil Kripalani

I have a .NET Windows Forms application that I launch from a web browser.
The user clicks an HTTP link from an ASP.NET page that launches a .NET exe
(All .NET 1.1). The application runs fine so long as I change the IIS
virtual root "Execute Permissions" to "Scripts and Executables". Under
those circumstances however, when the application exits, I get the error:

CGI Error
The specified CGI application misbehaved by not returning a complete set
of HTTP headers. The headers it did return are:

If I only use the default "Scripts" for "Execute Permissions" then I get an
error on launch. Sometimes that error is:

An unhandled exception of type 'System.IO.FileLoadException' occurred in
IEExec.exe.
Additional information: The located assembly's manifest definition with
name 'myappname.exe' does not match the assembly reference.

Anyone have suggestions on how my app can launch and exit without errors
using No Touch Deployment?

Thanks,
Krip
 
B

Brock Allen

as I change the IIS virtual root "Execute Permissions" to "Scripts and
Executables". Under those circumstances however, when the application
exits, I get the error:

CGI Error
The specified CGI application misbehaved by not returning a
complete set
of HTTP headers.

"Scripts and Executables" says you want to run executables on the webserver.
No Touch is about downloading the app to the client, so this is the incorrect
setting for the webserver.
An unhandled exception of type 'System.IO.FileLoadException'
occurred in
IEExec.exe.
Additional information: The located assembly's manifest definition
with
name 'myappname.exe' does not match the assembly reference.
Anyone have suggestions on how my app can launch and exit without
errors using No Touch Deployment?

There seems to be a problem with strong names somewhere. It looks like this
app is strongly named, yes? Does the app run fine when it's run locally?
 
A

Anil Kripalani

Brock,

Yes the app is strongly named. I've got the following lines in
AssemblyInfo.cs:

[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyName("")]
[assembly: AssemblyKeyFile("..\\..\\publicprivatekeyfile.snk")]
[assembly: System.Security.AllowPartiallyTrustedCallers()]

I made one modification to my app. It was reading the config file and
accessing it via Application.ExecutablePath. I have changed this to
AppDomain.CurrentDomain.BaseDirectory. Now the app works fine via HTTP in a
virtual root that allows Anonymous access. However, I need it to work in my
web site that has Anonymous turned off. There, when 'Scripts' only is
selected on that site, the link to the exe does nothing.

Thanks for your help,
Krip
 
B

Brock Allen

However, I need
it to work in my web site that has Anonymous turned off. There, when
'Scripts' only is selected on that site, the link to the exe does
nothing.

What authentication mechanism are you using on the webserver then? Basic?
Integrated? Also, how are you dynamically loading the resource from the server?
File class or WebRequest class?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,774
Messages
2,569,598
Members
45,152
Latest member
LorettaGur
Top