x
This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
HPC:Factor Logo 
 
Latest Forum Activity

Running programs at startup

CE Geek Page Icon Posted 2013-11-08 11:54 AM
#
Avatar image of CE Geek
Global Moderator
H/PC Oracle

Posts:
12,674
Location:
Southern California
Status:
There are three common ways to run an app at startup on a Windows CE device (2.0 or newer):

1) create a link to the app in the \Windows\Startup folder (the most common method);

2) create a string value called LaunchXX that points to the file in HKEY_LOCAL_MACHINE/init in the registry, where XX represents a two-digit decimal number higher than the LaunchXX value for explorer.exe (this also requires creating a DWORD value called DependXX for this app pointing to a file it requires to be executed first among those with lower LaunchXX numbers already present in the HKLM/init key) (this method can be used for PNAs and other devices with newer versions of CE that have persistent registries but whose \Windows folders are located in non-persistent RAM); or

3) rename the executable autorun.exe and place it in on a Storage Card in a folder whose name is a numeric value identifying its processor type (on ARM-based devices, this is generally \Storage Card\2577\) (this method can also be used for automatically executing a program on the Storage Card once the card is inserted in an already-booted device).

After obtaining a second Mintpass MintPad, I've been forced to try method 3) after installing .NET CF 3.5 on my first one, which bricked that MintPad. (It turns out that the MintPad's proprietary interface, into which it boots directly [the file being called Launcher.exe], is a .NET CF 2.0 app, and because the MintPad doesn't retain registry changes after reboot, the necessary registry entries to allow backward compatibility of .NET CF 3.5 are missing during reboot. So the device just hangs at the startup splash screen.) But this method isn't working thus far. I've seen some stuff on the Web suggesting that not every CE device is set up by its OEM to enable the ability to autorun files this way. Can someone confirm this? Also, is it possible to tell the device to look somewhere other than \Storage Card for the folder where the autorun file resides, such as through an autorun.inf file (which I've seen in the file systems of some devices)? Because the device will no longer connect via ActiveSync, only the NAND storage area and the Storage Card (when a TF/microSD card is inserted in the interior slot behind the battery) are accessible when the device is connected to a PC, and only then when an "Emergency" mode is enabled by a series of button and switch combinations. So far I haven't been able to find a way to unbrick this device through this route, and the Mintpass site is now closed and its page contents not fully archived in the Wayback Machine.
 Top of the page
Rich Hawley Page Icon Posted 2013-11-08 2:00 PM
#
Avatar image of Rich Hawley
Global Moderator
H/PC Guru

Posts:
7,188
Location:
USA
Status:
Did you try to simply reflash the thing?
 Top of the page
CE Geek Page Icon Posted 2013-11-08 8:58 PM
#
Avatar image of CE Geek
Global Moderator
H/PC Oracle

Posts:
12,674
Location:
Southern California
Status:
Of course. Before the Mintpass site closed, I downloaded an update image file there with the file extension .hex. You're supposed to copy that file over to the device and then disconnect it from the PC, after which it's supposed to automatically reboot and reflash the OS from the .hex file. But it still hangs at the splash screen and never gets to the reflash process, whether I put the file in \NAND or on the Storage Card.
 Top of the page
Rich Hawley Page Icon Posted 2013-11-08 10:39 PM
#
Avatar image of Rich Hawley
Global Moderator
H/PC Guru

Posts:
7,188
Location:
USA
Status:
What is in the \NAND storage folder? Can you see anything when you set options to show hidden files and such? Anything you could copy from your other Mintpad over to fix it? Like an .hv file?

BTW, thanks for making me feel better today...I thought I was the only one who had "bricking" experience....
 Top of the page
Alt Bass Page Icon Posted 2013-11-08 11:07 PM
#
Avatar image of Alt Bass
H/PC Sensei

Posts:
1,169
Location:
Russia
Status:
I bricked my CE6 netbook once - it would never launch explorer.exe and without that nothing was possible. It just hang at splash screen.

I was upset for several weeks and then I finally remembered that I stored the driver for something at NAND flash which gets connected through USB mass storage. Then I MDSN-ed the standard template for a driver, inserted "exec" command for Total Commander to the function "init", compiled it and copied it to NAND substituting the original driver.

It worked indeed - the driver was initialised and Total Commander has ran. I deleted the registry and the device restored the default one, everything got working.

I broke it later anyways.

So if you happened to store DLLs and drivers for something on the NAND this trick can help you - I can compile the template, you substitute the driver with it and then connect the thing which requires that driver.


Quote
CE Geek - 2013-11-08 2:54 PM

But this method isn't working thus far. I've seen some stuff on the Web suggesting that not every CE device is set up by its OEM to enable the ability to autorun files this way. Can someone confirm this?


Yes I can. Have seen some of them, Loox 720 for example. This feature works only through notifications though and I am not sure about whether the NAND mounts before or after notifications get enabled (I think that it does mount before notifications get activated).



 Top of the page
CE Geek Page Icon Posted 2013-11-09 7:35 AM
#
Avatar image of CE Geek
Global Moderator
H/PC Oracle

Posts:
12,674
Location:
Southern California
Status:
That's a nice discovery, Alt Bass. However, I don't recall installing any drivers in \NAND. The only interfaces the MintPad has that would call for a driver are the TF/microSD card slot inside the battery compartment and the proprietary connector for the USB data cable. And, in case it wasn't clear from my initial post, the only way I can read the files in "Emergency" mode is through another device (either a PC or a USB-enabled CE device) as a mass storage drive. If I could figure out a way to access either the \Windows folder or the device's registry, I could easily unbrick it. But so far I haven't found a way.
 Top of the page
Rich Hawley Page Icon Posted 2013-11-09 1:21 PM
#
Avatar image of Rich Hawley
Global Moderator
H/PC Guru

Posts:
7,188
Location:
USA
Status:
I think with it locked in mass storage mode, unable to activesync, you are SOL forever...unless there is some way to JTag it and force a serial connection directly to the motherboard.
 Top of the page
Jump to forum:
Seconds to generate: 0.203 - Cached queries : 65 - Executed queries : 11