Autor Beitrag
Azzidodabass
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 32



BeitragVerfasst: Di 02.09.08 20:02 
Hallo an alle,

habe eine kleines Programm geschrieben, und würde jetzt gerne mal folgende Funktion einbauen:

Beim ersten Start des Programms wird nicht das Hauptformular geladen sondern ein formular mit Lizenzbedingungen o.ä.
, die erstg gelesen werden müssen, bevor sich das Hauptfenster öffnet.

Beim erneuten Start sollte das natürlich nicht mehr zu sehen sein.

Aufwendig, oder???
Jemand ne Idee???


Moderiert von user profile iconChristian S.: Topic aus C# - Die Sprache verschoben am Di 02.09.2008 um 20:09
Skiller-1988
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 100

Win XP | Debian | Ubuntu
C# | PHP | VB.NET
BeitragVerfasst: Mi 03.09.08 07:19 
Sorry das ich hier mein Senf dazugeben muss, aber auch wenn es sicher eine der dümmsten Ideen ist funktionieren könnte es.
Also meine Überlegungen wären zuerst das sich das Programm in irgendeiner weise merken muss ob es schon einmalaufgerufen wurde, das könnte man ja in einer Variablen speichern und diese beim nächsten Neustart des Programms abfragen. Damit sich die variable auch speichert würde mir dazu nur das Thema Serialisierung einfallen.
Meine Idee wäre also bei jedem Start eine Variable abzufragen die (falls das Programm bereits schon einmal gelaufen ist) serialisiert wurde und somit sich merken kann ob das Programm bereits einmal das Fenster mit Lizenzbedingungen angezeigt hat.

Bitte nicht gleich meine Idee zwecks Performance in der Luft zerfetzen ist halt nur ne Idee.

Es ist besser wenn du das Thema deines Threads nochmal änderst weil es eigentlich nicht viel über dein Problem aussagt.

_________________
~ Wer Rechtschreibfehler findet darf sie behalten ~
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Mi 03.09.08 09:07 
Mach doch einfach im Anwendungsdatenordner einen Unterordner, wo du die Einstellungen deines Programms auch speicherst, und dort überprüfst u einfach, ob (meinetwegen) eine Datei existiert oder, wenn du so und so Einstellungen zu schreiben hast, einfach einen Einstellungseintrag machst.
Skiller-1988
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 100

Win XP | Debian | Ubuntu
C# | PHP | VB.NET
BeitragVerfasst: Mi 03.09.08 09:44 
user profile iconRegan hat folgendes geschrieben:
Mach doch einfach im Anwendungsdatenordner einen Unterordner, wo du die Einstellungen deines Programms auch speicherst...


Wie macht man sowas? Macht man sowas über Serialisierung oder meinst du hier etwas anderes?

_________________
~ Wer Rechtschreibfehler findet darf sie behalten ~
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Mi 03.09.08 09:53 
Du holst dir einfach den Pfad zum Anwendngsdatenordner (einfach mal googlen). Dann setzt du dort deinen Firmennamen dahinter und dort dann deinen Anwendungsnamen. Danach erstellst du dort ein Datei (z.B. read.lock). und überprüfst bei jedem Start, ob die Datei existiert.
Skiller-1988
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 100

Win XP | Debian | Ubuntu
C# | PHP | VB.NET
BeitragVerfasst: Mi 03.09.08 10:04 
Gut jetzt verstehe ich was du meinst. Ist das auch in der Praxis also bei kommerziellen Softwareprodukten der fall, also ist das in solch einen Problem die praktischste Lösung?

_________________
~ Wer Rechtschreibfehler findet darf sie behalten ~
Azzidodabass Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 32



BeitragVerfasst: Mi 03.09.08 10:21 
Das klingt doch alles sehr vielversprechend.

Wofür benötige ich die .lock datei, geht das nciht auch mit einer simplen text datei???
Ich hoffe ich disqualifiziere mich jetzt nicht mit der fragestellung:-)
Skiller-1988
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 100

Win XP | Debian | Ubuntu
C# | PHP | VB.NET
BeitragVerfasst: Mi 03.09.08 10:45 
Eigentlich nicht kannst ja auch so überprüfen ob die Datei (auch wenns eine .txt ist) vorhanden ist.
Allerdings ist in diesem Fall eine eine read.lock - Dati empfehlenswerter.

Infos unter: de.wikipedia.org/wiki/Lock

_________________
~ Wer Rechtschreibfehler findet darf sie behalten ~
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Mi 03.09.08 11:28 
Ich will euren Gedankengang nicht stören ;), aber im Framework gibts dafür wunderbare vorgefertigte Sachen wie typisierte Settings:
  1. In Properties\Setttings.settings eine neue Bool-Eigenschaft "HasReadEula" anlegen
  2. In Program.cs
    ausblenden C#-Quelltext
    1:
    2:
    3:
    4:
    5:
    6:
    7:
    var settings = new Properties.Settings();
    if (!settings.HasReadEula) {
      new EulaForm().ShowDialog();
      settings.HasReadEula = true;
      settings.Save();
    }
    Application.Run(...

_________________
>λ=