True Freeware with NO installations?

  • Thread starter Thread starter Praetorian
  • Start date Start date
P

Praetorian

Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?

If somebody is going to try explaining many programs
use the very same .DLL and other adjunct files (so why
duplicate the efforts) .. then they are not living in the
modern world. The typical hard drive coming on a
computer today might be 80-120 megs .. and greater.
Who cares what the size or number of files? Most of
the garbage generated by Microsoft's registry system
accounts for the greatest waste of space.

Is there a genuine, thoughtful commentary on why?
 
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry

I feel your pain. I like 1 File Wonders too. :)

I think most of it is neglect, or not realizing the benefit.

Most of the more simple programs could be programmed to run from a single
EXE file (plus an INI file and language file, which are understandable)

When you get into more complex programs that do many unrelated functions,
it's necessary to make multiple files.

I often strip the fluff from programs and use them as 1 file wonders.

Some that may be a surprise are:

PhotoFiltre
Firegraphic
Irfanview
Audacity
MR Tech Systray
BitWise
WinPatrol
EasyCleaner
HDCleaner
RegMajik
EndItAll
Atlantis Nova
TweakUI (WinXP)
MWSnap
iCarbon

Bob

Remove "kins" to reply by e-mail.
 
Praetorian said:
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?

If somebody is going to try explaining many programs
use the very same .DLL and other adjunct files (so why
duplicate the efforts) .. then they are not living in the
modern world. The typical hard drive coming on a
computer today might be 80-120 megs .. and greater.
Who cares what the size or number of files? Most of
the garbage generated by Microsoft's registry system
accounts for the greatest waste of space.

Is there a genuine, thoughtful commentary on why?

First of all, there are quite a lot of none install applications aviable.
An application having multiple files, may have them for various reasons:

1) If you want to exchange information between 2 programs, using the same
progam code will help streamline the data exchange.

2) I can imagen a program want seperate files for functions the user can
choose to load or not load (plugins and browser add-ons are soem examples).

3) Sharing dll's can save memory. The module only has to be loaded into ram
once. I might have a 80 GB but only 512 MB RAm, whitch is running on empty
if I have some serious webdesigning or Systemadministrating to do.

4) The registry file was onec ment to be a central registration system for
what before were .ini files. with searchability and userright settings as an
added bonus. Theoretically, a nice way to organise systems, but there are
some flaws. Some programs and programmers didn't want to use the registry,
for various reasons. Further, the registry is not realy optimised for
searches as it has grown over 4 mb, IMHO. An other weak point of the
registry is the value of it. A modern computer can't live without it. This
makes it very much a target for viruses, hackers and other scum.

5) Some programming languages just require you to have seperate files or
even to use the registry. Visual basic, for example, is one of the easiest
computerlanguages to learn, and for most purposes, I don't need anything
else (afteral after HTML, Javascript, Visual Basic, PHP, hypertalk and some
(Turbo) Pascal, I realy don't need an other language to learn: I'm a system
administrator for crying out loud, not a programmer. )

6) Most programs still perform remarkable well if you just put every used
file in the same directory on a cd. Visualbasic runtime, if added to the
same directory as the program file you want to run, does not need a registry
entry

7) why reinvent the wheel if a dll can do what you want (or even more). If
everyone reinvented the wheel, ther probably would be a huge argument about
the shape and/or the definition of a wheel.

Just my 7 cents

MightyKitten
 
Praetorian said:
Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?

Just about all programs benefit from some kind of settings. Even if
it's just the position of the window. Saving such settings requires
either a file or a registry entry.
If somebody is going to try explaining many programs
use the very same .DLL and other adjunct files (so why
duplicate the efforts) .. then they are not living in the
modern world.

Diskspace isn't the only reason. Copyright issues and access to
sourcecode are issues too. If a programmer wants to use the code from
a DLL, he can only compile it into his program is he is allowed to.
Picking only the needed parts from the DLL and merging it with his
code is only possible if he has access to the source for the DLL.


Let me give a concrete example. I'm the developer of a small program
for lossless cropping of images. I use a freely available (with
source code) program called jpegtran for the actual computations.
That means that package consists of 4 files:

- The main program
- The settings file
- The helper program (jpegtran)
- The readme-file

The readme could be scrapped, the settings file cannot. What about
the helper program? Well, the helper program is written in c and my
program is written in pascal. Even though the code for the helper
program is free, it would take a long time to translate it to pascal
and even longer to catch all the errors introduced by the process.

