I want to create an application. It shouldn't be OS-specific but I'm running 98SE so I'll be explaining things in terms of that. I've already written it as a working script in VBScript, but it's too slow and gets exponentially slower as it handles larger and larger files.

I want to write it in another language as an executable, but I'm not sure what language will work -- or which would be best.

I have a feeling that C or one of its relatives is what I should be using but to be honest in my ignorance I have almost no basis for any opinion.

Here's what I need to use this language to do:

I need a native, portable-OS GUI.

I need multiple-file-handling capabilities invoked via the shell (i.e., by right-clicking on a selected file or selected files and invoking the program through their context menu).

I need it to read binary data from disk.

I need it to write binary data to disk.

I need to produce it in (at least) executable form. I'm fine if it's platform-portable, but I need it in Windows and frankly the people I'll be giving it to will be using Windows, too.

I need a free compiler operable on 98SE.

In other words: the user will select files or a file and through the shell context menu invoke the program using the files or file as arguments (correct terminology? I'm not sure). After the user manipulates settings from the GUI, the program will read the files or file as binary data and write further binary data to disk.

What language should I use? How do I go about it?

I taught myself VBScript from scratch but that was accidental and although I've become proficient with it I am because of my ignorance at a loss when it comes to other programming languages' merits, drawbacks, capabilities, &c.

If I can produce an executable with a native, portable-OS GUI, shell integration, and binary IO capabilities (preferably in single file -- no installation needed), that's all I need.

As I've said I'm running 98SE and don't have any other option; and it does have to be a free compiler (this is only a personal project).

Thanks very much for the suggestions as to which language I need to use. I'm entirely uninformed about this despite spending hours researching it on the Internet.


`me

QT GUI library is also portable between many (but not all) operating systems. As for compilers -- you will need one for each OS that you want to support. There is no one compiler that will cross-compile for all of them.

QT is commercial, which means, owned by a company, and this may involve commercial interests, GTK is not commercial. Also, QT is only for C++, which means that it cannot be used in C program, while GTK is for C. Otherwise, QT and GTK are quite similar, having almost the same functions.

Concerning platforms, a good solution is to write only for Linux :) because Linux runs on many computer architectures. Otherwise, at least x86 and powerpc should be targeted, this also enables to use the software in some embedded devices. For that, the best compiler is gcc, which can compile for the biggest number of processors. gcc is certainly better than visual c, as it is more standard-compliant, and also more reliable, and at that it is free. In Windows, cygwin and mingw use gcc.

This article has been dead for over six months. Start a new discussion instead.