wince 设置系统分辨率

shen8686 2011-01-28 10:49:10
设备使用HDMI播放高清,外接显示器的分辨率是1920*1080,而wince默认的系统分辨率是1024*768,因为要做全屏,所以图片缩放显示,非常难看。
因为外接显示器已经固定(宽高比已经确定,分辨率大小可以调整),所以需要调整wince的系统分辨率。
我使用ChangeDisplaySettingsEx修改分辨率,代码如下:
DWORD dwWidth, dwHeight;
DEVMODE dm;

memset((char*)&dm, 0, sizeof(DEVMODE));
dm.dmSize = sizeof(DEVMODE);
dm.dmPelsWidth = dwWidth;//1920
dm.dmPelsHeight = dwHeight;//1080
dm.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT;
if (DISP_CHANGE_SUCCESSFUL == ChangeDisplaySettingsEx(NULL, &dm, NULL, 0, NULL))
{
CenterWindow();
}
但分辨率没有任何改变。

请问:
1.wince的分辨率是否可以修改为宽屏(外接显示器),wince的分辨率修改有什么限制
2.以上代码是否存在问题
3.在应用层修改分辨率有什么方法。
...全文
704 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhdi1986 2011-02-10
  • 打赏
  • 举报
回复
你的显卡驱动是使用framebuffer的吗?如果是,只需要在启动时设置好分辨率就可以了。
fqayst 2011-02-10
  • 打赏
  • 举报
回复
wince显示驱动默认只支持一种分辨率,看来你的系统默认只支持1024*768。要在Wince应用层利用ChangeDisplaySettingsEx修改分辨率,那么你的显示驱动需要修改以支持多种分辨率。HDMI支持1920*1080,那么wince输出显示也应该是1920*1080,把wince的默认分辨率改为1920*1080就行了,直接更改LCD的长宽宏变量即可。还有就是查看HDMI驱动,一般HDMI驱动支持多种分辨率的输出,看下有没有支持1024*768分辨率的,有的话更改下HDMI输出分辨率也可以的。
91program 2011-02-09
  • 打赏
  • 举报
回复
这个宽度和高度不能这样随意调整的。

建议LZ将显示区域设置小一点
vieri32_inter 2011-02-09
  • 打赏
  • 举报
回复
这个是因为你的显卡驱动不支持这个分辨率吧?
shen8686 2011-01-29
  • 打赏
  • 举报
回复
ChangeDisplaySettingsEx 返回DISP_CHANGE_BADMODE
是不是因为系统不支持ChangeDisplaySettingsEx改变分辨率的功能导致的。。

19,504

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