Entwickler-Ecke

Freeware Projekte - Maminator (Was essen wir heute Mittag?)


LittleBen - Sa 30.04.11 00:21
Titel: Maminator (Was essen wir heute Mittag?)
Hallo ihr Lieben,
auf Wunsch meiner Schwester programmierte ich ein Programm, dass die Frage "Was essen wir heute Mittag?" ganz einfach beantwortet. Es handelt sich hierbei eigentlich "nur" um eine Datenbank(MySQL Lite), in der verschiedene Essensnamen in gewählten Sparten gespeichert werden können. Um ein Essen nun aus einer bestimmten Sparte zufällig zu wählen, dient eine Zufallsfunktion, die verhindert, dass ein Essen zweimal hintereinander gewählt wird, sowie es bei dem normalen Gebrauch von Random oftmals der Fall ist.
Schaut es euch doch einfach mal an. Konstruktive Kritik oder Verbesserungsvorschläge sind erwünscht!

Das Setup kopiert drei DLL Dateien(benötigt die Datenbank), eine TTF Datei und die EXE Datei in den Ordner C:\Users\Username\Maminator. Die DB Datei, in der schon angelegte Essen sind, wird in den Ordner C:\Users\Username\Documents\Maminator kopiert.
Ein Icon bzw. Logo habe ich leider noch nicht.

Grüße,
Benny

PS: Diese "Art" (wie Maminator) meine Programme zu benennen habe ich user profile iconKlabautermann zu verdanken.

EDIT:
Version 2:
- Update-Funktion(NICHT automatisch)
- Fehler behoben
Version 3:
- Bilder könne den Essen hinzugefügt werden


Delete - Sa 30.04.11 04:58

Wenn du schon ein Setup hast, warum kopiert es die Dateien nicht dahin, wo sie hin gehöre? Die Programm Dateien in den Programmordner zum Beispiel.


LittleBen - Sa 30.04.11 11:01

Da ich selbst Setups hasse, die Administratorrechte benötigen. Nur aus diesem Grund.


Delete - Sa 30.04.11 12:48

Hat XP auch so von mir verlangt. Und außerdem hasse ich es, wenn sich Programme nicht an Standards halten und mir so mein System zu müllen.


finalizat0r - Sa 30.04.11 12:51

Ich hab das Programm eben mal probieren wollen doch leider hängt es sich sofort auf sobald ich auf das Tab "Essen" will.


LittleBen - Sa 30.04.11 13:34

user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
Und außerdem hasse ich es, wenn sich Programme nicht an Standards halten und mir so mein System zu müllen.
Grundsätzlich ist es so, dass eine Anwendung keine Änderungen in geschützten Bereichen des Betriebssystems vornehmen sollte. Doch wenn zum Zeitpunkt der Installation Administratorrechte vorhanden sind, kann das Setup beliebige Änderungen in geschüzten Bereichen vornehmen (DLLs austauschen/hinzufügen,etc.).
Bei einem Setup, dass keine Administratorrechte benötigt, ist es garantiert, das am Betriebssystem nichts geändert wird und somit auch keine Resgistry-Einträge erstellt werden. Auserdem können alle installierte Dateien rückstandslos wieder gelöscht werden.

user profile iconfinalizat0r hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab das Programm eben mal probieren wollen doch leider hängt es sich sofort auf sobald ich auf das Tab "Essen" will.

Habe das Programm bei mir unter verschiedene Betriebsystemen und an zwei Computern getestet. Hat immer funktioniert. Was hast du denn für ein Betriebssystem?

EDIT: Den Fehler habe ich gefunden und behoben.


Delete - Sa 30.04.11 20:17

Das ist egal. Wenn ein Setup, dann eben richtig. Wenn das Setup keine Administratorenrechte benötigt, warum dann ein Setup? Wenn ich ein Programm mit einem Setup installiere, dann erwarte ich, dass das Programm im Ordner Programme landet. Eventuell hab eich ja mein Homeverzeichnis verschoben auf ein Netzlaufwerk mit begrenzen Speicherplatz und dann kommst du und müllst mir meinen Speicherplatz zu. ;)


LittleBen - Sa 30.04.11 23:20

Sehe ich nicht so ;)