You could argue that it's laziness not to translate the program, but
no matter what you call it, it would still take a lot of time from
actual development of the main program. So the choice is really "Do
you want new features and bugfixes, or do you want a single
executable instead of two". Not a hard choice for me.


What you seem to dislike is the DLL-hell that is so common. While the
theory of DLLs is fine (sharing, centralized updating to new
versions), the reality is that new versions sometimes break
functionality. The alternative approach, the storing of DLLs along
with the programs themselves, do solve the problems with versioning.
At least in the past, it was quite common on the MacOS to be able to
move an entire application just by copying the folder containing all
the files.
Who cares what the size or number of files?

If you don't care about the number of files, then why do you want to
avoid adjunct files?
 
Praetorian said:
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?
snip
These days, I rarely install anything and only use executables, and my
old P166/ W98SE runs much better.

Many times after I contact software authors to ask for a no-install
version, I get the answer "users don't know how to use executables, an
install makes it easy for them". That makes no sense to me as the
programs themselves are usually too complex for beginners anyway.

Complex programs like Firebird, Aida32 and 2XExplorer are executables,
IMO there's no excuse for many simple programs, except the way they were
coded.

Mike Sa
 
Easy answer: Another, not-so-subtle technique by Microsoft to monopolize the
OS market! Code written to be installed and use the registry can not easily
be compiled for other OSs can it? Programs installed in this way can not be
shared with others as compiled executables, can they? (since things that make
them work are buried in the registry). Similar with using possibly copywrited
shared dlls.

Clearly in the Unix world, shared libraries have been used for decades before
the advent of windows 9x and its cousens - no problem. Either the libraries
are placed in the executable code as part of the compiling and linking process,
or any shared macro libraries used by executables are built according to agreed
standards, so there are little or no problems with needing specific versions.

In sum, if there is going to be common or shared places for storing variables,
settings, functions, etc. -- Mr. Gates is going to make sure it is a
`Microsoft' specific type of shared `something'.
 
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

For one, programmers find it is a neat hiding place for
information they do not want you to find.
Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?

This can only be reasonably expected for 'smaller' programs
and is somewhat dependent on the language used for programming.
If somebody is going to try explaining many programs
use the very same .DLL and other adjunct files (so why
duplicate the efforts) .. then they are not living in the
modern world. The typical hard drive coming on a
computer today might be 80-120 megs .. and greater.

Size is not a problem today but a bigger problem I see is some PP
programs uninstall shared dlls which takes every program that uses
the shared dll, down with it. There are some that disable your
internet connection because of improper uninstall procedures. I am
not a registry lover, never will be and won't buy shareware unless
it uses an ini file. Total Commander and Agent are two examples of
where I spent my money.
Who cares what the size or number of files? Most of
the garbage generated by Microsoft's registry system
accounts for the greatest waste of space.

Is there a genuine, thoughtful commentary on why?

BoB
 
Easy answer: Another, not-so-subtle technique by Microsoft to monopolize the
OS market! Code written to be installed and use the registry can not easily
be compiled for other OSs can it? Programs installed in this way can not be
shared with others as compiled executables, can they? (since things that make
them work are buried in the registry). Similar with using possibly copywrited
shared dlls.

Bingo!
 
Bob said:
I often strip the fluff from programs and use them as 1 file wonders.

Some that may be a surprise are:

PhotoFiltre
Firegraphic
Irfanview
Audacity
MR Tech Systray
BitWise
WinPatrol
EasyCleaner
HDCleaner
RegMajik
EndItAll
Atlantis Nova
TweakUI (WinXP)
MWSnap
iCarbon

Bob

Add all analogx progs and winamp - well, at least winamp 2.79 ...

Anybody in this newsgroup with enough enthusiasm to maintain a list of
'1 file wonders with unneccesary install'?

greetings
jes
 
Praetorian said:
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

Beware, no installation procedure does not mean no registry entries.
When you start a new programme the first time it can put a lot of
entries into the registry.

Frank
 
Frank said:
Beware, no installation procedure does not mean no registry entries.
When you start a new programme the first time it can put a lot of
entries into the registry.

Amen to that. I've seen almost every "installation free" program do
exactly that. However, it's usually not their fault but rather normal
Windows behavior.
 
Seems like that would be the case, but it's not. The registry is a
central location to get and store OS and application information.
Porting a program to another OS is difficult because the API changes so
dramatically, using or not using the registry is fairly trivial.

