DVD SVCD Forum Foren-Übersicht
FAQFAQ     SuchenSuchen     MitgliederlisteMitgliederliste     Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen     ProfilProfil     LoginLogin      RegistrierenRegistrieren 

DVD SVCD Forum Foren-Übersicht -> PC-Forum
grundfrage: Programminstallation - wozu ??
Neue Antwort erstellen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
blabla 



Anmeldungsdatum: 11.05.2006
Beiträge: 11

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 0 - Verfasst am: Sa Mai 13, 2006 21:08    Titel: grundfrage: Programminstallation - wozu ?? Antworten mit Zitat

Tach allerseits !
Mich quälen bohrende Fragen : Es gibt tausende Programme, die hervorragend ohne Installation funktionieren... (u.a. einige Versionen von TMPGenc, VirtualDub etc.)
Wozu also das Gedöns mit dem "Installieren"
bzw. -könnte man nicht grundsätzlich jedes Programm ohne Installationsroutine programmieren, wenn man nur wollte ??
BirdOfPrey 
Moderator


Anmeldungsdatum: 05.08.2001
Beiträge: 4804
Wohnort: NRW

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 1 - Verfasst am: Sa Mai 13, 2006 21:18    Titel: Antworten mit Zitat

Ich denke, sobald ein Programm z.B. irgendwelche DLLs benötigt, ist es schon vorbei mit dem "einfach so starten". Zumindest wenn die benötigten DLLs nicht im aktuellen System vorhanden sind.
Die müssen nunmal mit installiert werden. Und das geht eben nur über einen Installer. Oder Du müsstest alles manuell an den richtigen Ort packen.

Wenn Du Programme einfach so starten möchtest ohne sie zu installieren, sondern indem sie einfach an einen beliebigen Ort kopiert werden, musste Dir einen Mac kaufen. Denn da funzt das eigentlich nur so. Programm-Icon in den Programme-Ordner ziehen, fertig. Löschen geht genauso. Äh, also das Programm-Icon in den Papierkorp ziehen.
conf-Dateien werden im Library-Ordner gespeichert (werden beim ersten starten des Programms dann angelegt). Das wars auch schon.

Gruß
_________________
Yamakawa 780, FW: Sampo, im SCSI-Gehäuse
Daewoo DVD2000, FW 2.36 BETA2
Kenwood KRF-V7773D
SVCDFan 
WM-Tipp König 2006


Anmeldungsdatum: 20.09.2001
Beiträge: 7567

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 2 - Verfasst am: Sa Mai 13, 2006 21:26    Titel: Antworten mit Zitat

BirdOfPrey hat folgendes geschrieben:
Ich denke, sobald ein Programm z.B. irgendwelche DLLs benötigt, ist es schon vorbei mit dem "einfach so starten". Zumindest wenn die benötigten DLLs nicht im aktuellen System vorhanden sind.

Das stimmt so nicht ganz. Es würde in vielen Fällen reichen die komplette Programmumgebung inkl. DLLs in ein Verzeichnis zu packen und von dort zu starten, denn die "Suche" nach den DLLs geht erst über das Verzeichnis, in dem sich das Programm befindet und dann ins Systemverzeichnis. Das ist auch der Grund ich nicht verstehe, warum soviele Installer die DLLs ins Systemverzeichnis packen müssen, wenn es auch anders ginge.

Zitat:

Oder Du müsstest alles manuell an den richtigen Ort packen.

Das ginge mit einem Entpacker (Zip o.ä.) recht einfach...
_________________
Gruß SVCDFan
BirdOfPrey 
Moderator


Anmeldungsdatum: 05.08.2001
Beiträge: 4804
Wohnort: NRW

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 3 - Verfasst am: Sa Mai 13, 2006 23:03    Titel: Antworten mit Zitat

Ah, das mit den DLLs wusste ich auch nicht. Ich dachte die würden immer im System(32) Verzeichnis gesucht.

SVCDFan hat folgendes geschrieben:
Das ginge mit einem Entpacker (Zip o.ä.) recht einfach...

