Network Timeout 2005 VS Beta DE
I successfully connect to the Internet using 2005 VS beta DE, however, if left idle, the DE appears to disconnect and can no longer navigate to different websites. I poked around the registry and found the setting:
hklm\comm\parms\allowsuspend set to 1 vs. the default listed on msdn as 0. Should this setting be set to 0 to disable suspend? Is there any other reason why a connected DE might suspend/disable network connectivity? Thanks for the help
The suspension due to inactivity is turned off in the emulator images, so this key should not affect the function of the emulator. If the inactivity timeouts were finite what you would see is the emulator would exit and save state after you didn't use it for a while.
This sounds like a network configuration issue. One thing to check is if you are running DE on the top of a wireless card. There is a known issue with that configuration - your connections will disappear in half of the DHCP address lease time. The solution is to either use ActiveSync connectivity or use a wired network card with Virtual Switch.
If the above doesn't ring true can you please provide more detail on your network configuration - DHCP server lease time, the IP of the emulator before and after the disconnect, if you can ping the emulator by IP, network topology.
Thanks,
Vladimir
If you restore the same saved stated on two different machines and that saved state had enabled NE2000 or CS8900 - you will have problems with connectivity. Both of these emulator instances will have the same MAC address causing much confusion to the DHCP server. Here are your options for sharing saved states:
1) If you can disabled the network cards (NE2000, CS8900) before saving state - you will have no issues.
2) If you need the network card enabled upon restore on both machines you'll need to use your saved state as the global saved state and use the reconfiguration on restore feature to reenable the card.
Below are my directions for using and creating stand alone global saved states. What you would want to do is to pass /p parameter on the command line to enable the network card once you have your global saved state on the machine.
<<<
Global saved states (gives you instant on capability):
1) Start the emulator with the following command template:
DeviceEmulator.exe <bin image path> /VMID {GUID} /defaultsave <extra options>
Example:
DeviceEmulator.exe \os\images\new\ppc.bin /VMID {7D192096-E
437-48d1-9BBE-B8DDF58FEE01} /defaultsave /skin \os\skins\PocketPC.xml
2) Wait for it to boot fully and go to File\Save State and Exit
3) Copy the generated saved state file from the local cache into the global cache:
copy "\Documents and Settings\<username>\Application Data\Microsoft\Device Emulator\{GUID}.dess" "\Documents and Settings\All Users\Application Data\Microsoft\Device Emulator"
For my example the command line is:
copy "\Documents and Settings\vladf\Application Data\Microsoft\Device Emulator\{7D192096-E437-48D1-9BBE-B8DDF58FEE01}.dess" "\Documents and Settings\All Users\Application Data\Microsoft\Device Emulator"
4) Test drive it to verify the global saved state is being used:
DeviceEmulator.exe <image path> /VMID {GUID} /defaultsave
It is important to keep the image path and the GUID the same otherwise the emulator will cold boot instead of using the global saved state.
For my example we have:
DeviceEmulator.exe \os\images\new\ppc.bin /VMID {7D192096-E437-48d1-9BBE-B8DDF58FEE01} /defaultsave
Note that with a global saved state you can change almost all other options (change skins, folder sharing, network settings) without rebooting the emulator. You can create a batch file to make using the global saved state easier:
DeviceEmulator.exe <image path> /VMID {GUID} /defaultsave %*
There are a couple options that will cause a cold boot - changing memory size (/memsize), changing LCD size (using different size skin with /skin or /video), adding a console (/c) or changing the UART bindings (/u0,/u1,/u2)
>>>>
Thanks,
Vladimir
Well, I have followed the instructions re: using a global saved state with no network, however, when resuming [using the saved-state (guid={C2B0BA8B-9547-4740-9B68-C371C71045F9})], and, using the /p command qualifier, even though I can see the network boxed checked in the configure options, when the global saved state resumes, the emulator still does not connect to the network. If I look at the configure options for network when I use the /p command option, the "enable NE2000" box is checked and the dropdown box shows "Connected network card". Further, I even tried passing in my net card's MAC address, which causes the network checkbox configure option to be checked - and specifically call out my net card in the dropdown box, however, the emulator still does not connect. Am I doing something wrong here? The global state [from the "all users" folder] is definitely being restored, and, the /p option is definitely causing the configure option's network checkbox to be checked, however, the emulator never appears to try to go to the router to obtain an address. The full command I am using is:
with MAC Address -
C:\emulator>start "ASM CE Emulator" "c:\program files\microsoft device emul
ator\1.0\deviceemulator.exe" "C:\program files\windows CE Tools\wce500\wind
ows mobile 5.0 pocket pc sdk\deviceemulation\0409\ppc_usa.bin" /vmid {C2B0B
A8B-9547-4740-9B68-C371C71045F9} /defaultsave /memsize 256 /z /vmname "ASM
CE Emulator" /sharedfolder "c:\mobile" /p /nosecurityprompt
and
without MAC address -
C:\emulator>start "ASM CE Emulator" "c:\program files\microsoft device emul
ator\1.0\deviceemulator.exe" "C:\program files\windows CE Tools\wce500\wind
ows mobile 5.0 pocket pc sdk\deviceemulation\0409\ppc_usa.bin" /vmid {C2B0B
A8B-9547-4740-9B68-C371C71045F9} /defaultsave /memsize 256 /z /vmname "ASM
CE Emulator" /sharedfolder "c:\mobile" /p 000BCD5A7195 /nosecurityprompt
As always, any assistance is greatly appreciated!