FileTimesPropertySheet

Apr 25, 2013 at 1:49 PM
Hi,
I try to test the FileTimesPropertySheet on Windows 7 (86) and it doesn't work there.
With debugging It throws a Exception on
NativeBridge
public IntPtr GetProxyHostTemplate()
    {
        //  Get the proc address.
        var procAddress = Kernel32.GetProcAddress(libraryHandle, "GetProxyHostTemplate");
try
        {
            var proc = (GetProxyHostTemplateDelegate)Marshal.GetDelegateForFunctionPointer(
                procAddress, typeof(GetProxyHostTemplateDelegate));
            return proc();
        }
..

because the procAddress is null
so the calling function
public void CreatePropertyPageHandle(NativeBridge.NativeBridge nativeBridge)
..
psp.pTemplate = nativeBridge.GetProxyHostTemplate();
is null

I tested this with Servicemanager -> Open Shell Dialog > Properties of a File
the log Information says on the end
FileTimesPropertySheet:Create Page Proxi

FileTimesPropertySheet Adding Pages (Done)

but I see no Information in the Property Dialog

regards
Robert
Coordinator
Apr 25, 2013 at 1:57 PM
When debugging what is the value of libraryHandle? I will try to set up a W7 x86 environment to test this on ASAP
Coordinator
Apr 25, 2013 at 1:58 PM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Apr 25, 2013 at 2:17 PM
libraryHandle 0x0f350000
Coordinator
Apr 25, 2013 at 2:41 PM
OK, there are two C++ libraries embedded in SharpShell that are loaded as needed into the temp directory, to allow x86/x64 access to certain Windows SDK features, it would seem that there's something wrong with the x86 one- I've raised a task for this and will look into it..
Apr 25, 2013 at 4:54 PM

I tested the same on a Windows 8 (64) Bit without any Problems.

Coordinator
Apr 26, 2013 at 9:38 AM
Thanks for that - well it certainly seems like it must be an x86 issue, I'll set up a VM with Windows 7 x86 installed and try and get it sorted as soon as possible - the only reason that the code in that area even exists is to make the library work consistently across 32/64 bit apps, so if it's not working then that's a bit of a disaster!