I'd like to try to write a litestep module. Can it be done in VB.Net, and does anyonw have some example code?
I suspect that it's probably possible to write a module in VB.Net, but having no experience with VB or .NET, I wouldn't know for sure. Unfortunately, I would expect that it would be rather difficult if you don't know how to tell if it's possible, since to my knowledge it has never been done before.
As for example code, some source code is included with modules or available from the auther, other stuff can be had at shellfront.org, but most of it will be in C or C++. I'm pretty sure there isn't any module code available in VB, but I could be wrong.
Actually modules have been written in VB before. But only for vb activex dlls. You have to use this module to load your vb activex dll.
I do not know if that will work for VB.NET however.
I am a vb.net guy and I have been looking around for an answer to the same question. I tried using modulo but it is so far out of date that it cannot be used with the latest ls builds. I looked at what it did (a wrapper for an api that is out of date) and could not repair it because I do not have the source for vblsapi.dll I tried contacting the author. It seems that he has moved.
I understand that there were plan to enhance LS to give it a COM interface so people would be able to load activeX components into LS. The post I read was that those plans had been abandoned by the dev team because COM was just a bear to work with (not so but that what I read).
So, in a nutshell, vb guys are SOL with the idea of writing modules for LS. I suppose we could always learn C++ :_)
Me again :) I forgot to mention... .NET user controls (what we used to know as ActiveX controls) are only supported on Windows Forms, they are not supported in the active desktop or iexplorer window. This presents a little problem because without a .NET windows form, you don't have a container to host the object. I am pretty sure you cannot write an ActiveX control with .NET but you can with all the version 6 languages.
I am of the opinion that the ultimate solution would be to build LS using the .NET framework and to port all the core modules to .NET.
Having done several conversions to .NET, I don't think it would be that much of a big deal even if LS is written in C++. Litestep would become a wide open shell for anyone wanting to work on it in almost any language. For that matter, Litestep would become backwards compantible with COM almost by default. This is something the LS dev team should really consider doing if they want Litestep to leap over all other shells and live on as the ultimate shell that it is.
0.24.7 is a rewrite to get rid of all the COM in LS version 0.24.6 has lots of COM but nowhere in .net level stuff.
Yep, that's what I read somewhere. There is no mystery about .NET in fact, the latest version of .NET was to introduce major enhancements for C++ along with J#. Porting LS to .NET wouldn't be a big effort and it would make the development and support for LS alot easier.
On another topic but one that is very close to the initial question spawning this thread is the fact that one doe not need to write a .NET module at all for Litestep. I am a SW development project manager with time on my hands. I would certainly like to offer a hand to the dev team should they want to consider the .NET porting option.
After some more reading, I came across a module called SendMessage on Shellfront.org. In theory, one could use this module to remote a .NET windows form or service app. using a set of messages that would emulate bangs.
Right now, I think this is the only way to work with .NET apps.
the only thing about porting it to .net is that first of all, it would be a lot of work to do right now, while the core is still in the process of getting redone... its a possibility once .24.7 final comes out, but there is a second problem... most users dont have the .net framework installed, and as far as i know (i could be wrong) programs written with .net need it to run... installing it would be an unneeded hassle for most users, especially ones who just want to try out litestep, something that they can finally do now with the new litestep installer. so while it might offer benefits in terms of which languages litestep modules can be written in, it would decrease usability for new litestep users by a significant amount. it might be nice if something like vbmodulo was built into the core, although once again, that wont be likely for a few months at least
besides i think that one of the ideas was to be able to compile ls 0.24.7 on others compilers beside microsoft visual c++ (at least it was mentionesd somewhere)
Changing LS to use .NET would be a major job in and of itself. The real problem, however, is that all of the popular modules would also have to be rewritten. There aren't enough coders/time for that.