Was ja dann auch nichts anderes wäre als das, was der Installer macht.
Im Prinzip entpackt der ja auch nur die "Teile" ins entsprechende Verzeichnis. Einschließlich der Einträge im Startmenü.
Wer erledigt eigentlich die Reg. Einträge? Macht das dann das Programm beim ersten Start oder erledigt das auch zum Teil der Installer?

Alles in allem auf jeden Fall wesentlich komplizierter als hier mit meinem Mac.
Vom entfernen der Programme jetzt mal überhaupt nicht zu reden.
Das ist nämlich eine Sache, die mich noch viel mehr verwundert. Wenn man doch schon einen Installer benutzt um ein Programm zu installieren, warum bleiben dann immer Reste im System zurück, wenn ich es wieder deinstalliere? Ich meine der (De)Installer muss doch 100%ig wissen, was er (bzw. das Programm später) wohin schreibt. Da kann es doch nicht so schwer sein, das auch alles wieder rückstandslos zu entfernen.
Einen Registry Eintrag nicht zu entfernen für eine abgelaufene Trial-Version verstehe ich ja noch ... aber alles andere ...

Gruß
_________________
Yamakawa 780, FW: Sampo, im SCSI-Gehäuse
Daewoo DVD2000, FW 2.36 BETA2
Kenwood KRF-V7773D
musicplayer 
V.I.P. Mitglied


Anmeldungsdatum: 27.02.2002
Beiträge: 528

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 4 - Verfasst am: So Mai 14, 2006 3:06    Titel: Antworten mit Zitat

SVCDFan hat folgendes geschrieben:
Das stimmt so nicht ganz. Es würde in vielen Fällen reichen die komplette Programmumgebung inkl. DLLs in ein Verzeichnis zu packen und von dort zu starten, denn die "Suche" nach den DLLs geht erst über das Verzeichnis, in dem sich das Programm befindet und dann ins Systemverzeichnis. Das ist auch der Grund ich nicht verstehe, warum soviele Installer die DLLs ins Systemverzeichnis packen müssen, wenn es auch anders ginge.

Tach,

erstmal vorweg: auch ich ärgere mich darüber, dass man meistens nicht einfach das Installationsverzeichnis auf nen aneren Rechner kopieren kann und dort dann ein sofort funktionsfähiges Programm vorfindet.

Ich sehe allerdings zwei Gründe dafür, warum das oft nicht funktioniert:

  • Wenn es sich um allgemein redistributierbare DLLs handelt, wäre es Speicherplatzverschwendung, wenn diese von jedem Programm im eigenen Installationsverzeichnis gehalten würden und daher mehrfach auf dem System vorhanden wären. Da hätte man z.B. bald fünfzig mal oder öfter eine "Comctl32.dll" auf dem Rechner. Ergo bietet sich dafür eine Speicherung an zentraler Stelle an. Allerdings wäre es wünschenswert, wenn die Files nicht mitten und unidentifizierbar ins System gemischt werden würden, sondern in einem speziellen shared Ordner gespeichert wären.
  • Es ist auch sicher ein gewisser (wenn auch sehr schwacher) Kopierschutz, wenn der Gelegenheitskopierer nicht einfach den Programmordner zu zippen und das Archiv auf einem anderen Rechner wieder zu entzippen braucht, um auf diesem sofort ein voll funktionstüchtiges Programm zu erhalten.

_________________
CU MP3 (better known as Gerd)


TCPA heißt Freiheit verlieren!
DV User 



Anmeldungsdatum: 19.07.2001
Beiträge: 4084
Wohnort: Penzberg

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 5 - Verfasst am: So Mai 14, 2006 10:21    Titel: Antworten mit Zitat

