question

RamseemA-7362 avatar image
0 Votes"
RamseemA-7362 asked RLWA32-6355 commented

VS2017 Windows Side by side feature is not working for Comctl32.dll

We have Used Windows Common control (ComCtl32.dll) version 5 in most of the modules(DLL and EXE).
Now Some modules(DLL) requires the feature of Windows Common control version 6. We performed a feasibility using Windows Side by side feature to load both version 5 and version 6 in different DLLs of same application. All binaries are build using VS2010 and works fine in Windows 7 and Windows 10 OS. But Now we use VS2017 for build our binaries and seems that the feature is not working.

Since it is big system maintained by different team we can't able to switch the entire application to Common control version version 6. We also try to use CCM_SETVERSION message but it is also failed.

Please help me to solve the issue



windows-apic++
· 7
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

@RamseemA-7362

As far as I'm concerned, multiple versions of common controls can coexist in the same process. I suggest you could try to make sure you have enabled Visual Styles.


0 Votes 0 ·

Can you share with us a minimum verifiable sample that reliably reproduces the problem that we can build and test with our own copies of VS 2017?

0 Votes 0 ·

We have used manifest for common controls of version 6 in our DLL and the Application use manifest for ComCtl32.dll of version 5, it is working for binaries build using VS2010. But it is not working for the binaries build in VS2017. Is there any additional step needed in VS2017 projects?

Sample code share @ CPP


0 Votes 0 ·

I built the sample project with VS2017 Version 15.9.36 on Win7. A 32-bit build showed that both versions of Comctl32.dll were loaded into the process. See the following image which shows the loaded modules -
99870-win7comctl32.png


0 Votes 0 ·
win7comctl32.png (54.7 KiB)
Show more comments

1 Answer

RLWA32-6355 avatar image
0 Votes"
RLWA32-6355 answered RLWA32-6355 commented

At this point I believe that MFC versions after the one included in VS2010 fail to manage activation contexts contrary to the published documentation (e.g., AFX_MANAGE_STATE, support-for-activation-contexts-in-the-mfc-module-state). The docs also refer to functions and headers that do not exist in the VS2017 and VS2019 supplied versions of MFC such as AfxSetAmbientActCtx and afxcomctl32.h

Also, take a look at vs2015-mfc140dll-deactivates-my-activation-context-due-to-isolation-aware-how-to-fix. I forgot about this thread -- the activation context problem has existed for quite a while.

I suggest you open an issue with Developer Community and provide the minimum sample that you have already created. If you do open an issue please post back with the link so we can upvote it.


· 2
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

Once again, thanks a lot for your reply.

I have posted this issue in the Microsoft developer community. And the link is VS2017 Windows Side by side feature is not working for Comctl32.dll


0 Votes 0 ·

You're welcome, and thanks for posting the developer community link. I upvoted the issue.

0 Votes 0 ·