none
Remote Display Connection RRS feed

  • Question

  • Hello,

    Would anyone please tell me if I can use Remote Display Connection with my WinCE 6/OMAP3530 BSP device?  I have spent some time on this task without success.  Below are what I did:

    - I checked "Remote Display Application" in the catalog. 

    - I created a link file "cerdisp.lnk" under the MYPLATFORM/FILES that has the following text:  25#"\Windows\cerdisp.exe -c"

    - In Platform.dat, I have the following text: Directory("\Windows\Startup"):-File("CERDisp.lnk","\Windows\CERDisp.lnk")

    - As recommended in http://nicolasbesson.blogspot.com/2007/12/enable-remote-display-application.html, I add to Platform.reg :

    [HKEY_LOCAL_MACHINE\SOFTWARE\CERDISP]
    "Hostname"="ppp_peer"

    - After booting up, my device displays the desktop screen on the external monitor and then immediately displays a message box saying

    "Cannot find 'cerdisp.exe -c' (or one of its components).  Make sure the path and filename are correct and that all the required libraries are availables."

    - My WinXP connects with my device through ActiveSync and I can see the file "cerdisp.exe" under the Windows directory.

    Would you please tell me what I did wrong?  Can I use the Remote Display Connection with ActiveSync?

    Thanks for your help.

    Luan


    Luan Le

    Tuesday, April 24, 2012 12:09 AM