musicplayer hat ja eigentlich schon das Wichtigste dazu gesagt. Windows ist so angelegt, daß gemeinsam genutzte Dateien nur einmal im System sein sollten. Daß das nicht klappt, ist zwar jedem bekannt, ändert aber an der Philosophie nichts. Mal abgesehen von den angesprochenen Systemdateien, von denen es inzwischen auch schon viele nicht kompatibele Versionen gibt, gilt das ja auch für so "schönes" wie MFC, die VB-Runtime oder, etwas moderner, DirectX oder dot.net. Wenn keiner etwas installieren will, dan müsste jeder "sein" DirectX, sein DivX und sein dot.net mitbringen. Oder, um eher hier im Kontext zu bleiben, DLLs zur Dekodierung von MPG2.

BirdOfPrey hat folgendes geschrieben:
Was ja dann auch nichts anderes wäre als das, was der Installer macht.
Der macht u.U. noch eine ganze Menge mehr. Einträge unter "Documents and Settings" anlegen, die ganzen DLLs registrieren, falls nötig, Konfigurationen in der Registry ablegen,....

BirdOfPrey hat folgendes geschrieben:
Macht das dann das Programm beim ersten Start oder erledigt das auch zum Teil der Installer?
Woher soll das Programm denn wissen, wo die ganzen DLLs abgeblieben sind. Das macht der Installer, oder alternativ Du von Hand z.B. mit regsvr32

BirdOfPrey hat folgendes geschrieben:
Wenn man doch schon einen Installer benutzt um ein Programm zu installieren, warum bleiben dann immer Reste im System zurück, wenn ich es wieder deinstalliere?
Der Installer weiß zwar, was er angelegt hat. Er weiß aber nicht, ob nicht inzwischen noch 20 weitere Programme die selbe DLL verwenden.

Das ist noch so eine Systemschwäche von Windows. Es gibt weder eine vernünftige Versionierung von DLLs (jedenfalls, wenn der Programmierer sich nicht penibel drum kümmert), noch einen Zähler im System, wie oft sie von irgendwelchen Programmen installiert oder verwendet wird.

Installierst Du jetzt z.B. zwei Prorgamme, die beide die mfc-DLL benötigen und deinstallierst eines davon wieder, würde das zweite nicht mehr laufen.

Abhängig davon, für wie wichtig ein Hersteller seine DLLs hält, werden sie einfach nicht mehr deinstalliert.

Gruß DV User
blabla 



Anmeldungsdatum: 11.05.2006
Beiträge: 11

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 6 - Verfasst am: So Mai 14, 2006 11:14    Titel: Antworten mit Zitat

AHA...So So...hm...
Ich installiere meine Programme immer auf Partition D:
Wenn ich nun auf C: Windows neu installiere, laufen viele Programme auf D: munter weiter...(z.b. MAGIX VideodeLuxe2006). Dann könnte man sich die Installation solcher Programme eigentlich sparen...Oder wollen sich die Magixentwickler mit ihrer Installation nur "wichtig machen" ??
SVCDFan 
WM-Tipp König 2006


Anmeldungsdatum: 20.09.2001
Beiträge: 7567

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 7 - Verfasst am: So Mai 14, 2006 11:34    Titel: Antworten mit Zitat

BirdOfPrey hat folgendes geschrieben:

Wer erledigt eigentlich die Reg. Einträge? Macht das dann das Programm beim ersten Start oder erledigt das auch zum Teil der Installer?

Wenn richtig programmiert, sollte eigentlich das Programm selbst darum kümmern können...

Noch besser wäre natürlich, wenn das Programm selbst einen Deinstaller-Routine hätte, um sich selbst aus der Registry und weitere Dinge entfernen zu können. Nur das Programm selbst muß dann manuell entfernen, da während der Laufzeit die Datei des Programm "blockiert" ist.

Zitat:

Ich installiere meine Programme immer auf Partition D:
Wenn ich nun auf C: Windows neu installiere, laufen viele Programme auf D: munter weiter..

Das hat nichts zu sagen... zufällig werden halt die DLLs aus dem Systemverzeichnis genommen, die in der normalen Distribution sowieso enthalten sind. So sollte das auch korrekt sein. Man kann ja nicht voraussetzen, dass DLLs bereits existent sind.

