[Mono-dev] Mono and dotnetNuke
Anyone here, who is working with dotnetNuke (3.x) running with Mono? Regards Jan Waiz I-Com EDV-Service Sülldorfer Knick 81e 22589Hamburg Tel: 0049-40-56060630 ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Mono and dotnetNuke
Jan Waiz escribió: Anyone here, who is working with dotnetNuke (3.x) running with Mono? (Just wondering...) I am not using it, but the fact that is written in VB probably means that can't compile (yet) with the Mono VB compiler (MBAS). And it is possible too that the code uses VB6 legacy syntax and keywords [1], so as not being able to run it with Mono only with the assemblies compiled in VS.NET. [1] http://rafaelmizrahi.blogspot.com/2006/06/compile-vbnet-code-without-implicit.html -- ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Mono and dotnetNuke
Hi! I'm sure that dnn doesn't use any VB6 legacy syntax. We use lot of dnn in windows environment and I think that run dnn on mono shouldn't be big problem (of course dnn compiled under windows because of mono vb compiller). What more - You can write additional modules in c#, that it means only core must be compiled under windows. best! Tomek Ympostor napisa(a): Jan Waiz escribi: Anyone here, who is working with dotnetNuke (3.x) running with Mono? (Just wondering...) I am not using it, but the fact that is written in VB probably means that can't compile (yet) with the Mono VB compiler (MBAS). And it is possible too that the code uses VB6 legacy syntax and keywords [1], so as not being able to run it with Mono only with the assemblies compiled in VS.NET. [1] http://rafaelmizrahi.blogspot.com/2006/06/compile-vbnet-code-without-implicit.html ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] .Net TCP/IP remoting with unmanaged C++ endpoint?
On Wed, 2006-06-28 at 12:47 +0200, Marek Habersack wrote: I've just been asked a question whether it would be possible to create a TCP/IP{ (native .NET binary protocol) connection between an unmanaged server written in C++ and a managed client. Your subject says TCP/IP remoting, while the body says TCP/IP (native .NET binary protocol), so I'll assume you actually mean Remoting. You can't use Remoting from a purely unmanaged server, as Remoting assumes a .NET execution environment (marshaling object references, object types, class data member names...). You _might_ be able to fake enough of the protocol to do it purely unmanaged, but it would likely be _very_ brittle. Remoting -- and any other technology which assumes that the same type can be loaded used on both sides of the connection -- is not suitable for cross-runtime uses (e.g. .NET - Java/C/C++/Python/...). Which leaves you with looking for something that _is_ useful for cross-runtime uses, of which there are several: - Corba.NET (which uses CORBA as the communications protocol) - DBus (if both processes will be on the same machine) - SOAP - ZeroC/ICE (which you already mentioned) - Some home-grown protocol SOAP is likely to be the most mature, but since it isn't a binary protocol there may be some concerns about its performance. - Jon ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Mono and dotnetNuke
Well i will test it over the Weekend and let you know the Result. J I am still wondering, that so less Developers are working with Mono. And that there is no Partnership between the dnn- and mono-Project !? I am fascinated to develop with Windows/IIS/C# - and the Result can be run with Windows OR Mono. Because: Thats most possible Flexibility! Linux/Mono needs much less Resouces It runs with smaller CPU-Power Enables me to use free SQL-Databases like MySql or Postgres No Licensecosts for the OS More Provider offering housing/hosting Linux-Environment for lower Costs May be, Linux is more stabil May be, Linux needs less Amount of Administration May be, Linux is more safe against Attacks And so on and so on Greets Jan Waiz I-Com EDV-Service Sülldorfer Knick 81e 22589Hamburg Tel: 0049-40-56060630 Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Tomek Soroka Gesendet: Donnerstag, 29. Juni 2006 11:15 An: Ympostor Cc: mono-devel-list@lists.ximian.com Betreff: Re: [Mono-dev] Mono and dotnetNuke Hi! I'm sure that dnn doesn't use any VB6 legacy syntax. We use lot of dnn in windows environment and I think that run dnn on mono shouldn't be big problem (of course dnn compiled under windows because of mono vb compiller). What more - You can write additional modules in c#, that it means only core must be compiled under windows. best! Tomek Ympostor napisał(a): Jan Waiz escribió: Anyone here, who is working with dotnetNuke (3.x) running with Mono? (Just wondering...) I am not using it, but the fact that is written in VB probably means that can't compile (yet) with the Mono VB compiler (MBAS). And it is possible too that the code uses VB6 legacy syntax and keywords [1], so as not being able to run it with Mono only with the assemblies compiled in VS.NET.[1] http://rafaelmizrahi.blogspot.com/2006/06/compile-vbnet-code-without-implicit.html ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Mono and dotnetNuke
You should at least consider looking into mojoportal. It is completely in c# and already works with mono and supports open source databases like MySQL PostgreSQL and SQLite in addtion to MS SQL.http://www.mojoportal.comI would be very surprised if DNN does not have some legacy VB syntax that uses the VB library. Even things like Instr() and such would be legacy syntax but many VB developers will keep on using it because it works.I will say the first time you get one of your ASP.NET apps running on linux it feels like magic. I know I've been hooked ever since. :-)Cheers,Joejoe_audette [at] yahoo dotcom http://www.joeaudette.com http://www.mojoportal.com- Original Message From: Jan Waiz [EMAIL PROTECTED]To: [EMAIL PROTECTED]; Ympostor [EMAIL PROTECTED]Cc: mono-devel-list@lists.ximian.comSent: Thursday, June 29, 2006 6:42:02 AMSubject: Re: [Mono-dev] Mono and dotnetNuke Well – i will test it over the Weekend and let you know the Result. J I am still wondering, that so less Developers are working with Mono. And that there is no Partnership between the dnn- and mono-Project !? I am fascinated to develop with Windows/IIS/C# - and the Result can be run with Windows OR Mono. Because: That’s most possible Flexibility! Linux/Mono needs much less Resouces It runs with smaller CPU-Power Enables me to use free SQL-Databases like MySql or Postgres No Licensecosts for the OS More Provider offering housing/hosting Linux-Environment for lower Costs May be, Linux is more stabil May be, Linux needs less Amount of Administration May be, Linux is more safe against Attacks And so on and so on… Greets Jan Waiz I-Com EDV-Service Sülldorfer Knick 81e 22589Hamburg Tel: 0049-40-56060630 Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Tomek Soroka Gesendet: Donnerstag, 29. Juni 2006 11:15 An: Ympostor Cc: mono-devel-list@lists.ximian.com Betreff: Re: [Mono-dev] Mono and dotnetNuke Hi! I'm sure that dnn doesn't use any VB6 legacy syntax. We use lot of dnn in windows environment and I think that run dnn on mono shouldn't be big problem (of course dnn compiled under windows because of mono vb compiller). What more - You can write additional modules in c#, that it means only core must be compiled under windows. best! Tomek Ympostor napisał(a): Jan Waiz escribió: Anyone here, who is working with dotnetNuke (3.x) running with Mono? (Just wondering...) I am not using it, but the fact that is written in VB probably means that can't compile (yet) with the Mono VB compiler (MBAS). And it is possible too that the code uses VB6 legacy syntax and keywords [1], so as not being able to run it with Mono only with the assemblies compiled in VS.NET. [1] http://rafaelmizrahi.blogspot.com/2006/06/compile-vbnet-code-without-implicit.html ___Mono-devel-list mailing listMono-devel-list@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/mono-devel-list___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] [PATCH] Append NULL when setting StringBuilder.Length
Hi, Please review and approve the patch. Note that the current documentation is correct: http://msdn2.microsoft.com/en-us/library/system.text.stringbuilder.length.aspx Kornél StringBuilder.diff Description: Binary data ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Multiple domains
Hi,First, could someone specify what root domain exactly means and what is it meant for? Mono project's web site says about mono_jit_init that That will return a MonoDomain where your code will be executed. You can create multiple domains. Each domain is isolated from the other domains and code in one domain will not interfere with code in other domains.But when I tried to initialize mono_jit_init with two different assembly names, I got error saying **ERROR**: file domain.c:line 517 (mono_init_internal):should not be reached aborting... But if I use mono_domain_get to get current domain (is that also root domain?) I can create objects from different assemblies just fine.Is there some other way to initialize multiple domains?Thanks for your help, Janne ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] .Net TCP/IP remoting with unmanaged C++ endpoint?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Jonathan Pryor wrote: On Wed, 2006-06-28 at 12:47 +0200, Marek Habersack wrote: I've just been asked a question whether it would be possible to create a TCP/IP{ (native .NET binary protocol) connection between an unmanaged server written in C++ and a managed client. Your subject says TCP/IP remoting, while the body says TCP/IP (native .NET binary protocol), so I'll assume you actually mean Remoting. Indeed, that's what I had in mind. You can't use Remoting from a purely unmanaged server, as Remoting assumes a .NET execution environment (marshaling object references, object types, class data member names...). You _might_ be able to fake enough of the protocol to do it purely unmanaged, but it would likely be _very_ brittle. Remoting -- and any other technology which assumes that the same type can be loaded used on both sides of the connection -- is not suitable for cross-runtime uses (e.g. .NET - Java/C/C++/Python/...). Which leaves you with looking for something that _is_ useful for cross-runtime uses, of which there are several: - Corba.NET (which uses CORBA as the communications protocol) - DBus (if both processes will be on the same machine) - SOAP - ZeroC/ICE (which you already mentioned) - Some home-grown protocol SOAP is likely to be the most mature, but since it isn't a binary protocol there may be some concerns about its performance. That's the whole problem about SOAP/XML-RPC (which I considered as well). The communication is going to be done over slow links (most probably on-demand dial-up connections) between embedded devices and a central server, so both the volume of data sent and the size of code running on the embedded devices are very important. The embedded devices are the ones that would run the C++ software and the server would run a Mono application. CORBA seems to heavy weight for the purpose, too, even though ACE runs on devices with tight memory. Therefore, it seems, I will need to come up with a proprietary communication protocol. I guess what I really meant when asking the question (and it might be my misunderstanding of how Remoting works) is that it would be great if I could open a tcp/ip connection between the client-server and use the Remoting binary protocol for invoking code on the other end. I assumed that Remoting is a form of a more advanced/specialized SOAP application that, among others, uses a binary protocol for communication between endpoints. If my idea of Remoting was true, using unmanaged C++ endpoint would be a matter of decoding the binary protocol stream and invoking the unmanaged code in a similar way as when you'd invoke a method on a SOAP/XML-RPC/CORBA server written in unmanaged C++, where the request is sent in a form that's language-agnostic (like XML/IDL in the above cases). Well, it seems that my idea of Remoting was indeed incorrect :) thanks a lot, best regards marek -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.2.2 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFEo+7wq3909GIf5uoRAvKeAJkBMT0V96DSrDHOHKCa+QZjg7VmOwCdG92k 5lG9lLDz7/jYXJ9dneeMisA= =CBhF -END PGP SIGNATURE- ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Multiple domains
Hi, The root domain is the initial domain created by the runtime when it is initialized using mono_jit_init. Programs will execute in the root domain, but can create new ones later. The embedding interface currently has little support for creating additional domains, your best bet is to do it from managed code and invoke that code using mono_runtime_invoke. Zoltan On 6/29/06, Janne Rantala [EMAIL PROTECTED] wrote: Hi, First, could someone specify what root domain exactly means and what is it meant for? Mono project's web site says about mono_jit_init that That will return a MonoDomain where your code will be executed. You can create multiple domains. Each domain is isolated from the other domains and code in one domain will not interfere with code in other domains. But when I tried to initialize mono_jit_init with two different assembly names, I got error saying **ERROR**: file domain.c:line 517 (mono_init_internal):should not be reached aborting... But if I use mono_domain_get to get current domain (is that also root domain?) I can create objects from different assemblies just fine. Is there some other way to initialize multiple domains? Thanks for your help, Janne ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] .Net TCP/IP remoting with unmanaged C++ endpoint?
Marek Habersack wrote: That's the whole problem about SOAP/XML-RPC (which I considered as well). The communication is going to be done over slow links (most probably on-demand dial-up connections) between embedded devices and a central server, so both the volume of data sent and the size of code running on the embedded devices are very important. The embedded devices are the ones that would run the C++ software and the server would run a Mono application. CORBA seems to heavy weight for the purpose, too, even though ACE runs on devices with tight memory. Therefore, it seems, I will need to come up with a proprietary communication protocol. We had similar issues with the remoting stack. We wanted a compact, but portable, binary protocol. What we ended up doing was creating an RPC format that transitioned data in a fashion similar to that of the Torque Network Library http://opentnl.sourceforge.net/doxydocs/. Data is packed like structures based on order and known types in a recursive pass, which makes the codec both fast and simple and doesn't require the entire .NET Framework to work. There are plenty of caveats, though: Your structures must be trees, they have to be typed public (although a class trying to marshal itself can easily create a marshallable instance, similar to a SerializationInfo instance), and you have to know all the types ahead of time. But since you're creating a C++ endpoint as well, I'm sure those aren't major setbacks. I've mulled over open-sourcing that library. Would you be interested? --Brian ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Multiple domains
Janne Rantala wrote: First, could someone specify what root domain exactly means and what is it meant for? As Zoltan said, it's the first domain created when an application starts up. Play around with the AppDomain class in the .NET Framework for experience with domains. Mono project's web site says about mono_jit_init that That will return a MonoDomain where your code will be executed. You can create multiple domains. Each domain is isolated from the other domains and code in one domain will not interfere with code in other domains. But when I tried to initialize mono_jit_init with two different assembly names, I got error saying **ERROR**: file domain.c:line 517 (mono_init_internal):should not be reached aborting... You probably shouldn't create domains that way. I think mono_domain_create() will give you a new, uninitialized domain. ves_icall_System_AppDomain_createDomain() in appdomain.c shows an example of using this call, as well as how to add already-loaded assemblies to it. Please note, though, that Mono does not adhere to the rules of creating new domains properly, and as such, you don't really get the guarantees of isolation that you should. This is documented as bug #76757. http://bugzilla.ximian.com/show_bug.cgi?id=76757 But if I use mono_domain_get to get current domain (is that also root domain?) I can create objects from different assemblies just fine. mono_domain_get() doesn't necessarily return the root domain, but it certainly will if it's the only domain. mono_get_root_domain() always gets the root. Is there some other way to initialize multiple domains? There are several ways. Again, look through the AppDomain documentation for more help on this. One way, if the same assemblies will be loaded in your root domain as your new one, is to use AppDomain.DoCallBack, which invokes a delegate in another domain. The corresponding code for this is duplicated in both AppDomain.cs, and (less accurately) in marshal.c (see mono_marshal_get_xappdomain_invoke for a low-level way of crossing between domains). You can also do it in a way to avoid loading the target assembly in your new domain. Of course, you always need some common ground, so at least one common assembly needs to be loaded in both domains, but after that you can vary on which assembly you load and call into. In my case, for example, I would create a new AppDomain with a different directory. I would create an instance of a MarshalByRefObject on the other side through a call to AppDomain.CreateInstanceAndUnwrap(), which avoids loading the target assembly in the root domain. (This is very important, as the target assembly doesn't exist in the root domain's path, and therefore the root domain can't load it anyways.) I cast the return value to an interface that is present in both domains, and I make calls on it. The directory structure, for example, looks like this: /app1 Interface.dll Host.exe /app2 Interface.dll Hostee.dll This allows me to create two domains, the first (my root) with the corlib, Interface.dll, and Host.exe assemblies, and the second with the corlib, Interace.dll, and Hostee.dll assemblies. With cross-domain calls, I can contact the second domain and have it do my bidding, and any objects it creates or assemblies it loads won't interfere with my first. When I'm done with my second domain, I can unload it and the assemblies will disappear. In effect, this is the only way to unload an assembly, and that's the main reason I use multiple domains. Of course, I don't know what you're looking for in domains. They can be very complex at times, but they offer some interesting ways around some of the deeper restrictions of the CLI. --Brian ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Patch for System.Web.UI.WebControls.Wizard
On Mon, 2006-06-26 at 08:35 -0700, Vladimir Krasnov wrote: Hello, Attached patch that fixes some differences in Wizard control rendering, please review. Please, commit. Thanks. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] System.Web.Menu ViewState
On Mon, 2006-06-26 at 11:05 -0700, Konstantin Triger wrote: [...] Attached a patch fixing this. Please review. Please, commit. Thanks. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Transfer-Encoding: chunked + Connection: close
On Tue, 2006-06-27 at 18:41 +0200, subscription.sapi wrote: We have problem to retrieve an attachment from a Web Page. We use the following code: Response.ClearContent(); Response.ClearHeaders(); Response.Clear(); Response.ContentType=ContentType; Response.AppendHeader(content-disposition, filename= + NomeAllegatoOriginale); Response.BinaryWrite(FileBytes); Response.Flush(); Response.End(); Would you, please, file a bug report in bugzilla? Provide headers sent under IIS and apache and a standalone page if possible. Thanks. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] Strange mono behaviour on Oracle
Hi, It is best to reply to the list because private email can get lost, such as, spam filter. I found your email in my spam folder. I will look into it. - Original Message From: APS [EMAIL PROTECTED]To: Daniel Morgan [EMAIL PROTECTED]Sent: Thursday, June 22, 2006 12:56:12 PMSubject: Re: [Mono-dev] Strange mono behaviour on OracleSure, try this:try{ using (System.Data.OracleClient.OracleConnection Conn=new System.Data.OracleClient.OracleConnection("data source=yourtns;uid=youruid;pwd=youpwd")) { Conn.Open(); using(System.Data.OracleClient.OracleCommand Comm=Conn.CreateCommand()) { Comm.CommandText="UPDATE TABLE SET DATEFIELD='12/13/2006'";Comm.ExecuteNonQuery(); } }} catch {}using (System.Data.OracleClient.OracleConnection Conn=new System.Data.OracleClient.OracleConnection("data source=yourtns;uid=youruid;pwd=youpwd")) { Conn.Open(); using (System.Data.OracleClient.OracleTransaction Trans=Conn.BeginTransaction()) { using(System.Data.OracleClient.OracleCommand Comm=Conn.CreateCommand()) { Comm.Transaction=Trans;Comm.CommandText="SELECT * FROM TABLE";Comm.ExecuteReader(); } }}In this example the first connection tries to update a table using a wrong date. the executenon query will raise an error that is catched. The second connection the opens a transaction and make a simple query on a table, the BeginTransaction will raise an error saying:System.Data.OracleClient.OracleException: ORA-01453: SET TRANSACTION must be the firstI tried it in Linux/Apache/Mono/Oracle Instant client/Oracle10 and Windows/Apache/Mono/Oracle Client 9.2/Oracle10 with the same effects.At 18.22 22/06/2006, you wrote: Can you provide a simple repeatable test case please?- Original Message From: APS [EMAIL PROTECTED]To: mono-devel-list@lists.ximian.comSent: Thursday, June 22, 2006 4:31:52 AMSubject: [Mono-dev] Strange mono behaviour on OracleHi, it's a couple of days that I'm working on mono and Oracle comparing behaviours between mono and .NetNow I've found this problem.I make and oracle connection, create and oraclecommand and I launch and I launch an executenonquery. I this query fails the next transaction I create, within a new connection also fails with error System.Data.OracleClient.OracleException: ORA-01453: SET TRANSACTION deve essere la prima istruzione della transazione in 0x000a6 System.Data.OracleClient.Oci.OciTransactionHandle:Begin () in 0x00042 System.Data.OracleClient.OracleConnection:BeginTransaction (IsolationLevel il) in 0xf System.Data.OracleClient.OracleConnection:BeginTransaction () in 0xa System.Data.OracleClient.OracleConnection:System.Data.IDbConnection.BeginTransaction () I tested it in linux with Oracle Instant Client and in windows with Oracle Client 9.2It's possible that is always used a transaction that is not rolled back on errors?Thanks in advance for help.___Mono-devel-list mailing listMono-devel-list@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/mono-devel-list ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Socket Timeout
Attached patch implements .NET 2.0 properties Socket.SendTimeout and Socket.ReceiveTimeout that are used by IronPython 1.0 Beta 8 (and previously stubbed). Implementation is copied from TcpClient.cs. Seo Sanghyeon Index: class/System/System.Net.Sockets/Socket.cs === --- class/System/System.Net.Sockets/Socket.cs (revision 62148) +++ class/System/System.Net.Sockets/Socket.cs (working copy) @@ -702,23 +702,29 @@ } #if NET_2_0 - [MonoTODO] public int SendTimeout { get { - throw new NotImplementedException (); + return (int)GetSocketOption( + SocketOptionLevel.Socket, + SocketOptionName.SendTimeout); } set { - throw new NotImplementedException (); + SetSocketOption( + SocketOptionLevel.Socket, + SocketOptionName.SendTimeout, value); } } - [MonoTODO] public int ReceiveTimeout { get { - throw new NotImplementedException (); + return (int)GetSocketOption( + SocketOptionLevel.Socket, + SocketOptionName.ReceiveTimeout); } set { - throw new NotImplementedException (); + SetSocketOption( + SocketOptionLevel.Socket, + SocketOptionName.ReceiveTimeout, value); } } #endif ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list