All replies

  • There are few things to try
     
    * First make sure to run the cerhost.exe in the Host PC before launching the CerDisp.exe on the device.Before launching the cerdisp.exe make sure to have active sync connection.
    * If you want to launch the CERDisp.exe automatically during startup don’t use the method which you mentioned of putting the shortcut in the startUp folder,because active sync connection will take some time to connect to the host PC after startup. So you need to wait for active sync connection then only you have to launch the cerdisp.exe,for this you can try the delayed startup using the services in WinCE.Please refer below blog post [3] option(i.e.Using SVCSTART) for delaying the startup of cerdisp.exe after device bootup.
     
     
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SVCStart\1]
        @="cerdisp.exe"
        "Args"="-c"    // command line arguments
        "Delay"=dword:4000   // delay time, in milliseconds, before the app will be started
     
    Tuesday, April 24, 2012 5:27 AM
  • Prabu:

    If I understand correctly, neither of those is the source of the OPs problem.

    The error suggests that one of the following is the problem:

    • cerdisp.exe is missing (but already confirmed to be in the Windows folder)
    • One of the DLLs that cerdisp.exe uses is missing
    • A function that cerdisp.exe uses is not available in the DLLs

    The first thing that I would do is confirm that a clean sysgen was performed after adding cerdisp to the OS.   Without a clean build, any required functions would not have been added.


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Tuesday, April 24, 2012 8:05 AM
    Moderator
  • Yes Bruce,you are right.I read two questions from the post but my reply was more towards second question(Can I use the Remote Display Connection with ActiveSync?).
    Tuesday, April 24, 2012 3:13 PM
  • :-) and I ignored that part of the question because the OP isn't getting that far yet...

    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Tuesday, April 24, 2012 3:59 PM
    Moderator
  • Thanks Prabu and Bruce.  I implemented the advices from both of you but did not succeed.  In platform.reg, I add

    [HKEY_LOCAL_MACHINE\Services\SVCSTART]
    "Context"=dword:0
    "Dll"="svcstart.dll"
    "Order"=dword:99
    "Keep"=dword:1
    "Prefix"="STR"
    "Index"=dword:0

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SVCStart\1]
    @="cerdisp.exe"
    "Args"="-c"
    "Delay"=dword:20000

    In platform.bib, I add

    svcstart.dll            $(_FLATRELEASEDIR)\svcstart.dll                NK  SHK

    I opened NK.bin and saw that svcstart.dll was included.  After downloading the new image, I powered down the target, ran cerhost.exe and then click File->Connect, powered up the target and waited for several minutes.  Nothing happened on my XP.

    Did I miss anything?

    Thanks.


    Luan Le

    Wednesday, April 25, 2012 12:20 AM
  • Interesting, but what changed on your CE (since that is what we are changing)? 

    What happens when you run cerdisp.exe or cerdisp.lnk?  Until you get them to run successfully, running them any other way isn't going to be effective.


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Wednesday, April 25, 2012 3:08 AM
    Moderator
  • Hi Bruce,

    I delayed the execution of cerdisp.exe by SvcStart for 20 seconds so that I could be sure that I got to the desktop and ActiveSync connected first.  After these 2 things happened, nothing else happened.  I did not get an error like before.  How can I verify that cerdisp.exe is actually executed by SvcStart?

    Thanks.


    Luan Le

    Wednesday, April 25, 2012 8:06 AM
  • Bruce's advice is to get cerdisp.exe running when you start it manually.  Only after you get that working should you try to start it via SvcStart. 
    Wednesday, April 25, 2012 1:27 PM
  • Great advice.

    After the ActiveSync connection, I ran cerhost.exe and clicked on File->Connect.  On the target, I clicked on the cmd shortcut to open a Command window.  At the prompt, I enter " cd windows" and then "cerdisp -c".  A quick splash happened on the target but it was too quick for me to read the message.  The "cerdisp -c" command does not return and still nothing happened on my XP.

    Any other idea for me to try?

    Thanks.


    Luan Le

    Wednesday, April 25, 2012 5:07 PM
  • Well that is progress!  I think that means that doing the clean sysgen fixed the problem with running cerdisp.  It has been a while since I have used cerdisp, so I may be asking a silly quesion here, what happens without the -c?

    For that matter, just becuase you ran cerdisp on the device, is that a reason to expect something to happen on XP?  Don't you now need to do something on XP to see something happen?


    Bruce Eitman (eMVP)
    Senior Engineer
    Bruce.Eitman AT Eurotech DOT com
    My BLOG http://geekswithblogs.net/bruceeitman

    Eurotech Inc.
    www.Eurotech.com

    Wednesday, April 25, 2012 8:29 PM
    Moderator
  • -c is "connect". It automatically reads the stored target for the communication and opens the socket. Without -c, you should get a form that allows you to fill-in the IP of the desktop machine for communication.

    Paul T.

    Friday, April 27, 2012 5:44 PM
  • I work exclusively on x86 device and have been using the Remote Display by simply adding the component to the OS design and launch the app with the "-c" parameter (cerdisp -c).

    What are the display resolution and color depth you set for the image?

    If you are using 32-bit color, try setting the color depth to 16-bit.


    Samuel Phung [eMVP] ICOP Technology Inc. http://www.embeddedpc.net

    Wednesday, May 2, 2012 5:13 PM
  • Hi Prabhu,

    In EC7 ,

    - Shall we have to customise the cerdisp and cerhost to work under activesync.

    - Default cerdisp and cerhost work only if KITL is active and not under activesync.

    - If changes have to be implemented where these have to be included and possible customisation for activesync..

    rgds,

    Sharanu

    Monday, September 3, 2012 2:13 PM
  • cerhost/cerdisp work in any IP-based communication scenario where arbitrary TCP/IP ports can be opened. THEY DO NOT REQUIRE KITL.

    They will work just fine over a normal Ethernet connection, via WiFi, via a modem connection (if anyone still knows what a modem is). They may not work over ActiveSync because ActiveSync does not allow arbitrary TCP/IP ports to be opened between the device and the PC. If you are having problems over ActiveSync, I think that your problem lies there, not in cerhost/cerdisp.

    First, verify that a real network connection works fine with cerhost/cerdisp (Ethernet, WiFi, etc.)

    Second, establish from reading the source which port cerhost/cerdisp use. Verify that your PC firewall is OFF/open for the ActiveSync connection.

    Third, carefully assure that you have a 100% functional ActiveSync connection. Use IPCONFG on the PC to validate which IP address is assigned to the PC in this setup. Do the same on the Windows CE device. Carefully configure cerhost and cerdisp to connect to the CORRECT IP addresses. If it works, you're done. If not, evaluate the importance of this operational scenario because I think you're going to be stuck.

    Paul T.

    Tuesday, September 4, 2012 4:38 PM