Gut, es gibt sicher auch gute Softwarelösungen, die eben seine mitgebrachten DLLs nicht in das System, sondern in eigenes Verzeichnis ablegen.

Aber grundsätzlich, was die Installer betrifft, gibt in meinen Augen nur ein schlagendes Argument: In meisten Compiler für Softwareentwicklung gibt es auch einen Installer, den man für seine eigene Programm konfigurieren kann. Da macht viel weniger Arbeit und muß keinen eigenen Installer entwickeln, was auch wieder Zeit und Geld kostet. Klar, wer im großen Stil alles macht, sollte in meinen Augen einen guten Installer haben, besser noch einen eigenen schreiben, den man für weitere Programm wiederverwerten kann.
_________________
Gruß SVCDFan
DV User 



Anmeldungsdatum: 19.07.2001
Beiträge: 4084
Wohnort: Penzberg

Benutzer-Profile anzeigen Private Nachricht senden
Beitrag Beitrag 8 - Verfasst am: So Mai 14, 2006 12:20    Titel: Antworten mit Zitat

SVCDFan hat folgendes geschrieben:
Klar, wer im großen Stil alles macht, sollte in meinen Augen einen guten Installer haben, besser noch einen eigenen schreiben, den man für weitere Programm wiederverwerten kann.
Warum soll man alles selber schreiben? Neben InstallShield (nicht die abgespeckte Version aus VisualStudio) ist nicht schlecht, und es gibt auch in der OpenSource Ebene ein paar Ansätze, die ganz gut aussehen (hab' ich allerdings noch nicht getestet).

Spätestens mit .NET bekommst Du aber als Hobbyprogrammierer, der sich nicht auch noch darum kümmern will, welche zig System-DLLs er mitkopieren und noch zusätzlich installieren muß, Probleme, wenn Du keinen Installer verwendest.

Ging mir vor einiger Zeit noch so. Die VB6-Variant eines Programms konnte ich einfach auf den Laptop kopieren, 2 DLLs registrieren und das wars. Nach Umstellung auf VB.NET habe ich dann das gleiche versucht und bin kläglich gescheitert. Das .NET-Framework war auf beiden Rechnern natürlich installiert, und die Wrapper-DLLs hatte ich auch registriert. Das Programm ist auch gestartet (bei fehlenden DLLs klappte das z.B. bei VB6 nicht) und hat sich nach ein paar Anweisungen in der Startroutine kommentarlos beendet.

Erst nach der (widerwilligen) Verwendung des VS-Installers ließ sich die Applikation ohne Absturz auf den Laptop starten. Ich habe bis heute keine Ahnung, was der da noch alles installiert/registriert. Und, um ehrlich zu sein, ist es mir (da Hobbybereich) auch vollkommen egal. Ich muß diesen schrottigen Installer halt verwenden. Und so wird es vermutlich vielen Programmiereren aus dem Free-/Sharewarebereich gehen.

Zitat:
Wenn ich nun auf C: Windows neu installiere, laufen viele Programme auf D: munter weiter...(z.b. MAGIX VideodeLuxe2006).
Mag sein, daß das bei vielen Programmen problemlos geht. Der Installer macht ja noch mehr als nur DLLs ins System zu kopieren (wenn er das überhaupt macht). Wenn er z.B. unter "Documents and Settings" Einstellungen anlegt, die nicht de Standard des Programmierers entsprechen (z.B. Sprache, Verbindungsart der Kamera), dann sind diese nach einer solchen Neuinstallation von Windows weg.

Abgesehen davon lassen einem die meisten Installer auch die Wahl, was man kopieren will. So muß man nicht die gesamte CD auf die Festplatte kopieren (die auch bei 300GB irgendwann zu klein wird), sondern installiert nur das, was man wirklich braucht.

Gruß DV User
Beiträge der letzten Zeit anzeigen:   


DVD SVCD Forum Foren-Übersicht -> PC-Forum
Neue Antwort erstellen


 
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Datenschutzerklärung


Powered by phpBB © 2001, 2005 phpBB Group