They can't be shared as a simple binary, but again, this goes much
further than the registry, although that is a valid point. Installing
files all over the filesystem results is a program becomming so
distributed on a single system, it is mostly impossible to pack it up
again. Other OS's can have the same problem to varying degrees.

I don't think this is any "not-so-subtle technique by Microsoft to
monopolize the OS market", as the OS is not really monopolized by this
structure. It is the structure, for better or worse, that MS used to
evolve Windows. The very structure of Windows is the primary reason
alternate OS's are becomming more and more popular. MS has by this
maintaining this structure actually opened the door to a better OS, not
closed it to competition. They have in essence placed the welcome mat
out front.
HK
 
Praetorian said:
Can somebody tell me just *why* there must be an
insidious installation of countless entries in the registry
data and elsewhere; some with multiple adjunct files
necessary for full operation?

Just want to add my 2 cents worth;
When MS released the spec for Windows 95, the first Windows with a real
registry, they specified that any program that wanted to be Windows 95
certified needed to have an uninstall program. This program needed to be
accessable from Add/Remove programs in the Control Panel. The only way I
know of to get an entry there is via the registry. Earlier versions of
Windows had no real registry, so application specific information was
stored in *.ini files. these files were often left behind when people
tried to get rid of the application. MS decided to get rid of the *.ini
files and use a central database called the registry. The registry is
nothing to be afraid of, the problem with it is that most programmers do
not take into account the registry entries a program itself creates and
have the uninstaller remove these upon uninstallation. It's basically
just a lack of forsight on the part of the programmer but it's bad
practice IMO nevertheless. I try to have the installer create all of the
registry entries my program needs, that way the uninstaller will always
remove them.
Why can't most programs be a single executable that
is standalone, requiring no adjunct files and no entries
anywhere on the computer?

Many programming languages require runtime files. Let's look at VB for
instance. It's an easy language to learn and therefore a lot of
freewares are created with this compiler. Every VB executable requires
the runtime files. Beyond that, if I want to add a feature not included
in the runtime files, like say a tabbed interface, I need to include and
register another file for installation. If I were really smart and could
spend countless hours programming in assembler, this wouldn't
necessarily be the case. But for many application I write, I can save
countless hours by using a language such as VB or VC++, and use other
already available tools by simply including the tools as files. There is
no way, for the most part, to include these pre-compiled tools in any
other form.
If somebody is going to try explaining many programs
use the very same .DLL and other adjunct files (so why
duplicate the efforts) .. then they are not living in the
modern world. The typical hard drive coming on a
computer today might be 80-120 megs .. and greater.
Who cares what the size or number of files? Most of
the garbage generated by Microsoft's registry system
accounts for the greatest waste of space.

If the .DLL is included with the OS then there isn't a problem, but if
it is not, there is no way for the developer to know if it is, or is not
already installed on your system. If it is then why install it again. I
get your point about drive sizes and such, but may people feel the exact
opposite, and feel very personal about any extra bytes being install on
their system. Besides, when the current Windows API structure was
designed, a 2GB hard drive was huge. The first Windows 95 saw only FAT16
partitions. Not sharing .DLL's would have resulted in a very large
amount of drive waste.

Remember peoples concerns regarding cluster size and wasted space with
Windows 95 and FAT16?

I often distribute my programs with and without the runtime files. It
provides smaller downloads for those that know they already have the
right files installed, but it does not registr another share so you
could break a program provided as such if you uninstall the last app
registered to share those files, they will then be ininstalled with the
app.
Is there a genuine, thoughtful commentary on why?

The best explanation for all of this is that, this is the way Windows is
designed, largely to make the platform easier to develop for. Unless the
developer goes to great lengths to avoid using the easy tools provided
and create a stand-alone all-in-one program, you will get this sort of
thing. I personally have a great deal of respect for those people who
can create such a program, they have reached the holy grail of
applications development.

HK
 
The registry is
nothing to be afraid of, the problem with it is that most programmers do

I don't think most of us are afraid of the registry. I think we dislike
programs that leave 237 registry entries behind. :)

I like INI files, and I think many do. If a program is named "Skunk", and
the INI file is in the Skunk folder (Not the Windows folder!) there's no
problem getting rid of it. Same goes for DAT files the user creates, as long
as they're placed in the program folder.

Ideally, the uninstall program would ask "Do you wish to keep your data
files, or delete the entire folder?"

And "shared" library files and folders are uber LAME! The only shared
libraries should be supplied by Microsoft.

Well, that's Windows according to Bob. YMMV. :)

Bob

Remove "kins" to reply by e-mail.
 
Back
Top