|
There isn't one. Crystal Reports doesn't talk over TCP/IP. It just renders a report with the datasource thrown at it. Your question doesn't make any sense.
|
|
|
|
|
crystalReport don't go on internet so no port, no firewall.
Patrice
“Everything should be made as simple as possible, but no simpler.” Albert Einstein
|
|
|
|
|
I'm not familiar with your architecture, but in general try to open port 6400 and 6401(requestport), it may help you.
Find More .Net development tips at : .NET Tips
The only reason people get lost in thought is because it's unfamiliar territory.
|
|
|
|
|
Or check your firewall team what port it is dropping on their ticket notes
|
|
|
|
|
Hi community!
I got a situation that's driving me insane: In order to work together with a third-party suite of applications, we have created a kind of addon.
This addon is being loaded without any problems into several third-party applications as well as into a MS Word addon the other party wrote.
Our addon creates its own AppDomain, so that there should be no interference with the host application.
All of this works nicely when using .NET 4.0 up to .NET 4.5.2.
Recently, a customer tried running the same setup with .NET 4.6.1 and all of a sudden, the addon crashes when it's being loaded into the Winword-Addon.
The crash happens as soon as our addon tries to access ConfigurationManager.AppSettings.
The call stack shows that there's a NullReferenceException at System.Xml.XmlCharType.get_Instance() that's happening while the configuration system is being initialized.
It only happens there and only with .NET 4.6.1.
I'm out of ideas, can anyone help?
Regards,
mav
--
Black holes are the places where God divided by 0...
|
|
|
|
|
Looking at the source[^], the most likely culprit would seem to be the embedded resource. Is the Word addon doing anything odd with cultures, or messing with the CAS policy?
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Thanks for the reply, Richard!
I also had taken a look at the code in System.Xml.dll from 4.5.2 and from 4.6.1 using ILSpy, but couldn't find any significant difference.
Both versions had the "XmlCharType.bin" resource embedded inside the assembly.
When our addon is being loaded, it's creating a separate AppDomain to avoid any side effects the host application might have, so I have no idea what they could actually do to make our addon fail so miserably.
I even looked at the assemblies loaded into our AppDomain when initializing the configuration system fails and System.Xml.dll is already loaded at the very beginning, so I really cannot see what could keep the assembly from finding its own embedded resource... To my understanding, even fiddling with CAS cannot influence access to an assembly when it's already loaded, can it?
Regards,
mav
--
Black holes are the places where God divided by 0...
|
|
|
|
|
How to divide the individual character from the cursive font on the image
DNL Murthy
modified 4-Apr-16 10:22am.
|
|
|
|
|
You have already been advised to use the forum at the end of the article for such questions.
|
|
|
|
|
You ought to remove your email address from your signature. It attracts spam.
And it attracts spammers to visit CP for harvesting email addresses.
|
|
|
|
|
Hi Sir,
I am Murthy, I am try to developing cursive data recognization on image. I downloaded your project, It was a great project. But unable to get the individual character from the image. Please help sir
D N L Murthy
modified 4-Apr-16 10:22am.
|
|
|
|
|
The article is not "our" article. It belongs to the person who wrote it. Articles are contributed by the volunteer community, not necessarily by The Code Project. At the bottom of the article you're talking about you'll find a forum dedicated to that article. Articles are supported by the people who wrote them.
|
|
|
|
|
Hi I wrote a dvd burning utility using the code from imapi2Interop.cs by Eric Haddan in Code Project. It works fine. Thank Eric for posting the code.
I write my data in three sessions (on purpose)so that I can (hopefully) generate a unique id (Sha1 hash using the physical starting and ending offsets of each of the sessions + other stuff), according to what I read the offsets could change if the disc is copied.
I tried using MsftDiscFormat2Data.MultisessionInterfaces but it looks like it is not valid for closed dvd.
Any pointer or idea as to how I may be able to get the start and ending offsets of each of the sessions in the DVD?
Thanks.
|
|
|
|
|
Hello,
take the following scenario:
We have a Windows Forms application called "CallMultiple" which accepts e.g. one string parameter in the Main method.
Now - via a command input - this application is tiggered the first time. It gets the input string "first", and sets a static variable "invocation count" to zero as well as the parameter "first" into a static variable called "invocation type". Both static variables should be public.
With parameter "first" a GUI Window is presented.
The process only ends if somebody clicks the "Terminate" button in displayed GUI Window.
Now there happens a second invocation with parameter value "second".
(The case, that the value "first" is coming again shall not be handled for this question).
Question: is it possible to compare the parameter of this invocation ("second") to the parameter already stored in the first invocation "invocation type" = "first" ?
and if it is not "first" will do something different, e.g bump the static counter "invocation count" and then ends (that is: dispose the process).
Can the waiting process (first invocation) get the counter and display e.g. a message like "application called x times" before it will end (triggered by the "terminate" button in the GUI Windows)
That means: can two processes of the same assembly share data via public static variables ?
Can somebody answer this question.
Many thanks in advance
Wolfgang
|
|
|
|
|
|
What you want is IPC (Inter process communication). There is a section here on CP about that, and one project I like is NetMQ[^], a C# port of ZeroMQ. NetMQ can be used as an IPC system, and handles a lot of the things needed for that for you, making it a lot simpler to, for example, send messages with multiple parts (refered to as 'Frames' in NetMQ).
Depending on the size and complexity of the project, this may be overkill, but it may be useful in other places as well.
What do you get when you cross a joke with a rhetorical question?
The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism.
Do questions with multiple question marks annoy you???
|
|
|
|
|
Hello,
many thanks for the quick answers.
They gave me valuable hints which I think will allow me
to solve my problem.
Just for your information: the problem is:
I want to control a flatbed scanner (any make).
I want to scan strips of a cine film which should be moved
through the scanner (in sections of about 4 to 20 cm - depending on the width of the scanners TPU) using a (custom built) transport mechanism with a stepper motor controlled by an Arduino UNO board.
The controlling program (FeederControl), which can be invoked by most scanning programs via a function that allows to show just scanned images with a defined image viewer (e.g. IrfanView) by triggering the specified program (in this scenario it will be not an image viewer but the FeederControl) providing the URL/URI of the just scanned image.
If the FeederControl program is invoked, it has to do the move and than has to press the "SCAN" button of the idling scanning program to start a new scanning process.
Than it has to wait until a new request is coming from the ScannerProgram and start the whole thing over again.
if you are interested:
see CineToVidWiki
I have to do the new program, because the old ScanController mentioned in the Wiki does not work successfully under Windows 10 and I have no idea why. It must be a TWAIN problem. And the envisaged solution would avoid to invoke the twain driver as it is done by the ScanController.
This will then only be done by the various Scanner programs.
Another advantage would be: the Scannerprogram can stay open and must not be invoked seperately for each scan, as currently the ScanController does. That means: the whole workflow is driven by the ScannerProgram and not by the FeederControl (which will be a pretty small program).
Many many thanks again
Wolfgang
|
|
|
|
|
Take a look at "single instance application". When you start the application again while an instance is already running, the command line parameters can be passed to the running application.
|
|
|
|
|
static void Main(string[] args)
{
int a;
int b;
int c;
HOME:
Console.WriteLine("Enter Any Number");
a = Int32.Parse(Console.ReadLine());
if
(a <= 0)
do
Console.WriteLine("Number must be greater than 0");
while (a > 0) ;
else
Console.WriteLine("Enter Second Number");
now question is that I want to repeat code until the value of "a" is greater than "0" (zero. how to do this?
|
|
|
|
|
First off, don't use int.Parse - use int.TryParse instead:
int a;
if (!int.TryParse(Console.ReadLine(), out a))
{
...
}
else
{
...
} That way your code won't crash if you mistype a number - int.Parse will throw an exception.
Second, look at your code:
if(a <= 0)
do
Console.WriteLine("Number must be greater than 0");
while (a > 0) ;
If you value is greater than zero it won't even get to the loop!
And if it did, all it would do is print the same line forever...
Probably what you want is something like:
if (a > 0)
{
while (a > 0)
{
...
a--;
}
}
else
{
...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
sorry bro... but i think u prolly didnt get what he is up to..
he needs that the program should not proceed till the user dosent enter a number which is greater than zero..
have a look at my answer
|
|
|
|
|
using System;
namespace blahblah
{
class blah
{
static int a=0;
public static void Main()
{
HOME:
Console.WriteLine("Enter any number:");
a = Convert.ToInt32(Console.ReadLine());
if(a <= 0)
{
Console.WriteLine("The number must be greater than zero");
a = 0;
Main();
}
}
}
}
^^ this works fine
But you gota remove all the parameters in the main function.
this gives the following output:
Enter any number:
0
The number must be greater than zero
Enter any number:
..... so on
|
|
|
|
|
You created an unneccessary and unhelpful recursion. If you do the same if the second value gets entered wrongly the user would have to also enter the first value again.
If the brain were so simple we could understand it, we would be so simple we couldn't. — Lyall Watson
|
|
|
|
|
lol really...
|
|
|
|
|
What happens when the user keeps entering invalid inputs and the stack runs out of space?
|
|
|
|