EDIT: Doch das Betriebssystem bleibt clean :P


Regan - Sa 30.04.11 23:22

Ich stimme mit Luckie überein. Außerdem: Was spricht dagegen, das Programm einfach ohne Installer auszuliefern und alle Dateien in einem Verzeichnis zu lassen? Das würde auch die Portabilität erhöhen.


LittleBen - Sa 30.04.11 23:58

Das mit dem Installer mache ich unter anderem desshalb, weil ich im Programm auf Dateien zugreife, deren Pfad ich nun mal angeben muss. In diesem Fall C:\Users\Username\Maminator bzw. C:\Users\Username\Documents\Maminator.
Und sich darauf zu verlassen, dass die Anwendung in dem Ordner geöffnet wird, wo nötigen Dateien liegen, finde ich zu "gefährlich". Und vor allem habe ich keine Schreibrechte!


Delete - So 01.05.11 05:29

Du weißt aber schon, dass du mit ParamStr das Anwendungsverzeichnis ermitteln kannst? Und warum solltest du keine Schreibrechte haben? Wenn ich das Programm in einen beliebigen Ordner kopieren kann, dann habe ich da auch Schreibrechte. Und in das Benutzerverzeichnis gehören nun mal einfach keine Programme. Punkt.


jaenicke - So 01.05.11 10:24

Und wenn überhaupt so ein Blödsinn passiert, dann sollten die Programmdateien wenigstens in das Anwendungsdatenverzeichnis [http://www.delphi-library.de/viewtopic.php?p=548600] kopiert werden. Da haben die zwar auch nichts zu suchen, aber zumindest gehören da Daten des Programmes hin.
Die Daten gehören jedenfalls 100%ig da hin.

Aber ich bin der selben Meinung:
Setup heißt es wird das vom Benutzer im Setup eingestellte Zielverzeichnis genutzt, Programmdaten werden ins Anwendungsdatenverzeichnis kopiert.

Eine Zip-Datei heißt eine portable Version, die alles aus dem eigenen Verzeichnis lädt.

Beides zu mischen, ist äußerst unsauber... :roll:

Du kannst natürlich beide Versionen in einer Exe liefern und den Benutzer fragen wo die Einstellungen hin sollen, dafür habe ich hier eine fertige Lösung anzubieten:
http://www.delphi-forum.de/viewtopic.php?t=92348


LittleBen - Mo 02.05.11 20:52

In welchem Ordner die Programmdateien letztendlich liegen ist doch egal. Entscheidend ist doch, dass ein Setup ohne Administratorrechte am Betriebssystem nichts verändern kann und damit dieses auch clean bleibt!!! So macht es Google Chrom doch auch.(Die Daten in das Benutzerprofil schreiben)


Delete - Mo 02.05.11 20:56

Nein, ist es nicht. Aber das habe ich doch schon erklärt. Und wie gesagt, Windows XP hat bei deinem Setup Administratorenrechte angefordert. Und noch mal, warum ein Setup, wenn keine Administratorenrechte benötigt werden sollen? Warum kein Archiv?


LittleBen - Mo 02.05.11 21:32

Ich bin zwar kein Linux freak, doch warum ist Linux eines der sichersten Betriebssysteme? Weil ein normaler Linux-User keine Administratorrechte hat und somit auch keine Setups ausführen kann, die diese Rechte benötigen --> keine Viren!!!

Klar könnte ich alles in ein Archiv packen, doch die meisten Menschen, die nicht sehr viel mit Computern zu tun haben, sind es gewohnt ein Setup auszuführen und die Anwendung danach zu starten. Habe sogar schon die Erfahrung gemacht, dass Leute glaubten, mein Programm sei eine Virus, da ich diesen ein Archiv mit der EXE-Datein und 2 DLLs gegeben habe. Klar, wer DLL-Dateien nicht kennt ist misstrauisch.

Vordert Windows XP bei meinem Setup wirklich Administratorrechte an? Habe dies bei mir eigentlich ausgiebig getestet.


jaenicke - Mo 02.05.11 21:37

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
So macht es Google Chrom doch auch.(Die Daten in das Benutzerprofil schreiben)
Die Daten ja, Chrome selbst liegt bei mir im Programme-Ordner. Es gibt dort nämlich auch einen echten Installer.

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Ich bin zwar kein Linux freak, doch warum ist Linux eines der sichersten Betriebssysteme? Weil ein normaler Linux-User keine Administratorrechte hat und somit auch keine Setups ausführen kann, die diese Rechte benötigen --> keine Viren!!!
Das ist ein Irrtum. Es gibt nur weniger Viren, weil es sich bisher kaum lohnt. Bei Servern hat sich das ja schon geändert. Da habe ich schon so einiges gesehen.

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Vordert Windows XP bei meinem Setup wirklich Administratorrechte an? Habe dies bei mir eigentlich ausgiebig getestet.
Dann bist du vermutlich (wenn diese denn normalerweise angefordert werden) einer von denen, die entweder zu faul sind ordentlich ohne Adminrechte als normaler Benutzer zu arbeiten oder nicht genug Ahnung dafür haben. :nixweiss:
Wenn du als normaler Benutzer unter XP arbeitest, hast du da auch keine Adminrechte. Deine setup-ähnliche Exe habe ich da nicht getestet.

Nebenbei: Alles was z.B. Setup oder Install im Namen hat oder andere Anzeichen eines Setups hat, bekommt von Vista und 7 automatisch Adminrechte angefordert... :roll:

Letztlich ist die Diskussion müßig, es ist alles gesagt. Wenn sich jemand findet, der das Programm so nutzt, bitte, ich sicher nicht. Seine Entscheidung wie er es machen möchte, ist ja niemand gezwungen das Programm zu nutzen. ;-)


