Microsoft .NET FAQ

Contact Support



Q1How does Pegasus Imaging build components for the .NET Platform?
Q2I am embedding a Pegasus Imaging Winforms .NET control within a .NET User Control for use in a client side web application and am not able to get the control to display on the web page . An icon is appearing where my control should be. Are there solutions to this issue?
Q3I am trying to run a Visual Studio .NET application using a Pegasus .NET control on a 64 bit machine and am seeing one of the messages outlined below being generated. Why is this happening and how do I resolve this issue?
Q4I am running a .NET application on a system without a connection to the internet and my application is taking a long time to start and initiate. What is the reason for this and is there anything that can be done to solve this issue?

Q1: How does Pegasus Imaging build components for the .NET Platform?
Read Pegasus Imaging’s "Building Robust Imaging Components for the Microsoft .NET Platform" white paper.

Q2: I am embedding a Pegasus Imaging Winforms .NET control within a .NET User Control for use in a client side web application and am not able to get the control to display on the web page . An icon is appearing where my control should be. Are there solutions to this issue?
The most likely reason this is occurring is because of client security settings on the Assembly files. The following steps detail how the security settings can be adjusted to address these issues.

1)Provide Full Trust authentication to the DLL that is created.
2)Provide Full Trust authentication to the Pegasus Winforms Assembly being used in the project.
3)Provide Full Trust authentication to the Internet Zone where the page is being hosted. For example, if you have added the page to the Internet Zone you would need to configure the security setting to Full Trust in the .NET configuration wizard.

When you open the page containing the embedded control it should now display. If you do need further assistance please contact support@jpg.com and they can assist.

Q3: I am trying to run a Visual Studio .NET application using a Pegasus .NET control on a 64 bit machine and am seeing one of the messages outlined below being generated. Why is this happening and how do I resolve this issue?
Please note that these exceptions were generated with specific Pegasus .NET controls for demonstration purposes and the specific text of the message may differ slightly based on the control you are using.

Exception Message #1

PegasusImaging.WinForms.ImagXpress8.ImagXpressException was unhandled
Message="Could not initialize ImagXpress, are all of the correct files on this PC?"
Source="PegasusImaging.WinForms.ImagXpress8"
Number=0
StackTrace:
at PegasusImaging.WinForms.ImagXpress8.WorkerImports.LoadWorkerDllFromResource()
at PegasusImaging.WinForms.ImagXpress8.ImagXpress..ctor()
at FormIdAndDropout.MainScreen.InitializeComponent() in C:\Program Files (x86)\Pegasus Imaging\FormFix\V3.0\Samples\DotNet\C#\FormIdAndDropout\Form1.cs:line 211
at FormIdAndDropout.MainScreen..ctor() in C:\Program Files (x86)\Pegasus Imaging\FormFix\V3.0\Samples\DotNet\C#\FormIdAndDropout\Form1.cs:line 88
at FormIdAndDropout.MainScreen.Main() in C:\Program Files (x86)\Pegasus Imaging\FormFix\V3.0\Samples\DotNet\C#\FormIdAndDropout\Form1.cs:line 595
at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

Exception Message #2

System.BadImageFormatException was unhandled
Message=" is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)" Source="CircleCSharp"
StackTrace:
at CircleCSharp.FormMain..ctor()
at CircleCSharp.FormMain.Main() in C:\Program Files (x86)\Pegasus Imaging\PrintPRO\V3.0\Samples\DotNet\C#\circlecsharp\FormMain.cs:line 187
at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

The .NET control needs to run as a 32-bit application on a 64-bit machine. .Net will try to build code to run as fast as possible on the native hardware, unless you tell it otherwise. Essentially, projects built using the “Any CPU” setting for the CPU Target will run as 64-bit applications on a 64-bit machine.

The solution is to change this setting to “x86” forcing the compiler to build a 32-bit application. The steps to do this are as follows:

In VS2005:
Select Project> (Project name) Properties.
Select Build tab. At Platform Target, select x86.

Save the project, build, and run.

Your application should now run on the 64-bit machine.

Q4: I am running a .NET application on a system without a connection to the internet and my application is taking a long time to start and initiate. What is the reason for this and is there anything that can be done to solve this issue?
Pegasus .NET DLLs are digitally-signed and have certificates for security purposes. The Microsoft Common Language Runtime environment performs a verification check on any assembly DLL that contains a certificate. This process attempts to access the internet to connect to a remote site. We have seen this happen with applications developed in the .NET 2.0 Framework. There are two ways to stop this from occurring:

Solution 1: Disable certificate checking on the target system as detailed below:

1) Go to the Internet Options options in Internet Explorer.
2) Click on the Advanced tab.
3) Under the Security item, uncheck the item “Check for publisher’s certificate revocation”.

Solution 2: Disable certificate checking for your application only.

For computers using the Microsoft .NET 2.0 Framework Service Pack 1 environment and above, you can create a configuration file for your application and specify for verification checking to be disabled: This is discussed in the following Microsoft article: http://support.microsoft.com/kb/936707. You will need to do the following:

1) Create a file, and then name the file the <ApplicationName>.exe.config file.
2) In a text editor, open the file that you created in step 1.
3) Add the following code to the file.

<?xml version="1.0" encoding="utf-8"?>

<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
</configuration>

For example, one could create a file named “Pegasus.exe.config” for an application named Pegasus.exe. You must then place the text above as the contents of the file and store it in the same directory with the executable.


Sitemap | © 2008 Pegasus Imaging Corporation. All Rights Reserved. | Privacy Statement.