今天论坛中遇到的两则问题说明(COM库的初始化问题以及托盘图标弹出菜单不消失问题)

本文讨论了在VC6和VS2012中使用SHBrowseForFolder时,即使不显式初始化COM库也能正常工作的原因,这得益于MFC框架的自动初始化。同时,针对托盘图标弹出菜单不消失的问题,解释了原因并提供了设置前景窗口的解决方案。强调了MSDN作为权威参考资料的重要性,通过实例说明了详细阅读MSDN可以帮助解决编程中遇到的难题。
摘要由CSDN通过智能技术生成

1、COM组建初始化问题

       问题:MSDN中说到,要使用SHBrowseForFolder必须先用CoInitialize 初始化COM库。处理完后,用CoUninitialize关闭com库。但我用vc6和vs2012试过SHBrowseForFolder,不用初始化COM库,都没有问题,这是为啥? 

      原因说明:其实LZ估计创建的是MFC工程,创建工程时,MFC框架会自动添加初始化COM库的代码,即在CXXXXXXApp::InitInstance()中添加了对AfxOleInit调用,AfxOleInit内部进行了COM库的初始化,且看MSDN对AfxOleInit的说明:

Call this function to initialize the OLE support for an MFC application. When this function is called, the following actions occur:

  • Initializes the COM library on the current apartment of the calling application. For more information, see OleInitialize.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dvlinker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值