Warning! Some information on this page is older than 5 years now. I keep it for reference, but it probably doesn't reflect my current knowledge and beliefs.
Mon 17 Jan2011
Writing programs in some managed technologies like Java or .NET instead of native C/C++ has many disadvantages. First and the most obvious one is smaller efficiency and greater memory consumption. That's why, for example, I prefer uTorrent over Azureus as BitTorrent client. Second flaw is harder access to native system API. That's why my friend Przemek created libraries for accessing new Windows 7 taskbar features from Java, Python and Qt code and sells them as his startup Strix Code.
Finally it's sometimes harder to integrate such programs with system shell. With .NET it's not the case because it creates EXE files so they can work as normal programs and even system services (I'm not sure about shell extensions and device drivers). With Java it's more difficult because there program is a JAR file. As jEdit is still my favourite text editor (second after Visual C++ of course), I was looking for a way to integrate it with Windows so it was my default editor for TXT and other text files. Recently I've found New jEdit Launcher - a package that serves this purpose very well, but unfortunately it's quite hard to setup. So in case you also use jEdit and look for a way to do it, here are the steps, checked under Windows XP as well as 7:
Unpack New jEdit Launcher to some directory. Windows 7 causes lots of problems with Program Files so I prefer some other places, let's say "h:\Program_Files\New jEdit Launcher".
Run command prompt ("cmd.exe"). On Windows 7 you must do it as Administrator, so open Start menu, type "cmd", right-click on the black "cmd.exe" icon and select "Run as administrator".
From the command prompt, enter the "bin" subdirectory of New jEdit Launcher like this: > h: > cd "\Program_Files\New jEdit Launcher\bin"
Call the magic command to register DLL file: > regsvr32 jeditext.dll
Now launch registery editor through Start > Run > "regedit" and create entries as decribed in "New jEdit Launcher\README.html" documentation in "Installing" section.
Second bunch of required registry entries (described in "Configuration" section) can be entered more conveniently, through "New jEdit Launcher\config\launcher.reg" file. Open this file in some text editor (Notepad or... jEdit :) and fix the paths to your Java JRE and jEdit directories. Enter path to "javaw.exe" not "java.exe" as the "Java Executable", because you don't want system console to be shown along with jEdit window. Values "jEdit Target" and "jEdit Working Directory" must point to the place where you have jEdit installed. Don't forget that all backslashes in these paths must be doubled, like "h:\\Program_Files\\jEdit 4.3.2\jedit.jar"!!!
Now run this "launcher.reg" file through double-clicking on it. After confirming the warning/question, the registry entries should be created.
Check if it works by running "New jEdit Launcher\bin\jedit.exe" file. jEdit should be started if it wasn't already running.
You can create a shortcut to this "jedit.exe" file in your Start menu. This way you have a shortcut to jEdit with pretty icon instead of default Java one, as when linking directly to the "jedit.jar" file.
Associate TXT and possibly other file types (extensions) with this "jedit.exe" program. It's done differently in Windows XP and 7 but generally you can find the appropriate configuration window it in the Control Panel. This way all text files will be opened by jEdit and they also (unfortunately) get jEdit icon.