Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Zeos - Probleme unter XP (https://www.delphipraxis.net/144579-zeos-probleme-unter-xp.html)

doctor-x 11. Dez 2009 10:48

Datenbank: MS-Access / Firebird • Zugriff über: Zeos

Zeos - Probleme unter XP
 
Hallo,

Ich habe ein kleines programm für eine datenübersicht geschrieben, wo ich mit den Zeos auf eine Access-Datenbank zugreife und die daten in einem DBGrid anzeige.
Das funktioniert unter Win7 und WinXP wunderbar, aber sobald
Delphi-Quellcode:
 procedure TMainForm.NMRDBGridCellClick(Column: TColumn);
aufgerufen wird gibt es die Fehlermeldung: Zu wenig Arbeitsspeicher. Dieser fehler tritt aber nur bei XP auf, unter Win7 Läft es einwandfrei.

Ach ja, hatte es vorher mit einer ADOConnection und ADOQuery am laufen, da gab es den fahler nicht!

Hat jemand eine Idee woran das liegt?

Delphi-Quellcode:
procedure TMainForm.NMRDBGridCellClick(Column: TColumn);
var
  FileRun: TCustomFileRun;
  FileName: String;
begin
  if not Assigned(Column.Field) then Exit;
  Clipboard.AsText := Column.Field.AsString;
  FileRun := TCustomFileRun.Create(nil);
  try
    FileRun.Operation := 'open';

//Hier Tritt der fehler auf!!!
    FileName := NMRZReadOnlyQuery.Fields[3].AsString;
    // FileName := NMRZReadOnlyQuery.Fields.FieldByNumber(Column.Field.FieldNo + 2).AsString;

    Delete(FileName, 1, 1);
    Delete(FileName, Length(FileName), 1);
    FileRun.FileName := FileName;
    SucheEdit.Text := FileName;
    FileRun.Execute;
  finally
    FileRun.Free;
  end;
end;

doctor-x 11. Dez 2009 11:57

Re: Zeos - Probleme unter XP
 
Habe grade durch einen zufall rausgefunden das es Wohl daran liegt das das Feld in der Query, auf das ich zugreife, ein Hyperlink Feld ist.
Beim anzeigen des Hyperlink Feldes in einem DBGrid geht bei mir kurzzeitig die Prozessorlast auf fast 100% und es werden ca. 500MB RAM Reserviert (Bei 4 Datensätzen).
Bei einem Textfeld ist das nicht so, aber ich müste es mit dem Hyperlink-Feldern machen, da ich die DB nicht so ohne weiteres verändern Darf / Kann.

doctor-x 11. Dez 2009 21:28

Re: Zeos - Probleme unter XP
 
Hat Keiner eine Idee wie ich das umgehen kann oder das Problem selbst lösen kann?
Ist die Fragestellung unklar, weiß keiner weinw antwort, oder is das sowas von für deppen das es nicht ernst genommen wird?
Selbstgespräche find ich nähmlich doof :(

fatalerror 11. Dez 2009 22:37

Re: Zeos - Probleme unter XP
 
Hast du schon versucht den Code aufs Minimum zu reduzieren um den Fehler korrekt einzugrenzen?

Delphi-Quellcode:
  showmessage(zquery.fieldbyname('FeldX').AsString);

doctor-x 11. Dez 2009 22:57

Re: Zeos - Probleme unter XP
 
Hab es sschon auf:
Delphi-Quellcode:
FileName := NMRZReadOnlyQuery.FieldByName('Spektrum').AsString;
reduziert, aber der effekt ist 0.
Unter XP bekomme ich immer die fehlermeldung zuwenig arbeitsspeicher (der XP rechner hat auch nur 512MB, aber das sollte ja reichen).
Unter Win7 (Rechner hat 4GB Ram) steigt die rechenleistung wenn das event auslöst und es werden kurtzzeitig bis zu 700MB Ram zugewiesen.

Bin leider ratlos... Leuchtet mir alles nicht so ganz ein. :gruebel:

hoika 12. Dez 2009 07:19

Re: Zeos - Probleme unter XP
 
Hallo,

nimm halt wieder ADO.
Ist bei Access eh die bessere Wahl.


Heiko

Alfredo 14. Dez 2009 10:23

Re: Zeos - Probleme unter XP
 
Zitat:

der XP rechner hat auch nur 512MB, aber das sollte ja reichen).
Das reicht gerade für das Betriebssystem. :roll:

Am besten auch noch die Festplatte nicht partitioniert oder
die Auslagerungsdatei auf der Systempartition
und auf ein Minimum eingestellt?

Access > 2002?

Wenn man 2 Problemkandidaten(Zeos, Access) verwendet, hat man
zwangsläufig immer mal wieder ein Problem. Beide werden von
mir bewusst nicht mehr eingesetzt. Man spart sich eine Menge
an Frust.

Gruß
Alfred

Bernhard Geyer 14. Dez 2009 10:30

Re: Zeos - Probleme unter XP
 
Zitat:

Zitat von Alfredo
Zitat:

der XP rechner hat auch nur 512MB, aber das sollte ja reichen).
Das reicht gerade für das Betriebssystem. :roll:

Sollte dann kein Problem sein wenn die Auslagerungsdatei groß genug ist (sein kann). Dann wird es zwar höllisch langsam aber es sollte gehen.
(Hab gerade meinen XP-Rechner wieder auf 1 GB gebracht (Defekter RAM-Riegel). Man merkt schon einiges wenn man mehr als Notepad u. Wordpas als Hauptanwendung verwendet.

doctor-x 14. Dez 2009 17:14

Re: Zeos - Probleme unter XP
 
Hi,
hat etwas gedauert, aber jetzt komm ich wieder zum schreiben... :stupid:

hoika:
Davon wollte ich gerne weg, da ich mir den weg zu Firebird und / oder MySQL offen halten wollte.

Alfredo:
1. Habe das gleiche problem auf einem Labtop mit 2GB Ram unter XP. Daran soll es wohl nicht liegen :?
2. Ich benutze Access 2002 SP1.
3. Hast du denn ne günstige oder gratis alternative zu den Zeos wenn du DB-Platformen unabhängig entwickeln möchtest? (Mein Buget ist nämlich nicht so dolle)

Bernhard Geyer:
Das halte ich auch für kein problem, darauf hab ich schon anspruchsvolleres am laufen gehabt :-D Auf dem Rechner Läuft ja auch nur XP, Firewall und Vierenscaner. Und das XP is noch fast tau frisch :mrgreen:

mschaefer 14. Dez 2009 21:13

Re: Zeos - Probleme unter XP
 
Kannst Du vielleicht ein Miniprojekt mit Beispieldatenbank( ein zwei Records) anhängen?
Möglicherweise verhalten sich verschiedene ZEOS-Versionen unterschiedlich.

Martin

Alfredo 14. Dez 2009 21:53

Re: Zeos - Probleme unter XP
 
Wenn der Fehler auftritt solltest Du einmal im Taskmanager nachsehen, ob nicht
mehrere Instanzen von Access geöffnet sind, weil eine Instanz nicht richtig
abgeschlossen worden ist.

Wenn die Programme für eigene Zwecke sind ist SQLdirect ein guter Einstieg in
das Thema. Es erfolgt nur beim Start des Programms ein Hinweis.

IBDac von devart: nur für Firebird, ist beim aktuellen Dollarkurs jedoch bezahlbar.
FibPlus: nur für Firebird, ist eine andere Preisklasse.
SQLdirect: kann mehrere Datenbanken.

Bei den SQL-Datenbanken(Firebird, MySQL, Postgres) solltest Du dir im klaren sein,
dass beim Einsatz beim Kunden diverse Probleme auftauchen.

Lizenzen:
- MySQL ist Lizenzpflichtig
- MS langt beim SQLServer richtig hin

Wer wartet die Datenbank vor Ort.
Update des Betriebssystem bringt Freude ohne Ende.

Datensicherung ist ein weites Gebiet.
- Sicherung im laufenden Betrieb erforderlich?

Sind keine relationalen Datenbanken.

Ich würde mich erst einmal nur mit einer Datenbank beschäftigen, da gibt es genügend
zu tun(Firebird CS oder SS; SQL-Syntax; Sortierung; Primarykey)

Gruß
Alfred

doctor-x 20. Dez 2009 11:31

Re: Zeos - Probleme unter XP
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mal ein kleines Testprojekt inklusive DB.

In der DB gibt es Tabelle1 mit der strucktur:
Feld Typ

id Autowert
Text Text
Link Hyperlink

In der App verwende ich die Zeos 6.6.4-stable.

Beim anzeigen vom Hyperlink-Feld Werden es laut Resorcen Monitor kurtzzeitig ~1GB Ram die Reserviert werden :(

mschaefer 20. Dez 2009 20:46

Re: Zeos - Probleme unter XP
 
Habe mir das mal angesehen und mit ZEOS 6.6.4 stable getestet. Das Speicherproblem tritt auch bei mir auf. Dann habe ich nur mal dien anderen Felder id und Text im Select angegeben. Das Lesen war erfoglreich, aber ein Update ist nicht möglich. Innerhalb Zeos habe ich das bisher nicht gefunden. Da die Zeos 7 Version letztlich eine Neuentwicklung ist würde ich in die 6´er Variante keine Zeit investieren. Auf die 7´er muß man aber noch warten.

Da Du keine so ausgefallenen SQL´s hast würde ich das auch mit Ado machenm, wobei letztlich ja nur die Query und die Connection ersetzt werden. Vielleicht kannst Du die Zeos- Komponenten einfach im Projekt lassen und je nach Datenbank die Ado oder die Zeos nehmen. Ein Beispiel hatte ich in der DP schonmal gepostet: Zugriff auf Access via ADO

Grüße // Martin

doctor-x 21. Dez 2009 11:40

Re: Zeos - Probleme unter XP
 
Danke für die Infos und das testen!
Werde es dann auch erstmal mit ado und zeos machen, vieleicht mach ich mir auch einfach 2 datenmodule die ich je nachdem für welche DB es ist einbinde.

Danke noch mal, ein frohes fest und nen guten Rutsch an alle! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz