locked
How to get the version, installed directory and some other information of applications installed on the Windows Mobile ? RRS feed

  • Question

  • I can get the name of installed applications using OMA-CP, the provisoning XML is as following:

    L"<wap-provisioningdoc>"  
      L"<characteristic-query type = \"UnInstall\"/>"  
      L"</wap-provisioningdoc>";

    But I could only get the name of the applications.  I have read the following link with the same question which seems not provide the "real" answer:

    http://social.msdn.microsoft.com/Forums/en/windowsmobiledev/thread/63463fc1-29ef-4a0e-8039-8380efbe878b

    Because I could get "InstallDir" info by navigating the regkey under "HKLM\Security\AppInstall\[APPName]" manually and some other kinds of information. So Is there a programmatical way for me to get the information I want ?

    Any input on this question will be highly appreciated !

    Best Regards,

    -Alvin-Hu  

     

    Monday, May 10, 2010 12:34 PM

Answers

  • >>Because I could get "InstallDir" info by navigating the regkey under "HKLM\Security\AppInstall\[APPName]" manually and some other kinds of information. So Is there a programmatical way for me to get the information I want ?

    To read those information in the registry programmatically, you can use the RegistryKey::GetValueNames method to enumerate the registry key [HKEY_LOCAL_MACHINE\Security\AppInstall] or [HKEY_LOCAL_MACHINE\Software\Apps]. The sample in the document should show you how to use it.

    If you use native code, the RegEnumKeyEx function can do the same.

    There is no uniform way to get the version infomation.


    Please mark the post that helps you, and unmark that does not. This benefits our community.
    • Marked as answer by Alvin-Hu Wednesday, May 12, 2010 9:43 AM
    Wednesday, May 12, 2010 6:08 AM

All replies

  • >>Because I could get "InstallDir" info by navigating the regkey under "HKLM\Security\AppInstall\[APPName]" manually and some other kinds of information. So Is there a programmatical way for me to get the information I want ?

    To read those information in the registry programmatically, you can use the RegistryKey::GetValueNames method to enumerate the registry key [HKEY_LOCAL_MACHINE\Security\AppInstall] or [HKEY_LOCAL_MACHINE\Software\Apps]. The sample in the document should show you how to use it.

    If you use native code, the RegEnumKeyEx function can do the same.

    There is no uniform way to get the version infomation.


    Please mark the post that helps you, and unmark that does not. This benefits our community.
    • Marked as answer by Alvin-Hu Wednesday, May 12, 2010 9:43 AM
    Wednesday, May 12, 2010 6:08 AM
  • Hi Chunsheng,

    Thanks very much !  Yes, we can read the registry hive to get the info. A related question: what's the difference of the info under [HKEY_LOCAL_MACHINE\Security\AppInstall]  and [HKEY_LOCAL_MACHINE\Software\Apps] ?

    I just know all the installed applications will be listed under HKEY_LOCAL_MACHINE\Security\AppInstall.

    Sincerely,

    -Alvin-Hu

     

    Wednesday, May 12, 2010 8:30 AM
  • I would prefer [HKEY_LOCAL_MACHINE\Software\Apps] for the purpose of getting installed applications.
    Please mark the post that helps you, and unmark that does not. This benefits our community.
    Wednesday, May 12, 2010 8:41 AM
  • On my own mobile, there are more items under [HKEY_LOCAL_MACHINE\Software\Apps] than that under the [HKEY_LOCAL_MACHINE\Security\AppInstall].

    I also check the Windows Mobile 6 Classic Emulator and found the items were different too. Could you please tell me the difference ? you deserve all my best wishes.

     

    Thanks,

    -Alvin Hu

     

    Wednesday, May 12, 2010 9:16 AM
  • I found no documentation about the differences. In my opinion they are just for different purposes. Again I think the Software key is more proper for getting installed programs than the Security key.  
    Please mark the post that helps you, and unmark that does not. This benefits our community.
    Thursday, May 13, 2010 2:19 AM