none
Prevent SIP auto popup RRS feed

  • Question

  • hi~not sure if there is a better forum to post in for this question. please let me know if so...

    we're developing for a handheld barcode scanner that will interface with our webapp. basically we just want a kiosk style web browser for our users. we've written a vb app that uses the webbrowser object inside of a form and it works on our device. the problem is that whenever a text field gets focus, the soft input panel pops up on the screen which we don't want. i haven't programmed the SIP to show up at all on the form so i think it's built into the webbrowser object. i can't seem to find a way to disable it. i've tried using the SipShowIM api on the form load event but it doesn't seem to work. does anybody have an idea how to do this?

    we've also looked at loading iesimple onto our device as that sounds like it's basically internet explorer without any toolbars, but it appears that that requires we load a whole new OS image onto the device.

    anybody have any advice on getting a kiosk style web browser running? we're using windows CE 6...

    thanks!

    Tuesday, June 22, 2010 5:32 PM

Answers

  • Remove or replace AYGSHELL when OS booted is more tricky as the DLL is already loaded by others. So if you need a solution without rebuild and reprogram whole Os Image, using Paul's suggestion to create you own SIP and modify proper registry settings, then a warm reset should meet your need.
    For more info about SIP registry setting, http://msdn.microsoft.com/en-us/library/ee504097.aspx

    • Marked as answer by malificent Thursday, June 24, 2010 4:33 PM
    Wednesday, June 23, 2010 7:47 PM

All replies

  • The device operating system is based on Windows CE or Windows Mobile?  This affects which browser is actually in the OS.  If it's Windows CE and the device OEM selected the Internet Explorer browser and not some Pocket Internet Explorer variant, IESimple should work, but probably isn't much different than what you're already doing. 

    If it were me, I'd build my own SIP to include in the operating system and select that as the default.  It would simply ignore any requests to show itself.  You never want the SIP at all, right?

    Paul T.

    Tuesday, June 22, 2010 11:05 PM
  • Basically, the SIP Auto Deploy in CE is due to Windows Controls invoke SHSipPreference (exported by AYGSHELL.DLL).
    So the easy way is to remove the AYGSHELL (SYSGEN_AYGSHELL)

    But if excluding AYGSHELL is not an option to you, perhaps you need to alter AYGSHELL; source code can be found in PRIVATE\SHELL\SHELLPSL\HAVEAYGSHELL\shellpsl.cpp and alter SHSipPreference to supress SIP popup.

    Wednesday, June 23, 2010 12:16 AM
  • thanks for the replies!

    yes, it's windows ce 6.0

    yes, i do not want the SIP to show up at all within our app.

    the OEM included IESample as the browser.

    so, if i were to create my own SIP and set that as the default or alter AYGSHELL or even load IESimple, do i need to reload the whole operating system? or is there a way to change those particular parts and load them into the OS i've got currently installed? 

    i'm new to developing in windows ce so hopefully my questions make sense...thanks again for the responses!

    Wednesday, June 23, 2010 4:25 PM
  • Remove or replace AYGSHELL when OS booted is more tricky as the DLL is already loaded by others. So if you need a solution without rebuild and reprogram whole Os Image, using Paul's suggestion to create you own SIP and modify proper registry settings, then a warm reset should meet your need.
    For more info about SIP registry setting, http://msdn.microsoft.com/en-us/library/ee504097.aspx

    • Marked as answer by malificent Thursday, June 24, 2010 4:33 PM
    Wednesday, June 23, 2010 7:47 PM
  • ok, thanks! it looks like we're going to take the custom SIP approach. thanks for getting me headed in the right direction!
    Thursday, June 24, 2010 4:32 PM
  • if you're not using SIP at all your custom SIP could be simply a stub DLL which exposes SIP_Xxx stream interface entry points and do absolutely nothing

    --
    Luca Calligaris (MVP-Windows Embedded)
    lucaDOTcalligarisATeurotechDOTcom
    www.eurotech.com
     
     
    "malificent" <=?utf-8?B?bWFsaWZpY2VudA==?=> ha scritto nel messaggio news:458132f8-543d-413e-97df-dcd4e98a4bd2...
    ok, thanks! it looks like we're going to take the custom SIP approach. thanks for getting me headed in the right direction!

    Luca Calligaris (MVP-Windows Embedded) lucaDOTcalligarisATeurotechDOTcom www.eurotech.com
    Friday, June 25, 2010 7:14 AM
  • So basically I just need to write a dll that implements the IInputMethod interface with empty methods, correct?
    Monday, June 28, 2010 1:51 PM
  • just to give an update on this...

    we found a small app that does what we need as far as suppressing the call to show the SIP. it's called NullKeyboard and it basically places an option in the SIP menu that allows you to disable the SIP. i'm putting the link here in case anyone else comes across this thread looking for a solution:

     

    http://www.freewarepocketpc.net/ppc-download-nullkeyboard.html


    it says it is only for pocket pc but we obviously tested this on windows CE 6 and it does work. thanks to everyone for the help!

    Monday, June 28, 2010 7:35 PM
  • That looks like exactly what I did for our devices...

    Paul T.

    Monday, June 28, 2010 10:26 PM
  • Here is a working solution on Stackoverflow through a registry setting in WEC7.

    For completeness I copy the setting here.

    [HKEY_CURRENT_USER\ControlPanel\SIP]
    "TurnOffAutoDeploy"=dword:1

    • Edited by shaper Friday, April 7, 2017 2:43 PM
    Friday, April 7, 2017 2:43 PM