|
Where did you find out how to do that? I have read everything I could find about remoting, and knew that there would be a solution somewhere. Thanks for your help I appreciate your patience.
.Not so Confused
|
|
|
|
|
In the book "Advanced .NET Remoting" by Ingo Rammer.
publisher is apress
)
|
|
|
|
|
I 'm writing a .NET Queued Component. The problem is.. the COM+ application does not start automatically when the client creates an object and calls the method. so the meassages reside on the MSMQ 's private queue. It works if I start the Com+ comonent manually using Component Sevices Explorer. what I 'm missing that the component is not starting on message receive .. any ideas ..?
Thanks in advance ...
Mkl
Mkl
|
|
|
|
|
So you need your component to start when a message is received on the queue? If so, you can use MQ Triggers. Triggers are containers for Rules applied to a queue. By creating Rules, you configure the rule to invoke a method on a COM object or start en EXE. Create your Rules, then create a Trigger on your queue to apply the Rules.
|
|
|
|
|
Hi,
I am trying create deployment package for my windows service application written in C#.
I am able to install my windows service using InstallUtil.exe
but when i try to install using deployment project, it installs successfully but does not show up in Service manager list.
Can anyone knows what I am missing.
Sanjeev
|
|
|
|
|
>How do you install using deployment project?
Right click on Deployment (Setup) project and click on Install popup menu.
>BTW, what is written in installog file?
There is no installog file in the folder.
|
|
|
|
|
OK, I think I can help with this one.
In the Solution Explorer, select your deployment project and press "Custom Actions Editor" icon near the top of the Solution Explorer.
In the Custom Actions window, select the root node, "Custom Actions".
Right-click and choose "Add custom action..."
Select the file that you normally run InstallUtil on as the custom action.
This will have an effect like running InstallUtil during setup, and do the right think at uninstall time too.
Burt Harris
|
|
|
|
|
Is there a way to use an absolute path instead of a relative path with the appSettings file attribute in App.config and Web.config? I want to share a .config across multiple applications.
Ta
--
Ian Darling
|
|
|
|
|
You can put your settings in machine.config and it will pick them up. If you have Fx v1.0 and v1.1 installed, you'll have to use the machine.config for the version of Fx that your app is running under.
|
|
|
|
|
Hi all
I wrote a Windows service and I installed the same on two machines. I gotto start the first instance of the windows service, if and onlt if the second one isnt running. I tried implementing this using the ServiceProcess class. At the time of executing the ServiceController.Stop line, am getting an exception saying that "Unable to open the service at this machine".
Is there anyway to do this?
Thanks in advance
Karthik
|
|
|
|
|
Hi!
I have such problem:
- i make 3-tiered application, in which data access layer work on standalone computer (Server).
- I have some clients which use this server.
On server I have Framework 1.0 only!
But clients can have differ configurations:
- only framework 1.0
- only framework 1.1
- both frameworks
in case when client has only 1.1 version server sometimes throw strange exceptions. On Remoting of OleDbType I have exception that server can not create instance of object on his side.
<br />
'FastReporting.exe': Loaded 'c:\windows\assembly\gac\system.data\1.0.5000.0__b77a5c561934e089\system.data.dll', No symbols loaded.<br />
Strong Thread Exception: Exception: File or assembly name System.Data, or one of its dependencies, was not found.<br />
Does anybody know how to configure client or server to remove such problem?
Good Luck
Alex Kucherenko
|
|
|
|
|
This is not realy whar i Need...
I can not install framework 1.0 for each client...
framework 1.1 does not contains dll version supported by server.
That is why I can not say client to downgrade version to 1.0.3300 dlls.
and server can not be upgrade to 1.0.5000 version, because server does not contains 1.1 framework dlls.
so here we have problem that 1.0 version dlls not compatible with 1.1 version.
Downgrade to previous version of framework does not work (in my case)!!!
must I synchronize versions of framewors on server and clients?
I don't want to do this... I think that must be a way how to configure server and clients.
Good Luck
Alex Kucherenko
|
|
|
|
|
Add a FastReporting.exe.config file with this content:
<?xml version ="1.0"?>
<configuration>
<startup>
<requiredRuntime safemode="true" imageVersion="v1.0.3705" version="v1.0.3705" />
</startup>
</configuration>
Try some variations.
Why cant you just upgrade the server? Both runtimes should automatically be used for different assemblies.
<pre><a TITLE="See my user info" href=http://www.codeproject.com/script/profile/whos_who.asp?id=38829>leppie<a>::<a TITLE="Go to all articles written by me" href=http://www.codeproject.com/script/articles/list_articles.asp?userid=38829>AllocCPArticle</a>(<a TITLE="Go to my latest, greatest article!" href=http://www.codeproject.com/useritems/dfamachine.asp >Generic DFA State Machine for .NET</a>);</pre>
|
|
|
|
|
Upgrade server is still the only one solution for this problem...
I want to find more then one solution (if it exists ).
Thanks for help.
Good Luck
Alex Kucherenko
|
|
|
|
|
OK first some easy stuff:
There is a few good articles in April 2003 MSDN on sidebyside execution.
What is happening in your case (afai can figure it out):
1. Server defines an interface
2. Client implements interface
3. Client send inteface to the server
4. Server loads implemetation class. KABOOM!!!
How can this be? Simple, the client has made a reference to the culprit assembly (OleDB in your case, that is new in 1.1). This is however not desirable.
Like I said, installing 1.1 on the server, should automatically resolve these issues. Not doing this, leaves with 3 options:
1. Prevent the client from using "new" libaries. This not however desirable either, although I think the 1.1 compiler can compile for 1.0 compatibilty (this would be nice).
2. Use Remoting. This will be painfull, but will allow you to do more.
3. Compile any source at a single point, e.g. the server.
So I guess its back to the drawing boards for you
Hope it helps
<a TITLE="See my user info" href=http:
|
|
|
|
|
Does anyone know what factors affect the memory size an object will consume by simply creating a new instance? I know that member-level value-types will consume memory respective of their data type (Int32 consumes 4 bytes, etc.). What about code? Does a class that contains no member variables, but 2000 lines of code consume any memory by simply instantiating a new one?
|
|
|
|
|
CBoland wrote:
Does anyone know what factors affect the memory size an object will consume by simply creating a new instance? I know that member-level value-types will consume memory respective of their data type (Int32 consumes 4 bytes, etc.). What about code? Does a class that contains no member variables, but 2000 lines of code consume any memory by simply instantiating a new one?
Generally, no. Since .NET is garbage collected, an instance of a class needs some information for garbage collection and Reflection. IIRC, any Object instance on .NET takes 16 bytes of memory. Another common source of "hidden" memory consumption on OOP environments are virtual methods.
ORACLE One Real A$#h%le Called Lary Ellison
|
|
|
|
|
Code shouldnt affect memory.. but if you have declared any virtual functions or derived from some some asbtract base class.. it will as vtable does require some space..
And any static variables also consume.. but only once..
aravinthan
<hr>
Visit me:
http:
When you know something.. its meant to share with others :-) for otherwise that knowledge has no worth:-)
mail me:
aravinthan@rediffmail.com
<hr>
|
|
|
|
|
Hi guys.....Im trying to run this application on mi VS.net and (considering that Im kinda of a newbie on this) I cant follow the instructions cuz they dont match.
Can someone please take a look at this and let me know what they think...
http://www.devbuzz.com/content/zinc_evb_comm_control_pg1.asp
any help?
X-ZD Designs
|
|
|
|
|
Hi all, hope some one can help here
I have this in C#:
void Save(){}
bool Execute(){}
bool Process()
{
Save();
return Execute();
}
.NET generates the following IL:
.locals init (bool V_0)
IL_0000: ldarg.0
IL_0001: call instance void Save()
IL_0006: ldarg.0
IL_0007: callvirt instance bool Execute()
IL_000c: stloc.0
IL_000d: ldloc.0
IL_000e: ret
Now why does it not do this?
IL_0000: ldarg.0
IL_0001: call instance void Save()
IL_0006: ldarg.0
IL_0007: callvirt instance bool Execute()
IL_000c: ret
I mean this does mean this "do" this same doesnt it? Is there a reason for this behaviour?
Cheers
<a TITLE="See my user info" href=http:
|
|
|
|
|
Theoretically, there’s no good reason to optimize IL code, so I think MS didn’t put too much effort on it. What you showed should be done by the JIT, anyways.
ORACLE One Real A$#h%le Called Lary Ellison
|
|
|
|
|
Daniel Turini wrote:
Theoretically, there’s no good reason to optimize IL code, so I think MS didn’t put too much effort on it. What you showed should be done by the JIT, anyways.
Thanks
So those 2 are == ? If I write IL manually, can I write it either way then?
What triggered me to ask this , is that method overhead does add up, even though its only about 5ns a call, but call that 100,000 times and it makes sense to inline a method, if possible. It appears the JIT is NOT inlining small methods eg operater overloads. Is there a way to force this without having to manually edit the IL?
<a TITLE="See my user info" href=http:
|
|
|
|
|
leppie wrote:
So those 2 are == ? If I write IL manually, can I write it either way then?
What triggered me to ask this , is that method overhead does add up, even though its only about 5ns a call, but call that 100,000 times and it makes sense to inline a method, if possible. It appears the JIT is NOT inlining small methods eg operater overloads. Is there a way to force this without having to manually edit the IL?
==? In theory, yes.
IIRC, the JIT inlines any method with less than 32 IL bytes.
One thing to notice is that the JIT can't inline a virtual method, because the proper method to call is only known at the time of the call, and can change from call to call. BTW, virtual method calls are very expensive.
If you need such degree of control, I suggest you that, before going into ILASM, try managed C++, at least for the critical part. It's not that beautiful, but you still have templates and some form of inline control.
And if the "inline" keyword doesn't help, you can always resort to macros
ORACLE One Real A$#h%le Called Lary Ellison
|
|
|
|
|
Daniel Turini wrote:
BTW, virtual method calls are very expensive.
I didnt spot that
The whole program will be ported to C (for CS) once I have finished it, so I will keep those things in mind. Maybe make some IL "macros" ?
Thanks for the help
PS: You know of any good (free) IL resources, besides SSCLI and the Tool Developer Guide?
<a TITLE="See my user info" href=http:
|
|
|
|
|
leppie wrote:
PS: You know of any good (free) IL resources, besides SSCLI and the Tool Developer Guide?
Nope. Actually, I almost only use the good old compile, "let's see in ILDASM" and System.Reflection.Emit documentation.
The cordbg.exe, if you don't mind using a so beautiful interface, is a very good source for finding how the JIT is behaving. It's a bit hard, you need to know x86 ASM (it's not THAT different from IL), generate a Release version with debug info, and use "m JitOptimizations=1" to be sure that JIT will optimize code. Then, debug with that beautiful interface until you reach the call you need to check and use "dis" to see the native instructions.
ORACLE One Real A$#h%le Called Lary Ellison
|
|
|
|