esposito Posted November 20, 2003 Posted November 20, 2003 Hello, everybody. I have just started to study VB.NET and, reading some articles, I have learnt that this development tool allows you to create applications which can (or will soon be able to) run under any operating systems. I have also learnt that it is already possible to make your VB.NET apps run under Linux thanks to the so-called Mono Poject which has provided this OS with its own version of the .NET framework. My question is, what kind of VB.NET apps can actually run under Linux? Only the Web applications created in ASP.NET or even the byte-code executables based on Windows forms? Please consider I have never used Linux in my life and I don't even know whether the executables made for that OS are characterized by an EXE extension. In spite of this, the idea of being able to create applications for more than one operating system really attracts me. Thanks in advance for your help. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 20, 2003 Posted November 20, 2003 Hello, everybody. I have just started to study VB.NET and, reading some articles, I have learnt that this development tool allows you to create applications which can (or will soon be able to) run under any operating systems. I have also learnt that it is already possible to make your VB.NET apps run under Linux thanks to the so-called Mono Poject which has provided this OS with its own version of the .NET framework. My question is, what kind of VB.NET apps can actually run under Linux? Only the Web applications created in ASP.NET or even the byte-code executables based on Windows forms? Please consider I have never used Linux in my life and I don't even know whether the executables made for that OS are characterized by an EXE extension. In spite of this, the idea of being able to create applications for more than one operating system really attracts me. Thanks in advance for your help. I've played with Mono compiler some. There is a Windows .exe. too. Try using that before venturing into the *dynamic" world of 'Nix..... My suggestion :) You can run the application in "Nix using it's compiler (meaning compile first, then start the process with the "mock" framework that is ported over. Good luck. Quote Take care, Lori :D --DreamWEBCatcher.com
esposito Posted November 20, 2003 Author Posted November 20, 2003 Is it necessary to use the MONO compiler to make your VB.NET exe run under Linux? Isn't it possible to have people download the same executable from your Web site and see it work under both Windows and Linux? Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 20, 2003 Posted November 20, 2003 Is it necessary to use the MONO compiler to make your VB.NET exe run under Linux? Isn't it possible to have people download the same executable from your Web site and see it work under both Windows and Linux? Once compiled with MONO, it should work (presuming it's debugged well)...And yes and no, you can download windows .exe for Windows OS and you will need to recompile in 'nix to get it to work with MONO. Quote Take care, Lori :D --DreamWEBCatcher.com
esposito Posted November 20, 2003 Author Posted November 20, 2003 Sorry if I'm asking questions that could sound ingenuous to you, but I've never used Linux in my life. Does it mean that a Linux user can download a Windows EXE and recompile it in a Linux compatible format? This mkes me understand that you don't need the source files to create an executable under Linux. How is it possible? Once compiled with MONO, it should work (presuming it's debugged well)...And yes and no, you can download windows .exe for Windows OS and you will need to recompile in 'nix to get it to work with MONO. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 20, 2003 Posted November 20, 2003 Sorry if I'm asking questions that could sound ingenuous to you, but I've never used Linux in my life. Does it mean that a Linux user can download a Windows EXE and recompile it in a Linux compatible format? This mkes me understand that you don't need the source files to create an executable under Linux. How is it possible? No problem. Sorry, if I sound arrogant or rude. The misunderstanding is this: yes, you will need the source to recompile (and make changes, like debugging) but if you only want to run the app., then you will just need the .exe. Quote Take care, Lori :D --DreamWEBCatcher.com
esposito Posted November 20, 2003 Author Posted November 20, 2003 I'm afraid I'm missing something. It may be because English is not my native language. You said you just need the exe to make the application run, but if your exe was created under Windows, will it work under Linux without recompiling it? That's all I need to know. Thanks again. By the way, you are neither arrogant nor rude: you are just trying to explain something to an Italian who has never used Linux in his life. No problem. Sorry, if I sound arrogant or rude. The misunderstanding is this: yes, you will need the source to recompile (and make changes, like debugging) but if you only want to run the app., then you will just need the .exe. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 21, 2003 Posted November 21, 2003 I'm afraid I'm missing something. It may be because English is not my native language. You said you just need the exe to make the application run, but if your exe was created under Windows, will it work under Linux without recompiling it? That's all I need to know. Thanks again. By the way, you are neither arrogant nor rude: you are just trying to explain something to an Italian who has never used Linux in his life. Windows .exe will not run in 'Nix. Nor will they probably ever. They are compiled with make files and then ran. Any more questions? Quote Take care, Lori :D --DreamWEBCatcher.com
Administrators PlausiblyDamp Posted November 21, 2003 Administrators Posted November 21, 2003 http://www.go-mono.com/faq.html#compatibility Quote Posting Guidelines FAQ Post Formatting Intellectuals solve problems; geniuses prevent them. -- Albert Einstein
esposito Posted November 22, 2003 Author Posted November 22, 2003 Thanks, I have just saved the link on my computer. Do you agree with Nightyhawk? http://www.go-mono.com/faq.html#compatibility Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Administrators PlausiblyDamp Posted November 22, 2003 Administrators Posted November 22, 2003 From playing around with mono a few months ago myself it depends on the area's of functionality. windows forms were poorly supported then - not sure how well they are supported now. Console apps seemed to work fine and quite large parts of ASP.Net were working without any problems. At the end of the day .Net code compiles to an intermediate language called MSIL (literaly Microsoft Intermediate Language) which is a subset of the Common Intermediate Language and similar to Java byte code runs in a virtual machine style environment. There is absolutley no reason why a .Net .exe or .dll cannot be used on any platform that supports a compatible version of the runtime - it's just that there are currently no 100% compatible implementations out there. Quote Posting Guidelines FAQ Post Formatting Intellectuals solve problems; geniuses prevent them. -- Albert Einstein
esposito Posted November 22, 2003 Author Posted November 22, 2003 I read the Mono FAQ page you suggested and the conclusion I have come to is that they are working hard in order to achieve perfect compatibility with Windows forms. Of course, the basic requirement that a VB.NET executable must have in order to be cross platform is that the programmer must make no call to the Windows API. According to what the Mono experts say, any other incompatibility problem will be overcome, slowly but surely. This is something that really excites me. I have never used Linux is my life and yet I'll be able to produce software for that OS! Isn't the .NET platform great? From playing around with mono a few months ago myself it depends on the area's of functionality. windows forms were poorly supported then - not sure how well they are supported now. Console apps seemed to work fine and quite large parts of ASP.Net were working without any problems. At the end of the day .Net code compiles to an intermediate language called MSIL (literaly Microsoft Intermediate Language) which is a subset of the Common Intermediate Language and similar to Java byte code runs in a virtual machine style environment. There is absolutley no reason why a .Net .exe or .dll cannot be used on any platform that supports a compatible version of the runtime - it's just that there are currently no 100% compatible implementations out there. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 24, 2003 Posted November 24, 2003 I read the Mono FAQ page you suggested and the conclusion I have come to is that they are working hard in order to achieve perfect compatibility with Windows forms. Of course, the basic requirement that a VB.NET executable must have in order to be cross platform is that the programmer must make no call to the Windows API. According to what the Mono experts say, any other incompatibility problem will be overcome, slowly but surely. This is something that really excites me. I have never used Linux is my life and yet I'll be able to produce software for that OS! Isn't the .NET platform great? Yes, that is great. Although, bugs are stil being worked out as to be expected with most things and Microsoft. Quote Take care, Lori :D --DreamWEBCatcher.com
esposito Posted November 25, 2003 Author Posted November 25, 2003 I would like to take advantage of your experience to ask you a question about the compatibility with Mono of VB.NET executables containing one or more calls to VisualBasic.dll. On Mono's FAQ page, I read that the compatibility with that library is only partial. I make large use of Random type databases which refer to VisualBasic.dll and, for that reason, I would very much like to know, from those of you who have installed and tested Mono, if a table created in VB.NET like the one below could create compatibility problems: Imports System Imports System.IO Imports Microsoft.VisualBasic Public Class frmDatabase Inherits System.Windows.Forms.Form Structure PERSONE <VBFixedString(20)> Dim varFirstname As String <VBFixedString(20)> Dim varSurname As String <VBFixedString(20)> Dim varTelephone As String End Structure Thanks in advance. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Nightyhawk Posted November 25, 2003 Posted November 25, 2003 I would like to take advantage of your experience to ask you a question about the compatibility with Mono of VB.NET executables containing one or more calls to VisualBasic.dll. On Mono's FAQ page, I read that the compatibility with that library is only partial. I make large use of Random type databases which refer to VisualBasic.dll and, for that reason, I would very much like to know, from those of you who have installed and tested Mono, if a table created in VB.NET like the one below could create compatibility problems: Imports System Imports System.IO Imports Microsoft.VisualBasic Public Class frmDatabase Inherits System.Windows.Forms.Form Structure PERSONE <VBFixedString(20)> Dim varFirstname As String <VBFixedString(20)> Dim varSurname As String <VBFixedString(20)> Dim varTelephone As String End Structure Thanks in advance. Variable strings aren't generally recommended, so I am not sure if it would work. Quote Take care, Lori :D --DreamWEBCatcher.com
Moderators Robby Posted November 25, 2003 Moderators Posted November 25, 2003 Nightyhawk, what are you babbling about??? Quote Visit...Bassic Software
esposito Posted November 27, 2003 Author Posted November 27, 2003 I've just learnt the Mono Project comes with a Visual Basic compiler too, so the chances my code works with the framework for Linux aren't probably too slim. I wonder if Microsoft made a mistake releasing the .NET framework: many companies are working on free versions of the IDE and, in theory, any other OS could be compatible with the apps created with VS .NET. I think this could be a danger for the monopoly of Windows in the long run and, believe it or not, I don't like this idea. I produce software which is mostly dependent on the Win32 API. If people start using other operating systems, the number of my potential clients could decrease. I know this may sound selfish but, after all, that's what business is all about. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
Administrators PlausiblyDamp Posted November 27, 2003 Administrators Posted November 27, 2003 But if you start to code against the .Net framework rather than a specific vendor API (win32 for example) in the long term you could be reaching more clients than if you were just win32. ASP.Net development without requiring IIS as a server could be a tempting idea for the Unix users out there. Quote Posting Guidelines FAQ Post Formatting Intellectuals solve problems; geniuses prevent them. -- Albert Einstein
esposito Posted November 28, 2003 Author Posted November 28, 2003 If you based your apps on the .NET API only, there are a lot of things you would never be able to do, such as the management of multimedia files. I think Windows is great because it represents a standard for the majority of computer users. Switching to different OS's could threaten this standardization and all the advantages it brings with it. But if you start to code against the .Net framework rather than a specific vendor API (win32 for example) in the long term you could be reaching more clients than if you were just win32. ASP.Net development without requiring IIS as a server could be a tempting idea for the Unix users out there. Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
*Experts* mutant Posted November 28, 2003 *Experts* Posted November 28, 2003 Next releases of the .NET Framework will bring more and more classes. Including the ability to play sounds, videos (that is at least what I read somewhere, but don't remeber where :) ). As Win32API is being slowly phased out, the Framework will provide more and more features to substitute for the loss. Quote
esposito Posted November 28, 2003 Author Posted November 28, 2003 (edited) What you said sounds great. And when is the next release due? On the contrary, I have to confess I'm quite scared by what you said about the Win32 API ("it is being slowly phased out"). What do you mean or what do you think Microsoft will do in the future with it? It would be stupid to stop supporting the Win32 API technology, considering all the money companies have invested in Windows based applications. That would be a good reason to abandon Windows and switch to another OS. Next releases of the .NET Framework will bring more and more classes. Including the ability to play sounds, videos (that is at least what I read somewhere, but don't remeber where :) ). As Win32API is being slowly phased out, the Framework will provide more and more features to substitute for the loss. Edited November 28, 2003 by esposito Quote Pasquale Esposito Perugia - Italy http://www.geocities.com/espositosoftware
gmrosier Posted December 1, 2003 Posted December 1, 2003 Win32 API The win32 API will be phased out in windows Longhorn, but i think they will still support it on top of the new .net framework that Longhorn will be built on. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.