Autor Beitrag
gerd8888
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: So 06.04.14 20:33 
Hallo,

ich habe in Delphi 2009 ein Programm geschrieben und es unter Win 7 compiliert.
Es läuft unter allen Win-Versionen.
Das einzige besondere an dem Programm, dass es mit einer stringliste eine 32M Datei oeffnet.
Ferner wird benutzt: der Tmediaplayer und wav Dateien.

Wie ermitteln man jetzt eine angemessene Systemvoraussetzung, die auch wirklich stimmt.


alle Win-Versionen werden unterstützt, kann man doch nach wie vor angeben?


Gerd
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 06.04.14 21:24 
Dass Windows 2000 mindestens erforderlich ist, kann man durchaus hinschreiben, auch wenn das nicht viele betreffen dürfte.
Aber wenn du einmal auf neuere Delphiversionen umsteigst, musst du dann ohnehin z.B. mindestens XP mit SP3 angeben, insofern ist so eine Minimalangabe nicht schlecht.

Zudem würde ich stets die höchste getestete Version mit angeben.
Perlsau
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 06.04.14 21:27 
@gerd8888:

Wenn du mit 32M Datei eine Datei mit der Größe von 32 Megabyte meinst, dürfte das heutzutage kaum noch an irgendwelche Grenzen stoßen.
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Mo 07.04.14 16:51 
Wenn ich folgendes schreibe:

Systemvoraussetzung:

ab Win 2000
1-GHz-Prozessor oder höher mit 32 Bit (x86) [aber nich 64 Bit (x64)]
1 GB RAM (32-Bit) oder mehr
1-2 GB verfügbarer Festplattenspeicher (32-Bit) für das Programm

ist das dann so korrekt?

Gerd
Perlsau
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 07.04.14 17:38 
Kann ich nicht beurteilen, ich kenne deine Anwendung ja nicht. Seltsam ist aber doch, daß dein Programm nicht auch auf einem 64-Bit-Windows laufen kann ...
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Mo 07.04.14 21:17 
Dass das Programm nicht unter Win 64-Bit läuft habe ich jetzt nur vermutet, da ich es doch auf einem 32 Bit Computer compiliert habe.
Läuft das also auch unter 64 Bit ?
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 07.04.14 21:22 
Solange du nicht Assembler nutzt oder irgendetwas Exotisches ja.

1 GHz kann übrigens alles sein, schnarchlangsam oder schön schnell. Das ist schon lange kein echtes Maß mehr... das war bis vor etwa 10 Jahren mal so...
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1448

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Mo 07.04.14 21:23 
Hallo,
user profile icongerd8888 hat folgendes geschrieben Zum zitierten Posting springen:
Läuft das also auch unter 64 Bit ?

Ich weiß ja nicht, was für spezielle Programmiertricks Du nutzt, aber meine Delphi 5(!)-Programme laufen alle absolut problemlos unter Win64.
Dann wird Dein Delphi 2009 das wohl auch "hinbekommen". Testen würde ich es aber schon. Du wirst doch jemanden kennen, der ein 64bit-Windows hat.

Beste Grüße
Mathematiker
Lemmy
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 792
Erhaltene Danke: 49

Windows 7 / 10; CentOS 7; LinuxMint
Delphi 7-XE10.1, VS 2015
BeitragVerfasst: Mo 07.04.14 21:23 
user profile icongerd8888 hat folgendes geschrieben Zum zitierten Posting springen:


Wie ermitteln man jetzt eine angemessene Systemvoraussetzung, die auch wirklich stimmt.


VMWare oder VirtualBox installieren, WIndows drauf und dann kannst Du mit dem zugewiesenen Speicher herumspielen und kannst dann selbst entscheiden, wie viel Speicher mind. vorhanden sein muss um die Software noch bedienen zu können.

Grüße
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Mo 07.04.14 22:34 
Assembler nutze ich nicht. Wenn das delphi 5 unter win-64 läuft, wird es meins auch können. Ausprobieren kann ich es auf einem win-64 allerdings nicht.
Kenne niemanden. (Ich habe auch keinen Freund, der mit Delphi programmiert) Bin immer auf die Hilfe von Internet und Foren angewiesen.
Ich frage mich ob das überhaupt noch zeitgemäß ist eine mind. Systemvoraussetzungsangabe ? Wer arbeitet heute noch mit einem Betriebssymstem, dass älter ist als Win XP.
Ich füge dann zu meinen obigen Angaben (auch win64) hinzu.

Habe das Programm unter freeware hier schon mal vorgestellt:
mega.co.nz/#!KIMkUSy...1w9MXC9ilBHDmzvI4oN0

Gerd
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1448

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Mo 07.04.14 22:59 
Hallo,
user profile icongerd8888 hat folgendes geschrieben Zum zitierten Posting springen:
Habe das Programm unter freeware hier schon mal vorgestellt:
...

Ich grüble seit ein paar Minuten schon und komme nicht dahinter: Was soll denn das Programm können? Wozu braucht man es?
Und es braucht eine 32MB-Stringliste? Und es ist fast 100 MB groß?
Ich verstehe es nicht. :nixweiss:

Wenn ich es (vor einem Download!) wüsste und vor allem, wenn es mir das System nicht verändert, könnte ich es ja unter Win7-64 bit und Win8.1-64 bit testen.
Hat es etwas mit dem Schachprogramm www.entwickler-ecke....p;highlight=gerd8888 zu tun?

Beste Grüße
Mathematiker
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 07.04.14 23:22 
Da ist nichts Besonderes dran, außer dem stark gewöhnungsbedürftigen Design. Deshalb startet das Programm problemlos unter Win 8.1 64-Bit und lässt sich auch problemlos mit XE5 kompilieren.

Falls du Tipps möchtest:

