NickChange Plugin |
Author: |
Message: |
remkot
New Member
Posts: 8
Joined: Sep 2005
|
RE: NickChange Plugin
Oke, thank you ferry mutch.
Thank it's works all everything allright!!!!!
Thank you!!!!
Gr remko
|
|
10-05-2005 05:02 PM |
|
|
J-Thread
Full Member
Posts: 467 Reputation: 8
– / / –
Joined: Jul 2004
|
O.P. RE: NickChange Plugin
The file has been updated! Please install the new version and test it. See my first post for the changes
I think the release of the final version will be soon
|
|
10-10-2005 10:47 AM |
|
|
remkot
New Member
Posts: 8
Joined: Sep 2005
|
RE: NickChange Plugin
I going test it )
|
|
10-10-2005 03:09 PM |
|
|
n0n4m3
Junior Member
Posts: 82
45 / /
Joined: Nov 2005
|
RE: NickChange Plugin
There's a problem with the installer when you have more than one .net framework installed. It was searching for RegAsm.exe file in my $WINDOWSDIR\Microsoft.Net\Framework but since I have different versions, the RegAsm.exe isn't in this folder.
When we have different versions of .Net Framework the RegAsm.exe will be located at $WINDOWSDIR\Microsoft.Net\Framework\vx.x.xxxx
In my case it was in:
$WINDOWSDIR\Microsoft.Net\Framework\v1.1.4322
or
$WINDOWSDIR\Microsoft.Net\Framework\v2.0.50215
This post was edited on 11-06-2005 at 06:02 AM by n0n4m3.
|
|
11-06-2005 06:01 AM |
|
|
J-Thread
Full Member
Posts: 467 Reputation: 8
– / / –
Joined: Jul 2004
|
O.P. RE: NickChange Plugin
Strange, it should take:
$WINDOWSDIR\Microsoft.Net\Framework\v2.0.50215
What was the error you got? My setup uses some registry values to get the latest framework version (v2.0.50215 in your case) so the other directory shouldn't be used...
The regasm.exe is always in a subfolder in the folder framework, so it isn't because of your 2 version... I'll talk to you at msn about this later today, it is interesting
|
|
11-06-2005 07:31 AM |
|
|
n0n4m3
Junior Member
Posts: 82
45 / /
Joined: Nov 2005
|
RE: NickChange Plugin
First it says that this program needs the .NET Framework and that it wasn't found on my system and if I choose to bypass the downloading and installation of the .NET Framework, it will give me the error that RegAsm.exe wasn't found at $WINDOWSDIR\Microsoft.NET\Framework\
|
|
11-06-2005 02:12 PM |
|
|
J-Thread
Full Member
Posts: 467 Reputation: 8
– / / –
Joined: Jul 2004
|
O.P. RE: NickChange Plugin
Ok thanks to n0n4m3, the bug is fixed! Take a look at my first post for the new version .
About the release of the final version, I will not release it untill I'm sure about what the problem is with multiple C# plugins... n0n4m3 is doing some tests and I'll talk with him about it, so I hope we can finally figure out what the problem is
|
|
11-06-2005 02:34 PM |
|
|
TazDevil
Full Member
sleep(0);
Posts: 359 Reputation: 11
41 / /
Joined: May 2004
|
RE: NickChange Plugin
hey J-Thread
i have an article for you to study about C# plugins although i dont understand much of it, cause i dont have time to learn how C# works, so, i thought to pass it on to you, you should understand better...
Anyways, in this article it says that
quote: Does your app need to unload or reload plug-ins while it's running? Does your app need to control the security access that plug-ins have to files and other resources? If you answer yes to either question, you'll need AppDomains.
In the .NET Framework, there's no way to directly unload an assembly. The only way is to load the assembly into a separate AppDomain, then unload the whole AppDomain. Each AppDomain can also have its own security permissions. AppDomains provide a processing unit with the isolation usually afforded by separate processes, without the overhead, and multiple AppDomains can exist within the same process. AppDomains are typically used in server apps, where the server runs 24/7 or nearly so, and needs to load and unload components on the fly without restarting. AppDomains are also used to limit the permission that plug-ins are granted, so that an application can load untrusted components without fear of them doing something malevolent. To enable this isolation, using multiple AppDomains requires remoting; objects in different AppDomains can't call each other directly, they must be marshaled across the AppDomain boundary. In particular, shared instances of classes must derive from MarshalByRefObject.
So right now heh you cannot unload/reload C# plugins unless you build them in such a way and Plus is developed in such a way
And i would suggest to you to work with Patchou and pass this article to him, if the implemetation of this kind works, maybe you could work it out
Check the article here, and tell me if it works for you....
Article Link
Also read http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx
That probably could be linked to why you cant load more than 1 C# plugin...
Wierd enough your dll doesnot show in the loaded modules list althought the actual plugin is loaded in plus! Only the .Net framework files are loaded ...
This post was edited on 11-06-2005 at 10:53 PM by TazDevil.
Window Manager is discontinued, for WLM try the new,
Enhancer for contact list docking, auto-hide, hide taskbar button, remove button flashing and remember keyboard layout in conversation windows
|
|
11-06-2005 10:41 PM |
|
|
n0n4m3
Junior Member
Posts: 82
45 / /
Joined: Nov 2005
|
RE: RE: NickChange Plugin
quote: Originally posted by TazDevil
hey J-Thread
i have an article for you to study about C# plugins although i dont understand much of it, cause i dont have time to learn how C# works, so, i thought to pass it on to you, you should understand better...
Anyways, in this article it says that
quote: Does your app need to unload or reload plug-ins while it's running? Does your app need to control the security access that plug-ins have to files and other resources? If you answer yes to either question, you'll need AppDomains.
In the .NET Framework, there's no way to directly unload an assembly. The only way is to load the assembly into a separate AppDomain, then unload the whole AppDomain. Each AppDomain can also have its own security permissions. AppDomains provide a processing unit with the isolation usually afforded by separate processes, without the overhead, and multiple AppDomains can exist within the same process. AppDomains are typically used in server apps, where the server runs 24/7 or nearly so, and needs to load and unload components on the fly without restarting. AppDomains are also used to limit the permission that plug-ins are granted, so that an application can load untrusted components without fear of them doing something malevolent. To enable this isolation, using multiple AppDomains requires remoting; objects in different AppDomains can't call each other directly, they must be marshaled across the AppDomain boundary. In particular, shared instances of classes must derive from MarshalByRefObject.
So right now heh you cannot unload/reload C# plugins unless you build them in such a way and Plus is developed in such a way
And i would suggest to you to work with Patchou and pass this article to him, if the implemetation of this kind works, maybe you could work it out
Check the article here, and tell me if it works for you....
Article Link
Also read http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx
That probably could be linked to why you cant load more than 1 C# plugin...
Wierd enough your dll doesnot show in the loaded modules list althought the actual plugin is loaded in plus! Only the .Net framework files are loaded ...
Hey,
Curious that I read this article yesterday and it illuminated me! I finally found a way to unload/load a C# plugin The solution is to unload the appdomain of your plugin like this (if you're executing code in your plugin, otherwise you have to find you plugin appdomain and unload it): AppDomain.Unload(AppDomain.CurrentDomain);
Maybe I'll do a simple plugin tomorrow or the day after tomorrow because now I'm getting an alpha version of a plugin I'm developing for plus
|
|
11-06-2005 11:20 PM |
|
|
TazDevil
Full Member
sleep(0);
Posts: 359 Reputation: 11
41 / /
Joined: May 2004
|
RE: NickChange Plugin
quote: Originally posted by n0n4m3
Hey,
Curious that I read this article yesterday and it illuminated me! I finally found a way to unload/load a C# plugin The solution is to unload the appdomain of your plugin like this (if you're executing code in your plugin, otherwise you have to find you plugin appdomain and unload it): AppDomain.Unload(AppDomain.CurrentDomain);
Maybe I'll do a simple plugin tomorrow or the day after tomorrow because now I'm getting an alpha version of a plugin I'm developing for plus
Ok, so now you need to unload your appdomain, in the Unintialize() method or whatever so when it is called, (when changing email account and when closing and reloading) by calling this command maybe...
And let me know in the reloader thread if it works
Window Manager is discontinued, for WLM try the new,
Enhancer for contact list docking, auto-hide, hide taskbar button, remove button flashing and remember keyboard layout in conversation windows
|
|
11-06-2005 11:34 PM |
|
|
Pages: (4):
« First
«
1
[ 2 ]
3
4
»
Last »
|
|