• WINCE6.0远程桌面显示修改


    备注:用RDP表示远程桌面

     

    WINCE6.0自带的远程桌面在我们显示屏分辨率为240*320上有一部分内容无法显示出来,所以就需要调整界面让这些内容可见。

     

    1.      PB6.0不支持对远程桌面资源文件的修改,PB5.0可以

    刚开始是用PB6.0修改,但修改后没有生效,后来找到WINCE600PUBLICRDPOAKCETSC eadme文件,其中下面的内容才知道是PB6.0不支持对远程桌面界面资源文件cetscbase.res的修改

    [Modules containing the UI resources]

    ===============================================================================

    The RDP6 UI in Windows Embedded CE comesfrom two modules:

     

    - cetsc.exe   (cetscbase.res)

    - mstscax.dll (tscaxctrl.res)

     

    In general, the OEM can edit the res fileunder

     public dpoaklib\%_TGTCPU%\%wincedebug%\%Locale%

    to adjust the UI. For example, OEM canchange the dialog box template or a string

    in this way.

     

    Any changes to existing strings would needbe localized by the OEM making the

    change.

     

    If the OEM chooses to edit the res filewith Visual Studio, currently only the

    res file saved by Platform Builder 5.0 issupported. The res file saved by

    Platform Builder 6.0 cannot be used.

     

    2.      修改资源文件及编译过程中遇到的问题

    2.1   注释掉打开RDP

    因为WINCE6.0桌面程序一打开就显示沙漏,这点很不合理,找到对应的代码,修改如下:

    ⑴ WINCE600PUBLICRDPOAKUITTSCONMANapplicationproperties.cpp

    注释掉CApplicationPropPage::WriteRegistrySettings()中下面的代码:

    // Put up the wait cursor

             //HCURSORhOldCursor = SetCursor (LoadCursor (NULL, IDC_WAIT));

    // Remove the wait cursor

             //SetCursor(hOldCursor);

    ⑵ WINCE600PUBLICRDPOAKUITTSCONMANconnectionproperties.cpp

    注释掉CConnectionPropPage::WriteRegistrySettings()中下面的代码:

    // Put up the wait cursor

             //HCURSORhOldCursor = SetCursor (LoadCursor (NULL, IDC_WAIT));

     

    // Remove the wait cursor

             //SetCursor(hOldCursor);

     

    ⑶ WINCE600PUBLICRDPOAKUITTSCONWIZ sconwiz.cpp

    注释掉TsConnectionWizard::WriteSettings()中下面的代码:

    // Remove the wait cursor

             //SetCursor(hOldCursor);

     

    2.2   编译出错问题

    把这些文件修改后,到WINCE600PUBLICRDP右键,选择Rebuild and Clean Sysgen,可能会莫名其妙的编译出错,信息如下:

    CEBUILD: Running sysgen -p rdppreproc

    Starting sysgen phase for project (rdp )

    WINCE600uild.err

    其实我们修改的代码没有错误,这就是微软VS2005典型的无须有编译出错,恢复为原来的编译就OK了,然后再替换为编译之后的就可能OK了。

     

    2.3   英文系统和其他系统编译链接的不同

    用PB6.0分别修改RDPOAKLIBARMV4IRETAIL804(中文简体)、0404(中文繁体)、0409(英语)、0419(俄语)的cetscbase.res,编译步骤如下:

    ⑴到WINCE600PUBLICRDP右键,选择Rebuildand Clean Sysgen,在release目录下编译生成新的cetsc.exe文件,对于中文简体、中文繁体和俄语系统来说,调整的界面都生效(只不过是显示英文而已,应为还没有进行最后系统针对当前语言的链接),但是英文的就时钟还是之前显示不全的界面。后来发现在RDPOAKLIBARMV4IRETAIL目录下还有cetscbase.res这个文件,然后也把RDPOAKLIBARMV4IRETAIL409目录下的cetscbase.res文件替换此文件,重新Rebuildand Clean Sysgen就OK了。

     

    为了节省时间,我们从这种办法先调整好之后再进行下面的编译。

    ⑵选择sysgen或是cleansysgen编译整个工程,这时候新的NK中的远程桌面就是对应语言下调整过的界面了。

  • 相关阅读:
    leetcode-----16. 最接近的三数之和
    leetcode-----15. 三数之和
    leetcode-----14. 最长公共前缀
    leetcode-----13. 罗马数字转整数
    leetcode-----12. 整数转罗马数字
    leetcode-----11. 盛最多水的容器
    leetcode-----10. 正则表达式匹配
    leetcode-----9. 回文数
    leetcode-----8. 字符串转换整数 (atoi)
    leetcode-----7. 整数反转
  • 原文地址:https://www.cnblogs.com/LoongEmbedded/p/5298589.html
Copyright © 2020-2023  润新知