关于vista 下的编程问题,望各位高手关注下,附原代码。也请袁大哥进来帮忙看下,Thanks

kingstar568 kingstar568 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
是这样的,我们想给一种新得文件格式给予缩略图,原先在vista之前一般用IExtractImage 来实现,在vista下出现新得结构IThumbnailProvider. 我们想用新接口来实现这一功能,但是程序中的Initialize始终不被调用。想问下
1,是否与原来的IExtractImage实现方式有所不同?
2,注册表修改的信息是否与原来的有所不同?
代码如下:

///////////////////////////////////NewThumbnail.cpp////////////////////////////////////
HRESULT CCNewThumbnail::Initialize( IStream *pStream,DWORD grfMode)
{
//这个函数没有被调用。导致GetThumbnail没被初始化。
return S_OK;
}
HRESULT CCNewThumbnail::GetThumbnail(UINT cx,HBITMAP *phbmp,WTS_ALPHATYPE *pdwAlpha)
{

*phbmp = ::LoadBitmap(NULL,MAKEINTRESOURCE(IDB_BITMAP));
*pdwAlpha = WTSAT_ARGB;

return S_OK;
}
HRESULT CCNewThumbnail::SetFocus(VOID)
{
return S_OK;
}
HRESULT CCNewThumbnail::QueryFocus(HWND *phwnd)
{
return S_OK;
}
HRESULT CCNewThumbnail::SetRect(const RECT *prc)
{
return S_OK;
}
HRESULT CCNewThumbnail::DoPreview()
{
return S_OK;
}
HRESULT CCNewThumbnail::Unload()
{
return S_OK;
}
HRESULT CCNewThumbnail::SetWindow(HWND hwnd,const RECT *prc)
{
return S_OK;
}
////////////////////////NewThumbnail.rgs////////////////////////////
HKCR
{
NewThumbnailTest.CNewThumbnail.1 = s 'CNewThumbnail Class'
{
CLSID = s '{F39D9D33-85D5-4AAA-9486-347B51B3792D}'
}
NewThumbnailTest.CNewThumbnail = s 'CNewThumbnail Class'
{
CLSID = s '{F39D9D33-85D5-4AAA-9486-347B51B3792D}'
CurVer = s 'NewThumbnailTest.CNewThumbnail.1'
}
NoRemove CLSID
{
ForceRemove {F39D9D33-85D5-4AAA-9486-347B51B3792D} = s 'CNewThumbnail Class'
{
ProgID = s 'NewThumbnailTest.CNewThumbnail.1'
VersionIndependentProgID = s 'NewThumbnailTest.CNewThumbnail'
ForceRemove 'Programmable'
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Apartment'
}
val AppID = s '%APPID%'
'TypeLib' = s '{63B30B71-B44B-4265-B20F-7872A5F1D148}'
}
}
NoRemove .mm
{
PersistentHandler = s '{98DE59A0-D175-11CD-A7BD-00006B827D94}'

shellex
{
{8895b1c6-b41f-4c1c-a562-0d564250836f} = s '{F39D9D33-85D5-4AAA-9486-347B51B3792D}'
}
}
}
////////////////////////////////////////////////////////////////////////////////
问的地方不是很精确,往斑竹高抬贵手。只是这个问题比较急,跟microsoft联系也是象踢球一样踢来踢去的。有资料的提供点资料。
谢谢!
...全文

相关推荐

基于云闪付数字藏品小程序的harmonyOS TypeScript设计源码

该项目是针对云闪付“我的”页面中的数字藏品小程序,基于HarmonyOS平台开发的TypeScript源码。项目文件共计37个,涵盖11个JSON5配置文件、8个JSON配置文件、7个ETS脚本文件、4个PNG图片文件、2个Git忽略文件、2个Markdown文档、2个TypeScript源文件、1个文本文件。该小程序旨在通过HarmonyOS技术,实现数字藏品的展示和管理功能。

froginwe11

2026唯美新版星域社区开源 三端APP源码+详细教程

新版星域社区完善了用户私聊转账、商城购买、类似于闲鱼一样的功能,可以在星域社区买卖,完美的解决了以往社区没有购买等问题!超级好看又实用的社区 新版星域社区全端支持Ios、APP、H5,三端通用,带详细搭建教程。

破碎的天堂鸟

基于恒阻抗负荷模型与母线三相短路扰动条件下三机九节点系统多频段电力系统稳定器暂态稳定性能评估(Simulink仿真实现)

内容概要:本文系统阐述了一套基于优先级规划与Petri网融合的多机器人路径规划(MAPF)MATLAB代码库,该框架将求解过程划分为几何解析、拓扑构建、调度优化与可视化呈现四个层次,实现了从地图解析、四邻域拓扑与Petri网建模,到基于优先级启发式的路径搜索、时间同步与冲突消解,再到动画与视频输出的完整闭环。其核心创新在于采用Petri网将“多机器人无冲突”这一动态时间约束转化为“每库所至多一标记”的静态容量约束,从而支持整数规划求解;并通过动态边权膨胀机制避免因硬封锁导致的虚假不可解问题,结合节点预留历史与几何惩罚驱动的局部同步策略,显著提升了冲突查询效率与调度性能。框架还支持双坐标系统与全流程可视化,便于算法行为分析与结果验证。; 适合人群:具备一定编程基础和机器人路径规划基础知识的研究生、科研人员及工程技术人员,尤其适合从事仓储物流、自动驾驶、无人机编队等多智能体系统研究的专业人士。; 使用场景及目标:① 在大规模多机器人系统中快速生成无冲突路径,适用于自动化仓库调度等工业场景;② 作为教学与研究工具,深入理解MAPF中的优先级规划、Petri网建模、冲突消解机制及其数学本质;③ 支持算法复现与扩展,可用于对比不同启发式策略、同步算法与规划框架的性能差异。; 阅读建议:建议读者按照文中组织结构顺序阅读,重点关注各模块之间的接口设计与信息传递机制,结合提供的代码实例进行调试与运行,深入理解动态边权膨胀、Petri网容量约束转化、节点预留历史与几何惩罚驱动同步等关键技术的设计意图与实现细节。

欢多天天写代码

机械三维3D设计图-打铁扣自动机.zip

机械三维3D设计图-打铁扣自动机.zip

ZL4120505

机械三维3D设计图-光伏铝板自动打标码垛线step.zip

机械三维3D设计图-光伏铝板自动打标码垛线step.zip

ZL4120505
评论 51
收藏 已收藏
分享
返回顶部
kingstar568
community_281 706 成员 253,687 内容