|
Antwort |
Mahlzeit,
ich weis ja nicht wie es euch geht, aber ich habe auf meinem "Server" (alter PC der zu nix anderem zu gebrauchen ist ) für zu so ziemlich alles was ich bisher mal gemacht habe mindestens ein Programm liegen. Freeware, Shareware oder Kauf-Ware lassen sich eben doch vom Netz besser installieren als jedes Mal die jeweilige CD raus zu kramen. Und so hat sich bei mir im laufe der Jahre ein Sammelsorium an Programmen eingefunden über das man schnell den überblick verliert. Natürlich könnte man das alles in verschiedenen Ordnern sortieren, das hab ich auch, doch im entscheidenden Moment stellt sich wie immer die Frage: "War das Programm jetzt in 'Bildbetrachter', 'Grafik Programme' oder doch wo ganz anders? Und wo zum Geier war die Lizenz Nummer?". Und ehe man sich durch den ganzen Verzeichnisbaum gehangelt hat dauert es doch ne weile. Dieser und einiger anderer Probleme versuche ich mit "AppManager" Herr zu werden. Das Programm ist derzeit noch Alpha (Version 0.3) und alles andere als "Feature-Complete". Es läuft ab Win98, Win95 und WinNT4 hab ich nicht getestet, mit dem IE4 müsste es auch dort laufen. Auf alle fälle braucht Ihr dem MS XML Parser. Eine Sache die mich viel Zeit und Nerven gekostet hat ist die Tatsache das das AppManager mehrere Sprachen unterstützt, auch Sprachen mit Nicht-Lateinischen Zeichen (hier war mal wieder der Größenwahn Vater des Gedanken ). Sollte jemand ein Nicht-Deutsches Windows haben wäre es nett wenn Ihr es auch mal damit testet. Im Verzeichnis Katalog befindet sich die Datei "locked.gcf" die Ihr, wenn Ihr Lust und Laune habt, versuchen könnt zu öffnen. Wenn es euch gelingt findet ihr darin eine einzige Kategorie mit einem einzigen Programm. Zur Kontrolle postet bitte die Namen und eine kleine Anleitung wie Ihr das gemacht habt. Der Gewinner erhält 100 Punkte, bei 101 gibt es eine Lolli . Für Anregung, Hinweise, Kritik oder sonstigen Konstruktiven Meldungen bin ich immer offen. Vor allem würde mich interessieren ob es sich lohnt das Programm weiter hier zu veröffentlichen oder ob ich der einzige mit beschriebenem Problem bin. Edit: Die neuere Version gibt es unten. |
|
#21
Zitat von AndreasP:
Zitat:
Fertig installierte Programme zu archivieren bringt IMHO nicht so viel.
Besonders einfach wird das aber nicht. Prinzippiell müsstest du die komplette Registry und den kompletten Verzeichnisbaum inklusive Zeitstempel der Dateien in ne Datenbank schreiben und anschließend die Infos nochmal zusammentragen und die Unterschiede feststellen... Alles in Allem machbar aber viiiiel Arbeit! In Punkto GUI würde ich dann da auch n Dialog vorschlagen. Und die Funktion sollte auch etwas anders heißen....wie wärs mit "QuickSetup erstellen" oder sowas. Das Tüpfelchen auf dem i wär natürlich, wenn dein Prog gleich ne *.exe erstellen könnte, die dann automatisch den Inhalt installiert. So, wie n selbstentpackendes Archiv nur inklusive Registry...
Zitat:
Zitat:
Willst du n Uninstaller machen?
Folgende Situation: Für meine GraKa brauch ich den ATI Catalyst Treiber der in (un)regelmäßigen abständen erscheint. Wenn ich den downloade landet der in meinem Downloadordner. Mit AppManager wähle ich jetzt die alte Version aus dem Katalog aus und gehe auf „Aktualisieren“. Hier wähle ich dann die neue Version aus meinem Downloadordner. Entsprechen der Benutzerauswahl wird beim Fertigstellen die neue Version gegebenen falls in den Ordner der alten Version kopiert/verschoben und die alte Version wenn gewünscht archiviert (unterordner, zip-archiv usw). Außerdem wird gleich der Eintrag im Katalog aktualisiert. Auf diese weise halte ich auf einfache Art und weise Ordnung, muss mir nicht duzende Pfade merken und hab eine automatische Archivierung falls das Programm doch nicht so will wie ich und ich doch lieber die alte Version verwenden will.
Zitat:
Neue Funktionen:
- Kategorien können jetzt in mehreren ebenen erstellt werden - Erweiterte Lizenz – Optionen - Deinstallation: Wenn mit AppManager ein Setup gestartet wird kann hinterher auch die Deinstallation über AppManager gestartet werden - Die position der Toolbar kann, auf vielfachen wunsch eines einzelnen , jetzt über das Einstellungsmeü verändert werden //Nachtrag: Hab mir das hetzt angeguckt. Und hab auch gleich was zu meckern: - Man kann keine Kathegorieen erstellen --> AV - "Uninstall" hat noch kein Icon - Die Uninstall-Komponenten haben keine Lokalisierte Captions. mit 'TntButton1' is extrem aussagekräftig... - die Benutzerverwaltung funktioniert nicht(oder hab ich das nur nicht kapiert? ) - Man sollte die Mainform maximieren können - Das mit dem OneClickInstall hab ich noch nicht kapiert(kann aber auch daran liegen, dass auch das noch nicht lokalisiert ist) - Des weiteren muss ich dich mit der Toolbar leider auch enttäuschen. Am besten gefiele es mir, wenn sie ganz oben - über dem PageControl wäre. Da könnte man dann alle Buttons aufnehmen, also auch Kathegorie speichern, AboutBox, Bundle, etc... Du kennst das ja mit dem Gewohnheitstier... mfg Christian |
Zitat |
Delphi 7 Professional |
#22
mahlzeit,
Zitat:
Man kann keine Kathegorieen erstellen
Zitat:
"Uninstall" hat noch kein Icon
Zitat:
Die Uninstall-Komponenten haben keine Lokalisierte Captions. mit 'TntButton1' is extrem aussagekräftig...
Zitat:
die Benutzerverwaltung funktioniert nicht...
Zitat:
Das mit dem OneClickInstall hab ich noch nicht kapiert
Zitat:
Des weiteren muss ich dich mit der Toolbar leider auch enttäuschen. Am besten gefiele es mir, wenn sie ganz oben - über dem PageControl wäre. Da könnte man dann alle Buttons aufnehmen, also auch Kathegorie speichern, AboutBox, Bundle, etc... Du kennst das ja mit dem Gewohnheitstier...
|
Zitat |
Delphi 7 Professional |
#23
mahlzeit,
es ist mal wieder zeit für ein update. auf wunsch eines einzelnen herren habe ich das design etwas überarbeitet. die button's befinden sich nun über dem tabpage. desweiteren ist jetzt möglich programme von einem bundle per drag and drop in ein anderes zu verschieben. auserdem kann das programm wieder aus dem bundel gelöscht werden (ich weis, tolles feature ) und natürlich wurden einige bugs gefixt. dabei waren auch zwei echt hartnäckige und nervende die mir regelmäßig den katalog verschoßen haben. bis jetzt sind sie nicht wieder aufgetauch. so, ich freue mich wieder über fleißige tester, tips, komentare und bug-reports. den link zur aktuellen version findet ihr in meiner signatur. |
Zitat |
|
#24
Zitat von AndreasP:
auf wunsch eines einzelnen herren habe ich das design etwas überarbeitet. die button's befinden sich nun über dem tabpage.
Und gleich nach dem Dank kommt ein großes Lob. Das Design gefällt mir schon mal sehr gut! Erinnert mich irgendie an die neuen Office12-Previews... Und wieder gibts n paar Anmerkungen: - es wäre schön wenn man dein Prog noch Maximieren könnte(ggf. mit alClient arbeiten) - Den Aktivierungs-Schlüssel sollte man auch im Dialog schon angeben können - Die Lizenztyp-ComboBox im Dialog ist noch nicht geändert - Wenn man eine Kathegorie samt Programm erstellt hat und zu "Aphabetisch" wechselt, gibts ne AV. Bei erneutem Öffnen funktioniert die Alphabetische Ansicht aber komischerweise. - beim Rechtsklick auf den TreeView gibts ne AV - Statt dem MainMenu würde mit deinem neuen Design n PageControl besser passen. So machts IMHO auch MS - Als Standard-Toolaber würde ich statt "Katalog" "Datei" vorschlagen - grBx_Licence ist noch nicht Lokalisiert - momentan lassen sich unmögliche Lizenzen erstellen(z.B. ShareWare und GPL). Da musst du dir was anderes ausdenken. Also entweder nur eine ComboBox, oder du zeigst die 2. nur als Erweiterung für nen Eintrag "OpenSource" in der ersten an. - für was gibts die "Lizenz-Anzahl" für Doppel-Lizenzen(wie z.B. bei MySQL), für große Unternehmen, die mehrere Lizenzen haben, für was ganz anderes...? - Hints wären ganz Praktisch. Sonst muss man ausprobieren, dass, z.B., wenn man auf "<unbekant>"(das schreibt man übrigens mit 2n) im Lizenz-Tab klickt die öffnen kann - Man sollte auswählen können, ob das Prog schon installiert ist oder nicht. Wenn dein Prog nämlich fertig ist, würde ich es gerne für 2 Dinge benutzen. Einmal langfristig zur Installation von Programmen und, was wohl schon früher funktionsfähig sein sollte, als Informationsdatendank für meine schon installierten Programme - Je nachdem, ob man ein schon installiertes Programm oder ein zu installierendes gewählt hat, sollte man ggf. den "Installieren-Button" durch einen "Programm starten-Button" ersetzen - Die Suche sollte nicht CaseSensitive sein - Der Werte-bearbeiten-Button sollte sich eindrücken lassen(Down) - wenn man das Programm startet ist der Informatiuonsleiste-Button noch nicht Down - Bei der Benutzerverwaltung solltest du ne ToolBar oder sowas machen. Ich hab nämlich nur per Zufall rausgefunden, dass der treeview n Kontext-Menü hat... - l_userrighttext ist nicht lokalisiert - Wenn man versucht den erst erstellten (ggf. einzigen) Benutzer per KontextMenu im TreeView zu löschen, gibts n TypeCast-Error - Gruppen lassen sich nicht löschen - Benutzergruppen haben keinen Effekt und sind demnach (noch?) überflüssig - Man kann auch keine Benutzer einer Gruppe zuweisen. Die Buttons in "Mitgliedschaft" haben keine (erkennbare) Wirkung - Der Benutzername sonnte nicht CaseSensitive sein - Unbefugte Benutzer können Benutzer erstellen, die automatisch Admin sind ==> seeehr sicher - ein Benutzer kann sich selbst Rechte entziehen... hm.... - Unbefugte können Kathegorieen erstellen(per Kontext-Menü) - man sollte den Benutzer wechseln können - Lizenz-Anzahl ist nicht Disabled, wenn nicht im Edit-Modus - Wie funktioniert denn jetzt eigentlich deine Benutzerverwaltung. Wer darf wann was? Wenn ich das weiß, kann ich erst weiter meckern... - ... So, das soll erst mal gewesen sein. Viel Spaß beim Debuggen und weiter so! mfg Christian |
Zitat |
Delphi 7 Professional |
#25
Mahlzeit,
danke für deine Nachricht. Du scheinst dich ja richtig mit dem Programm beschäftigt zu haben .
Zitat:
Erinnert mich irgendie an die neuen Office12-Previews...
Zitat:
- es wäre schön wenn man dein Prog noch Maximieren könnte(ggf. mit alClient arbeiten)
Zitat:
- Den Aktivierungs-Schlüssel sollte man auch im Dialog schon angeben können
- Die Lizenztyp-ComboBox im Dialog ist noch nicht geändert
Zitat:
- Wenn man eine Kathegorie samt Programm erstellt hat und zu "Aphabetisch" wechselt, gibts ne AV. Bei erneutem Öffnen funktioniert die Alphabetische Ansicht aber komischerweise.
- Wenn man versucht den erst erstellten (ggf. einzigen) Benutzer per KontextMenu im TreeView zu löschen, gibts n TypeCast-Error
Zitat:
- beim Rechtsklick auf den TreeView gibts ne AV
Zitat:
- Statt dem MainMenu würde mit deinem neuen Design n PageControl besser passen
Zitat:
- Als Standard-Toolaber würde ich statt "Katalog" "Datei" vorschlagen
Zitat:
momentan lassen sich unmögliche Lizenzen erstellen(z.B. ShareWare und GPL).
Zitat:
- Hints wären ganz Praktisch....
Zitat:
- Man sollte auswählen können, ob das Prog schon installiert ist oder nicht. Wenn dein Prog nämlich fertig ist, würde ich es gerne für 2 Dinge benutzen. Einmal langfristig zur Installation von Programmen und, was wohl schon früher funktionsfähig sein sollte, als Informationsdatendank für meine schon installierten Programme
- Je nachdem, ob man ein schon installiertes Programm oder ein zu installierendes gewählt hat, sollte man ggf. den "Installieren-Button" durch einen "Programm starten-Button" ersetzen
Zitat:
- Die Suche sollte nicht CaseSensitive sein
Zitat:
- Der Werte-bearbeiten-Button sollte sich eindrücken lassen(Down)
- wenn man das Programm startet ist der Informatiuonsleiste-Button noch nicht Down
Zitat:
- Der Benutzername sonnte nicht CaseSensitive sein
Zitat:
- ein Benutzer kann sich selbst Rechte entziehen... hm....
So und jetzt ein paar Worte zur Benutzerverwaltung und allem was dazugehört. Als ich mit der Planung für dieses Programm begonnen hatte, hätten unter umständen ca. 2500 Menschen damit gearbeitet. daher ist die Benutzerverwaltung mit verschiedenen Rechtestufen und Gruppen überhaupt drin (und um zu sehen ob’s machbar ist und wie). Aber die Zeiten ändern sich. die Benutzerverwaltung befindet sich derzeit in einem sehr rudimentären zustand um zusehen ob’s überhaupt gebraucht wird und in welchem umfang. Für den Einzelnutzer ist das mit Sicherheit etwas überdimensioniert. Bis nicht geklärt ist in welchem umfang das ganze drin bleibt, halte ich es nicht für sinnvoll jetzt schon eine fertige Oberfläche zu erstellen. Nachfolgend sind die Notizen die ich mal zum Thema gemacht habe:
Delphi-Quellcode:
Administrator: Benutzer: anlegen/löschen
Benutzer: Rechte festlegen Benutzer: Zugriff auf App. Kategorien u. App festlegen App. Kategorien: anlegen/löschen App.: Von einer Kategorie in eine Andere schieben App.: hinzufügen/löschen/aktualisieren App.: Versionsinfos Ändern App.: Jeder Version kann installiert werden Zugriff auf alle App. u. App. Kategorien Kennwörter zurücksetzen/neu festlegen Gruppenleiter: Benutzer: Rechte festlegen (nur Gruppenleiter o. Anwender) Benutzer: Zugriff auf App. Kategorien u. App. festlegen (Nur für Gruppen und App. für die er Gruppenleiter ist) App.: aktualisieren App.: Version muss mindestens "ReadyForUse" haben zum Installieren Zugriff auf alle App für die er Leiter ist + zusätzliche App. u. Kategorien Kennwörter zurücksetzen/neu festlegen (nur bis Gruppenleiter) Anwender: nur zugriff auf App. Kategorien und App. die für Ihn extra freigegeben wurde App.: Version muss mindestens "ReadyForUse" haben zum Instalieren Tester: Können alles installieren Ansonsten wie Anwender Für Meinungen, hinweise, Tipps usw. bin ich immer offen. Mögen die Diskussionen beginnen |
Zitat |
|
#26
Zitat von AndreasP:
danke für deine Nachricht. Du scheinst dich ja richtig mit dem Programm beschäftigt zu haben
Zitat:
Zitat:
Erinnert mich irgendie an die neuen Office12-Previews...
Zitat:
Zitat:
- es wäre schön wenn man dein Prog noch Maximieren könnte(ggf. mit alClient arbeiten)
Zitat:
Ich mag eigentlich keine Programme die den ganzen Bildschirm belegen obwohl ihnen ein kleines Fenster reichen würde. Wenn du eine Idee hast höre ich die mir gerne an.
Zitat:
Zitat:
- beim Rechtsklick auf den TreeView gibts ne AV
Zitat:
Zitat:
- Man sollte auswählen können, ob das Prog schon installiert ist oder nicht. Wenn dein Prog nämlich fertig ist, würde ich es gerne für 2 Dinge benutzen. Einmal langfristig zur Installation von Programmen und, was wohl schon früher funktionsfähig sein sollte, als Informationsdatendank für meine schon installierten Programme
- Je nachdem, ob man ein schon installiertes Programm oder ein zu installierendes gewählt hat, sollte man ggf. den "Installieren-Button" durch einen "Programm starten-Button" ersetzen 1. Dialogseite: Auswahl: Schon installiertes Programm, Archiv, Setup-Datei, ... 2. Dialogseite: Auswahl Dateien ggf. Auswahl der Prog-exe 3. und folgende Seiten: Infos über Prog, Hersteller, etc. Den Installieren-Button nur, wenn es sich um ein Archiv oder ein Setup handelt. Nach Installation ggf. auch Auswahl der Prog-Exe
Zitat:
Zitat:
- Der Werte-bearbeiten-Button sollte sich eindrücken lassen(Down)
- wenn man das Programm startet ist der Informatiuonsleiste-Button noch nicht Down
Zitat:
Zitat:
- Der Benutzername sonnte nicht CaseSensitive sein
Zitat:
Zitat:
- ein Benutzer kann sich selbst Rechte entziehen... hm....
Zur Benutzerverwaltung: Wenn das wirklich in so ner großen Firma laufen soll, dann würde ich n ganz anderen Ansatz machen. Auch, wenn das ganze scheinbar noch nicht klar ist, hier mein Ansatz:
Delphi-Quellcode:
Dann wären auch deine "Gruppen" überflüssig, bei denen ich noch nicht mal weiß, was die machen sollen...
TCatalog = class(TObject)// oder sonst n Vorgängertyp; z.B. wär TCollectItem was, wenn du die dpCollection nehmen willst
private FName: string; ... FCategories: TObjectList; // oder Collection protected ... public properties ... procedure SaveToFile; procedure LoadFromFile; function Rename(ANewName: string): Boolean; function CreateNewcategory(AName: string): TCategory; ... published properties... end; TCategory = class(TObject) private FName: string; ... FProgs: TObjectList; FAllowedUsers: TStringList; // Die User, die ne Ausnahmegenehmigung haben public properies... function Reaname(ANewName: string): Boolean; function: CreateNewProg(...): Boolean; ... end; TProg = class(TObject) ... end; TAction = (aNew, aRename, aInstall, ...); TProgAction = class(TObject) private FObject: TObject; // mit was wird was gemacht FAction: TAction; public properties... function Execute: Boolean; // jeweiligt Aktion ausführen end; TUser = class(TObject) private FName: string; FPassWord: string; // besser nur Hash bzw. Verschlüsselung FPosition: string; //Admin, User, ... public properties... function HasRight(TProgAction): Boolean; // Hat der User das Recht das zu tun? end; mfg Christian |
Zitat |
Delphi 7 Professional |
#27
mahlzeit,
so, jetzt wo mein rechner wieder läuft kann ich dir auch antworten .
Zitat:
Das mit den Kathegorien. Ich tipp mal du benutzt Selected ohne vorher auf nil zu prüfen...
Zitat:
-momentan lassen sich unmögliche Lizenzen erstellen(z.B. ShareWare und GPL).
auserdem habe ich erfahren das eine kombination aus 2 lizensen nicht ausreichend ist. trolltech hat für ihre qt bibliotek tatsächlich 4 (in worten 4) lizensmodi im angbot. |
Zitat |
|
#28
Zitat von AndreasP:
Zitat:
Das mit den Kathegorien. Ich tipp mal du benutzt Selected ohne vorher auf nil zu prüfen...
Zitat:
Zitat:
-momentan lassen sich unmögliche Lizenzen erstellen(z.B. ShareWare und GPL).
auserdem habe ich erfahren das eine kombination aus 2 lizensen nicht ausreichend ist. trolltech hat für ihre qt bibliotek tatsächlich 4 (in worten 4) lizensmodi im angbot. Nachtrag: Also ich habs jetzt noch mal getestet: Kathegorie-Treeview --> Rechtsklick auf freie Stelle(d.h. nicht auf ein Item) --> AV mfg Christian |
Zitat |
|
#29
Konntest dus reproduzieren? Bzw. hast du meinen Nachtrag gesehen?
Des weiteren hab ich nochwas (eher unwichtiges) gefunden: Wenn kein kathalog geöffnet ist, kann man den aktuellen sooft schließen, wie man will, es ändert sich nix. Den Schließen-Button könnte man also deaktivieren... mfg Christian |
Zitat |
Ansicht |
Linear-Darstellung |
Zur Hybrid-Darstellung wechseln |
Zur Baum-Darstellung wechseln |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
LinkBack URL |
About LinkBacks |