[erledigt] VersionInfo

Zur Vorstellung von Komponenten und Units für Lazarus

[erledigt] VersionInfo

Beitragvon MacWomble » 26. Feb 2017, 11:48 [erledigt] VersionInfo

Hallo,

vielleicht kann mit jemand einen Tipp geben. Ich setze zum Anzeigen der Versioninfos eine Unit ein, welche ich mal irgendwo herunter geladen habe.
(komplette Unit siehe Dateianhang).
Bisher hat das auch problemlos funktioniert. Seit gestern jedoch habe ich das Problem, dass bei

Code: Alles auswählen
function TVersionInfo.GetWidgetSet: string;
begin
  case InterfaceBase.WidgetSet.LCLPlatform of
   lpGtk:    result := WIDGETSET_GTK;
   lpGtk2:   result := WIDGETSET_GTK2;
   lpWin32:  result := WIDGETSET_WIN;
   lpWinCE:  result := WIDGETSET_WINCE;
   lpCarbon: result := WIDGETSET_CARBON;
   lpQT:     result := WIDGETSET_QT;
   lpfpGUI:  result := WIDGETSET_fpGUI;
  else
    result := WIDGETSET_OTHER;
  end;
end;     


die lpGtk etc nicht gefunden werden (Identifier not found)

Was mich verwirrt ist, dass am Programmcode absolut nichts verändert wurde seit ich das letzte mal kompilierte.
Kann es möglicherweise an Kompilereinstellungen liegen?

PS: Zufällig gefunden. Die Quelle war glaube ich viewtopic.php?t=3893

Gruß
Klaus
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von MacWomble am 26. Feb 2017, 23:16, insgesamt 1-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 591
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 19 Cinnamon / CodeTyphon Generation V Plan 6.60 | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon Socke » 26. Feb 2017, 12:35 Re: VersionInfo

Füge die Unit lclplatformdef zur Uses-Klausel (im Implementation-Teil) hinzu.
Der Aufzählungstyp TLCLPlatform wurde am 17.12.2016 in diese Unit verschoben.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
 
Beiträge: 2546
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 8.1/Debian GNU/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon MacWomble » 26. Feb 2017, 13:00 Re: VersionInfo

Danke Socke!

Jetzt findet er die Definition von GetLocaleFormatSettings nicht ...

Was mich wundert, ist dass bisher alles lief. Könnte es sein, dass die kompilierte VersionSupport vorlag und deswegen der Fehler nicht eher aufgetreten ist?

Was ich geändert habe, war die Kompiler-Optionen von Stufe 0 auf Stufe 1 ...
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 591
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 19 Cinnamon / CodeTyphon Generation V Plan 6.60 | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon Soner » 26. Feb 2017, 13:11 Re: VersionInfo

Öffne Lazarus gehe zu Menü:
[Suchen > In Dateiein suchen ..]
Schreibe in das Feld: [Suchtext]
GetLocaleFormatSettings

Klicke bei:[Wo]
Suche in Verzeichnissen

In das Feld [Verzeichnisse]:
..Lazarus\fpc\3.0.0\source\rtl\

[Unterverzeichnissen einbeziehen] Markieren
und [Suchen] - Klicken klicken.
Schon hast du dein Antwort.

Man kann auch LCL, FCL-Verzeichniss suchen.
Es ist sehr gute Funktion ich verwende es für viele Zwecke.
Soner
 
Beiträge: 411
Registriert: 26. Sep 2012, 23:07
Wohnort: Hamburg
OS, Lazarus, FPC: Win7Pro-32Bit, Immer letzte Lazarus Release mit SVN-Fixes | 
CPU-Target: 32Bit
Nach oben

Beitragvon MacWomble » 26. Feb 2017, 13:47 Re: VersionInfo

Danke, das habe ich bereits gemacht.

SysUtils wurde gefunden und war und ist auch in den uses.

Dennoch bekomme ich den Fehler:

versionsupport.pas(206,3) Error: Identifier not found "GetLocaleFormatSettings"

Wie gesagt - vorgestern ging es definitiv noch - es wurde nichts verändert.
Ich habe Codetyphon inzwischen komplett neu installiert und bekomme den Fehler noch immer ...
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 591
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 19 Cinnamon / CodeTyphon Generation V Plan 6.60 | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon Soner » 26. Feb 2017, 13:57 Re: VersionInfo

Ich habe jeztzt die versionsupport.pas-Datei heruntergeladen, es wurde ohne Fehler kompiliert. (Windows-Platform)
Es gibt dort keine GetLocaleFormatSettings-Funktion.
Soner
 
Beiträge: 411
Registriert: 26. Sep 2012, 23:07
Wohnort: Hamburg
OS, Lazarus, FPC: Win7Pro-32Bit, Immer letzte Lazarus Release mit SVN-Fixes | 
CPU-Target: 32Bit
Nach oben

Beitragvon MacWomble » 26. Feb 2017, 14:01 Re: VersionInfo

Doch:
Code: Alles auswählen
 
function TVersionInfo.GetCompilatonTime: string;
var
  fs: TFormatSettings;
  dt: TDateTime;
begin                                       
  GetLocaleFormatSettings(2057, fs);    // HIER
  fs.TimeSeparator := ':';
  fs.DecimalSeparator := '.';
  fs.ShortDateFormat := 'yyyy"/"mm"/"dd';
  fs.LongTimeFormat := 'hh":"nn":"ss';
  fs.DateSeparator := '/';
  dt := StrToDateTime({$I %DATE%} + ' ' + {$I %TIME%}, fs);
  result := FormatDateTime('ddd, dd mmm yyyy hh:nn:ss', dt);
end;                                     
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 591
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 19 Cinnamon / CodeTyphon Generation V Plan 6.60 | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

Beitragvon Soner » 26. Feb 2017, 14:16 Re: VersionInfo

In der datei VersionSupport.pas vom ersten Beitrag hast du es nicht, aber ich habe die Funktion von deinem letzten Beitrag hinzugefügt, es kompiliert fehlerfrei.
Soner
 
Beiträge: 411
Registriert: 26. Sep 2012, 23:07
Wohnort: Hamburg
OS, Lazarus, FPC: Win7Pro-32Bit, Immer letzte Lazarus Release mit SVN-Fixes | 
CPU-Target: 32Bit
Nach oben

Beitragvon marcov » 26. Feb 2017, 15:22 Re: VersionInfo

getlocaleformatsettings ist eine Windows only Funktion. (das erste Argument ist eine Windows Lokale identifier)
marcov
 
Beiträge: 1032
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon MacWomble » 26. Feb 2017, 23:15 Re: VersionInfo

Sorry, vorhin konnte ich im Forum nichts posten, sonst hätte ich das bereits aufgeklärt:

Aus mir nicht verständlichen Gründen hat mein Projekt die VersionSupport.pas aus einem anderen Verzeichnis geladen. Diese Version ist aber fehlerhaft.
Inzwischen geht wieder alles.

Vielen Dank für eure Hilfe und Hinweise
Klaus

@markov
ich habe das irgendwo gefunden und eingesetzt - es funktioniert jedenfalls.

Ich hänge mal die 'richtige' Datei hier an, falls jemand Interesse hat.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.
MacWomble
 
Beiträge: 591
Registriert: 17. Apr 2008, 00:59
Wohnort: Freiburg
OS, Lazarus, FPC: Mint 19 Cinnamon / CodeTyphon Generation V Plan 6.60 | 
CPU-Target: Intel i7 64/32 Bit
Nach oben

• Themenende •

Zurück zu Units/Komponenten



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron
porpoises-institution
accuracy-worried