AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Word to PChar

Ein Thema von lbccaleb · begonnen am 24. Jan 2008 · letzter Beitrag vom 24. Jan 2008
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: Word to PChar

  Alt 24. Jan 2008, 19:10
Wo wird denn TempSystemTime befüllt? Hab ich was übersehen?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Word to PChar

  Alt 24. Jan 2008, 19:12
die hab ich dort als variablen, denn die werden beim ausführen der procedure neu eingelesen (augenblickliche zeit) und dann von dem zeitpunkt an, soll er mir halt 7 tage in der cbbox anzeigen..
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#13

Re: Word to PChar

  Alt 24. Jan 2008, 19:13
@deddy: ich glaub du hast was übersehen. wenn ich mich richtig entsinne erwartet GetLocalTime einen var-parameter.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#14

Re: Word to PChar

  Alt 24. Jan 2008, 19:14
Dito,

Zeile 6:

GetLocalTime(TempSystemTime);
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Word to PChar

  Alt 24. Jan 2008, 19:15
hab mal nen screenshot von der cbbox gemacht:

[edit=SirThornberry]Bild in Anhang gepackt - Mfg, SirThornberry[/edit]
Miniaturansicht angehängter Grafiken
9684f88c_143.jpg  
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: Word to PChar

  Alt 24. Jan 2008, 19:18
OK, eine Zeile nicht gesehen. Geht es nur darum, den Wochentag von einem Datum + x Tage zu ermitteln? Dann schau Dir nochmal meinen (editierten) Beitrag im anderen Thread an.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Word to PChar

  Alt 24. Jan 2008, 19:19
der fehler liegt wie erwartet hier:
ItemInfo[i].DateText := PChar(Format('%.2d:%.2d:%.3d', [TempSystemTime.wDay, TempSystemTime.wMonth, TempSystemTime.wYear])); Grund: Das Ergebnis von Format ist außerhalb der Funktion nicht mehr verfügbar. Das ganze würde dem gleich kommen:
Delphi-Quellcode:
var
  abc: String;
begin
  [...]
  ItemInfo[i].DateText = PChar(abc);
Das Ergebnis liegt also auf dem Stack und nach verlassen der Funktion zeigt zwar der Zeiger noch auf diese Stelle aber sobald etwas neues auf den Stack gepackt wird, wird auch der Wert überschrieben der irgendwann mal dort stand.

Noch besseres Beispiel:
Delphi-Quellcode:
procedure GibZahlAlsString(Zahl: Integer): PChar;
var
  meinString: String;
begin
  meinString := IntToStr(Zahl);
  result = @Zahl[1];
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#18

Re: Word to PChar

  Alt 24. Jan 2008, 19:22
Zitat von SirThornberry:
der fehler liegt wie erwartet hier:
ItemInfo[i].DateText := PChar(Format('%.2d:%.2d:%.3d', [TempSystemTime.wDay, TempSystemTime.wMonth, TempSystemTime.wYear])); Grund: Das Ergebnis von Format ist außerhalb der Funktion nicht mehr verfügbar. Das ganze würde dem gleich kommen:
Delphi-Quellcode:
var
  abc: String;
begin
  [...]
  ItemInfo[i].DateText = PChar(abc);
Das Ergebnis liegt also auf dem Stack und nach verlassen der Funktion zeigt zwar der Zeiger noch auf diese Stelle aber sobald etwas neues auf den Stack gepackt wird, wird auch der Wert überschrieben der irgendwann mal dort stand.
ok und was kann ich zumindest dagegen schon mal tun??
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#19

Re: Word to PChar

  Alt 24. Jan 2008, 19:28
Die Frage kann man am besten beantworten wenn du uns zeigst was ItemInfo ist.
Zur Zeit ist bei dir
ItemInfo[i].DateText ein Pointer (PChar ist nichts anderes). Wenn du also direkt in DateText Daten halten willst solltest du einen anderen Typ wählen. Anderenfalls musst du Speicher reservieren wo du die Daten dann hinpackst und darauf kannst du dann DateText zeigen lassen.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Remko
Remko

Registriert seit: 10. Okt 2006
Ort: 's-Hertogenbosch, Die Niederlande
222 Beiträge
 
RAD-Studio 2010 Arc
 
#20

Re: Word to PChar

  Alt 24. Jan 2008, 19:37
Maybe I don't understand the question right because of my bad German Language knowledge but it seems to me you want to display a systemtime as string? Why not use SystemTimeToDateTime and use format?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es 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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:05 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