LittleBen - Mo 02.05.11 21:44

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Dann bist du einer von denen, die entweder zu faul sind ordentlich ohne Adminrechte als normaler Benutzer zu arbeiten oder nicht genug Ahnung dafür haben. :nixweiss:
Wenn du als normaler Benutzer unter XP arbeitest, hast du da auch keine Adminrechte. Deine setup-ähnliche Exe habe ich da nicht getestet.
Was willst du mir damit sagen? Das war eigentlich die Frage auf Luckies Beitrag:
user profile iconLuckie hat folgendes geschrieben Zum zitierten Posting springen:
Und wie gesagt, Windows XP hat bei deinem Setup Administratorenrechte angefordert.


EDIT: Und das:
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Nebenbei: Alles was z.B. Setup oder Install im Namen hat oder andere Anzeichen eines Setups hat, bekommt von Vista und 7 automatisch Adminrechte angefordert... :roll:
Stimmt nicht! Wir haben hier im Hause 3 Win 7 Rechner. Habe mein Setup sicherheitshalber auf allen Rechner getestet mit Usern die KEINE Administratorrechte haben, und nie wurden rechte verlangt.


jaenicke - Mo 02.05.11 22:00

Grad doch mal getestet: Unter XP kommt die Anforderung von Adminrechten, aber man kann auch ein Konto ohne Adminrechte nehmen. Das Setup läuft durch. Nur unter Windows Vista und 7 gehts nicht ohne.

Was das Programm an sich angeht:
Du weißt schon, dass du mit deiner Oberfläche die Richtlinien und damit die Lizenz für die Ribboncontrols verletzt, oder? :zwinker:
Gut, hier in Europa wird dir da nicht viel passieren können, aber man weiß ja nie.

Funktionieren tut das Programm ja soweit, aber was in diesem Fall die Ribbonoberfläche für einen Sinn hat, ist mir nicht wirklich klar. :nixweiss:


LittleBen - Mo 02.05.11 22:14

Sehr, sehr komisch... :?: :?:

Was sind das eigentlich für Richtlinien und wo sind diese zu lesen? Danke dass du mich darauf aufmerksam machst!
Ach und danke, dass du mein Programm doch noch getestet hast ;)

Würde sagen wir vertragen uns wieder alle und "vergessen" die Diskusion ;)

EDIT: Hast du das Programm mit dem IE runtergeladen? Denn dann sind das keine Anforderungen von Adminrechten sondern einfach nur Warnhinweise, dass diese Datei gefährlich sein könnte.


jaenicke - Mo 02.05.11 22:23

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Sehr, sehr komisch... :?: :?:
Naja, arbeitest du denn mit Adminrechten unter XP oder nicht? Wahrscheinlich hast du einfach den Benutzer belassen, den du standardmäßig bekommen hast. Und der ist eben unter XP leider Administrator.

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Was sind das eigentlich für Richtlinien und wo sind diese zu lesen? Danke dass du mich darauf aufmerksam machst!
Hier gibt es dazu Informationen:
http://msdn.microsoft.com/en-us/office/aa973809
Weiter unten findest du unter "Office UI Evaluation Design Guidelines" diese Richtlinien. Diese sind sehr umfangreich und sollen sicherstellen, dass der Benutzer die Ribbon-Oberflächen in jedem Programm intuitiv immer gleich nutzen kann. Da du das genau nicht machst, ist genau diese Intuitivität nicht der Fall. Ok, das Programm ist so klein, dass da nicht viel zu suchen ist, aber wozu dort die Ribbon Bar? ;-)


LittleBen - Mo 02.05.11 22:29

Danke für den Link. Ich benutze diese Bar eigentlich nur aus optischen Gründen :oops: :gruebel:
Werde mir diese Richtlinien bei Zeiten mal durchlesen.

Warum meinst du, dass man in Deutschland keine Probleme bekommen kann?


jaenicke - Mo 02.05.11 22:37

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Warum meinst du, dass man in Deutschland keine Probleme bekommen kann?
Naja, Softwarepatente gibt es hier nicht. Aber obwohl wenn du vor Gericht am Ende vermutlich Recht bekommst, musst du bis dahin erst einmal finanziell durchhalten, wenn es wirklich eine Klage geben sollte... deshalb würde ich es nicht drauf ankommen lassen. Auch wenn wahrscheinlich nichts passieren wird.

user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
Ich benutze diese Bar eigentlich nur aus optischen Gründen :oops: :gruebel:
Und du meinst das ist bei dir optisch gelungen? ;-)
Schau dir einmal andere Programme an, die diese Controls nutzen. ;-)

Da wirst du niemals einfache Bilder drin finden. Nur Bedienelemente. Außerdem schalten die Ribbon-Tabs niemals Inhalte um. Denn es geht bei dem Konzept ja gerade umgekehrt darum zum Inhalt möglichst übersichtlich viele Bearbeitungsmöglichkeiten zu geben.

Und eben nicht mehrere Seiten zu haben, bei dem einfach alles umgeschaltet wird wie bei einem normalen PageControl über die gesamte Seite.


LittleBen - Fr 06.05.11 18:58

Nochmals danke für den Hinweis. Habe mich über diese Richtlinien informiert. Zum Glück gelten in Europa solche Software-Patente nicht.

Diese Ribbon-Bar ist für mich nur ein optisch viel besseres PageControl. Ich hatte eig. auch nicht vor sie so wie im Office zu nutzen.

Grüße,
Benny


Klabautermann - Fr 20.05.11 12:52

Hi,
user profile iconLittleBen hat folgendes geschrieben Zum zitierten Posting springen:
PS: Diese "Art" (wie Maminator) meine Programme zu benennen habe ich user profile iconKlabautermann zu verdanken.

uii, was ein humoristischer Beitrag doch ausmachen kann ;). Aber ich finde dann brauchst du noch das passende Profilbild:

user defined image
Der gute Mann [http://phineasundferb.wikia.com/wiki/Heinz_Doofenschmirtz] baut auch immer "inatoren" :lol:.

Gruß
Klabautermann

PS: Zum Thema Setup Prgramm muss ich user profile iconLuckie völlig recht geben.


LittleBen - Sa 21.05.11 15:06

user profile iconKlabautermann hat folgendes geschrieben Zum zitierten Posting springen:

user defined image
Ouuu, vielen Dank :) Werd ich sofort als Profilbild einstellen ;)

Dann wollte ich euch noch fragen, ob ihr Ideen habt, was ich für ein Logo auf den Homescreen machen könnte.

Danke & Grüße

Benny


storestore - Sa 20.08.11 20:31

Zwei sich überkreuzende bestecke. Neee, spaß [Das mit dem besteck (Rechtschreib- Witz)]

Also, wie wäre es mit einer Gabel die in einem Steak steckt. Oder ein messer auf einem Teller. Das Messer kann sich auch mit dem Messer kreuzen .,.