Wie man es bedient, habe ich leider nicht auf die Schnelle herausgefunden, konnte es also nicht direkt testen. Toolbuttons ohne Hint sind übrigens eine gute Idee, zumindest, wenn man gerne raten möchte... :?!?:
Die Hilfe habe ich gefunden, aber gerade keine Zeit mir das groß durchzulesen. Intuitiv wäre besser. ;-) Aber je nachdem was alles möglich ist, ist das natürlich nicht immer ganz einfach, das ist klar.

Was den Quelltext angeht, so ist der nach der automatischen Formatierung ja gut lesbar. Nicht so gut ist, dass du überall innerhalb des eigenen Formulars die globale Variable für das Formular nutzt. Sobald du das Formular zweimal erzeugst, steht da logischerweise nur eine der beiden Instanzen drin. Das heißt du greifst von beiden Formularen aus auf das zu, das in der Variablen steht. Nicht so sinnvoll, oder?
Lösung: Self statt Form1 nutzen, das ist die eigene Klasse, in der du gerade bist, also in dem Fall die aktuelle Formularinstanz, in der du dich befindest.
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Di 08.04.14 12:24 
Mathematiker, der Link stimmt. Nur diesmal kann man es sauber downloaden. Ein zip-file.
Was die grosse Datei angeht: In der datei.txt stehen alle meine Daten drin. Und die ist eben so gross.
Das sind die gesammelten Problemschach-Dateien.
Warum die exe Datei 1,5 MB benoetigt, weiss ich auch nicht.

Jaenicke, das Design habe ich mir ausgedacht. Man kann den Hintergrund und die Bretter sowie Figuren auswählen.
Sollte also so schlecht nicht sein. Die Umsetzung geht vielleicht immer besser.
Das hört sich doch gut an, wenn es sich problemlos unter XE5 compilieren laesst.
Das mit den Buttons, da kann ich ja noch einen Hint einfügen.
Ich habe die globale Variablen machen müssen, weil ich es in einer anderen unit benoetige. Z.B. das Spielfeld muss global sein.
Was Du mit self form1 meintest, weiss ich nicht.

Gerd
WasWeißDennIch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 653
Erhaltene Danke: 160



BeitragVerfasst: Di 08.04.14 15:16 
user profile icongerd8888 hat folgendes geschrieben Zum zitierten Posting springen:
Was Du mit self form1 meintest, weiss ich nicht.

Self bezieht sich immer auf die eigene Instanz, in der die Methode ausgeführt wird. Form1 hingegen bezieht sich immer auf die Instanz, die in der globalen Form1-Variablen hinterlegt ist. Wenn Du also mehrere TForm1-Instanzen erzeugt hast, greifst Du ggf. auf die falsche zu.
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Fr 11.04.14 20:41 
heisst das mit anderen Worten: Wenn ich nur die globalen Variablen benoetige rufe ich die form1 besser nur mit self auf ?
Wenn dem so ist, werde ich das umschreiben. Bisher rufe ich es mit aufgerfuen:
ausblenden Delphi-Quelltext
1:
form1.showmodal					


muss ich die ganze form1 unit
ausblenden Delphi-Quelltext
1:
form1 := Tform1.create(self)					

umgestalten?

Habe mit self noch nicht gearbeitet.
WasWeißDennIch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 653
Erhaltene Danke: 160



BeitragVerfasst: Sa 12.04.14 15:48 
Mal ein Beispiel, kleine Klasse:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
type
  TDummy = class
  private
    FDingens: string;
  public
    constructor Create(ADingens: string);
    procedure ShowDingens;
  end;

var
  (* globale TDummy-Variable, so wie es Delphi mit den Formular-Variablen macht *)
  Dummy1: TDummy;

...

constructor TDummy.Create(ADingens: string);
begin
  inherited Create;
  FDingens := ADingens;
end;

procedure TDummy.ShowDingens;
begin
  (* Wir geben hier das FDingens-Feld der aktuellen Instanz aus *)
  ShowMessage(Self.FDingens);
  (* Zum Vergleich: FDingens-Feld der Instanz aus der globalen Variablen oben *)
  ShowMessage('Dummy1: ' + Dummy1.FDingens);
end;


Nun erstellen wir 2 Instanzen davon:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TSabbelSuelz.MachDingens;
var
  Dummy2: TDummy;
begin
  Dummy2 := nil;
  Dummy1 := TDummy.Create('Dummy1');
  try
    Dummy2 := TDummy.Create('Hallo Welt');
    Dummy1.ShowDingens;
    Dummy2.ShowDingens;
  finally
    Dummy1.Free;
    Dummy2.Free;
  end;
end;

Die Show-Dingens-Methode funktioniert auf diese Weise nur solange, wie in Dummy1 (also der globalen Variablen) auch eine gültige Instanz hinterlegt ist, ansonsten knallt es mit einer AV raus. Darüberhinaus würde man ja in den seltensten Fällen innerhalb einer Methode die Daten einer ganz bestimmten benannten Instanz der entsprechenden Klasse bearbeiten wollen, sondern doch meist die der derjenigen, innerhalb deren Methode man sich gerade befindet.

Die globalen Formular-Variablen erstellt Delphi nur deshalb, weil sie zur automatischen Formularerzeugung gebraucht werden. Soll das entsprechende Formular erst dynamisch zur Laufzeit erstellt werden, kann man diese Variable auch löschen.
gerd8888 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 205
Erhaltene Danke: 3

Win7
Delphi 10.1 Starter (kostenlos) Lazarus
BeitragVerfasst: Sa 12.04.14 16:26 
Danke für das Beispiel.
Ich werde es mir einmal in Ruhe ansehen.
Z.Z. brummt mein Kopf, aber nächste Woche sehe ich mir das an.