DateControl in 64 bit application
Posted: 7 Dec 2017 18:24
The dateControl works when compiling to 32 bit Exe, but dateControl does NOT work when compiling to 64 bit Exe.
I can initialize display of control and set a date value with either platform, but dateControl events are not captured by the 64 bit application and the user-selected date cannot in the control cannot be retrieved.
I created a tiny test project which builds either a 32- or 64-bit EXE. The dateControl was initialized to 01/01/1900 for testing purposes. It has the following code:
The 32-bit application displays this:
Control initialized to: 01/01/1900
Compiler version: 7500
Platform bits: 32 Windows 32bits
Date formatted: 12/02/2017
Date as integers: 12/02/2017
and the 64-bit application displays this:
Control initialized to: 01/01/1900
Compiler version: 7500
Platform bits: 64 Windows 64bits
Date formatted: 01/01/1900
Date as integers: 01/01/1900
Comments in other forums suggest that this may be a Windows issue and not a VP quirk. For the time being, I am using my own less-elegant control for 64 bit apps.
Harrison Pratt
I can initialize display of control and set a date value with either platform, but dateControl events are not captured by the 64 bit application and the user-selected date cannot in the control cannot be retrieved.
I created a tiny test project which builds either a 32- or 64-bit EXE. The dateControl was initialized to 01/01/1900 for testing purposes. It has the following code:
Code: Select all
stdio::write("\nCompiler version: ", compiler_version ),
stdio::write("\nPlatform bits: ", platform_bits, " ", platform_name ),
stdio::write("\nDate formatted: ", dateControl_ctl:formatDate( "MM/dd/yyyy" ) ),
dateControl_ctl:getdate( Y,M,D ),
stdio::writef("\nDate as integers: %02/%02/%4", M,D,Y ).
The 32-bit application displays this:
Control initialized to: 01/01/1900
Compiler version: 7500
Platform bits: 32 Windows 32bits
Date formatted: 12/02/2017
Date as integers: 12/02/2017
and the 64-bit application displays this:
Control initialized to: 01/01/1900
Compiler version: 7500
Platform bits: 64 Windows 64bits
Date formatted: 01/01/1900
Date as integers: 01/01/1900
Comments in other forums suggest that this may be a Windows issue and not a VP quirk. For the time being, I am using my own less-elegant control for 64 bit apps.
Harrison Pratt