Home > Back-end >  Questions about installing third-party controls SuperObject!
Questions about installing third-party controls SuperObject!

Time:11-08


(tools: delphi2010, Windows 7 ultimate, control file is on the Internet to download four units: superdate. Pas, superobject, pas, supertimezone. Pas,
Superxmlparser. Pas)

I want to install the SuperObject class - this class, but in the compilation unit file supertimezone. Pas times wrong "(DCC) Error] supertimezone. Pas (95) : E2003 Undeclared identifier: 'PDynamicTimeZoneInformation" as shown in the figure below, please tell you? Thank you

CodePudding user response:

D2010 version may be a bit low, WinApi. Windows unit did not update to Windows 7 version of the SDK,

CodePudding user response:

PDynamicTimeZoneInformation appear in the code, can't identify,
1, if the class is self declaration, the need to reference another declaration unit file,
2, if it is a Delphi declared within class, need higher version of D, to identify it,

CodePudding user response:

Literally, "the Pacific time zone information", should be the operating system class,

CodePudding user response:

Dynamic daylight savings time information "or"

CodePudding user response:

reference 4 floor lyhoo163 response:
or "dynamic daylight savings time information"
can you send a suitable delphi2010 SuperObject resource file to me! Be very grateful! My email: [email protected]

CodePudding user response:

D7 version should be able to find a support

CodePudding user response:

D2010 is the 2009-08-15 release of Windows 7 is released the 2009-07-22, D2010 Windows unit before updating to Windows 7 version of the SDK, you update to XE or the WinApi of XE. The Windows. The pas copying to 2010 should be able to use, if you insist on using 2010, can increase the following definition:
PDynamicTimeZoneInformation=^ TDynamicTimeZoneInformation;
_TIME_DYNAMIC_ZONE_INFORMATION=record
Bias: Longint;
StandardName: array [0.. 31] of WCHAR;
StandardDate: TSystemTime;
StandardBias: Longint;
DaylightName: array [0.. 31] of WCHAR;
DaylightDate: TSystemTime;
DaylightBias: Longint;
TimeZoneKeyName: array [0.. 127] WCHAR,
DynamicDaylightTimeDisabled: Boolean;
end;

CodePudding user response:

TDynamicTimeZoneInformation=_TIME_DYNAMIC_ZONE_INFORMATION;

CodePudding user response:

Everyone a great god speaks right upstairs, version is too low, can't use,
Add code, such as according to the 7th floor method can solve the problem of "PDynamicTimeZoneInformation" does not recognize, but there will be new problems appear,
Such as "(DCC) Error] supertimezone pas (153) : E2003 Undeclared identifier: 'GetDynamicTimeZoneInformation";
Above all, or hope to get suitable for delphi2010 SuperObject resource files! Be very grateful! My email: [email protected],

CodePudding user response:

Estimate is not suitable for delphi2010 version, in fact you have Delphi XE Windows. The relevant part of the pas copy/paste to your program, at best, just a few minutes,

CodePudding user response:

Modify supertimezone pas file add the following code, recompile

(* EXtended version - DST Aware *)

//new start

{$IF RTLVersion & lt;=21.00}//Delphi 2010 does not have these definitions.
Type
PDynamicTimeZoneInformation=^ TDynamicTimeZoneInformation;
_TIME_DYNAMIC_ZONE_INFORMATION=record
Bias: Longint;
StandardName: array [0.. 31] of WCHAR;
StandardDate: TSystemTime;
StandardBias: Longint;
DaylightName: array [0.. 31] of WCHAR;
DaylightDate: TSystemTime;
DaylightBias: Longint;
TimeZoneKeyName: array [0.. 127] WCHAR,
DynamicDaylightTimeDisabled: Boolean;
The end;
{$EXTERNALSYM _TIME_DYNAMIC_ZONE_INFORMATION}
TDynamicTimeZoneInformation=_TIME_DYNAMIC_ZONE_INFORMATION;
TIME_DYNAMIC_ZONE_INFORMATION=_TIME_DYNAMIC_ZONE_INFORMATION;
{$EXTERNALSYM _TIME_DYNAMIC_ZONE_INFORMATION}

Function GetDynamicTimeZoneInformation (var pTimeZoneInformation: TDynamicTimeZoneInformation) : dwords.
Stdcall; External kernel32 name 'GetDynamicTimeZoneInformation of;
{$IFEND}

//end of the new

{Windows 7 +}
  • Related