|
Do you find the Support WebCast transcripts helpful? Let us know!
Microsoft Support WebCast
Microsoft ActiveSync: Troubleshooting ActiveSync for Mobile Devices
December 19, 2002
Note This document is based on the original spoken WebCast transcript. It has been edited for clarity.
Raghavendra Rao: Thank you for joining us today. Good morning. This is Raghavendra Rao. I work for the Microsoft® Developer Support division. We are going to be talking about Microsoft ActiveSync®. We'll specifically focus on troubleshooting ActiveSync for mobile devices. We won't be covering any architectural theory, but we'll basically concentrate on troubleshooting ActiveSync.
Let's start off with the slides. I have some notes here also, so my goal is to give as much information as possible within the time allowed. We'll just go through the slides first, and at the end we can have the Q&A.
The objective here (slide 2), as I said, is to provide as much detail as possible about troubleshooting Microsoft ActiveSync. The agenda is (slide 3) we will cover the common scenarios with ActiveSync that people run into and what problems they can encounter during these activities. Also, at the end, I will describe the top issues that I have collected from my support cases and what we did to resolve them. After that we can have a Q&A session. I have my colleagues here, Brian Haley, who works with me on the support team, and also John Wingard. Both of them are very senior support professionals and they will also be participating in the Q&A session.
Let's dive into the slides. The common scenarios (slide 4) are initially, of course, you would have to install ActiveSync, to sync information from your desktop and the Pocket PC. First is setup. And after that you have to establish communications with the mobile device. Then of course, you synchronize with Outlook®, and you synchronize anything else you would like between the desktop and the Pocket PC.
Let's go through the ActiveSync setup best practices (slide 5). As you can see on the slide, the fewer the number of background applications active, the better. This is true for any application that you would install. Make sure you do not have many applications running at that point in time, because it may interfere with the installation program.
Also, disable any currently active antivirus or registry protection programs, because with antivirus programs, as soon as you write something (for example, the setup program writes some information into a file or updates some files) the antivirus software will kick in. As soon as you finish writing to it, it will open and try to check whether viruses were injected, and things like that. But for the duration of setup we recommend disabling that program. As soon as you are done with setup, of course you can re-enable antivirus.
Also, one other thing would be to disable the firewall or proxy clients — for example, any third-party firewall software like BlackICE or ZoneAlarm.
Remove any network accelerators or network enhancers. Some people use software applications that sit on top of the network layer, and these are network printer drivers. They are supposed to cache information and accelerate the network. Please disable those while installing your program.
Then when upgrading, make sure that you back up any valuable data. This is just to make sure that you do not lose any critical information. But if it is just for use on a day-to-day basis, maybe this is not so important.
Common Setup Errors (slide 6): The preinstall wizard. Make sure that your temp variable is set properly for your operating system. For Windows® 95/Windows 98 it would be c:\Windows\Temp. One other way to make sure that it's correct is to go into the Autoexec.bat file and comment out the "Set Temp" lines and restart the machine. It should pick up the Temp directory properly before you start the ActiveSync setup. The reason is the ActiveSync setup, Msasync.exe, will expand the .exe file into the Ixp000.tmp folder under the system Temp directory and will go through the installation from that point on. The system Temp directory is the most important.
Of course, if you want to set it manually, you can do Settemp %WinDir%\Temp, or if you have Windows configured for user profiles, you can use %WinDir%\Profiles\User Name\Temp. For Windows NT®, typically it is c:\WinNT\Temp. You could also use %WinDir%\Temp, as we did earlier, or if you have Windows configured for user profiles, again, you can use %WinDir%\Profiles\User Name\Temp.
For Windows 2000 and Windows XP, change your environment variable to Settemp%UserProfile%\Local Settings\Temp and ensure the folder exists on the drive before you start the installation. Because most of the preinstallation wizard issues occur when you do not have the Temp directory configured properly and setup is looking for the Temp directory and cannot find it, or finds another temp directory, and the installation may not go through properly.
The second thing that happens before it starts the actual setup wizard is it will check whether TCP/IP and Winsock are properly installed on your machine. It will go into the registry and try to find these keys. For example, on most machines it's under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip; that is one key. That is the most important key that it looks for. The other two keys are Winsock2 and Winsock. As I said earlier, you will have to disable any antivirus software or firewall protection software before starting the installation, because they might change these keys, which would be a problem for the setup wizard.
Then you start the setup wizard. Go through the setup wizard, and then the next process will be the file copy process of the setup wizard. It will copy the files to the appropriate directories.
The last part will be the registration of the appropriate .dll files and the creation of default registry entries. If you have any registry protection software, make sure you disable it.
What are some of the prewizard errors (slide 7)? It may say, "InstallShield preparation wizard never appears." It may not appear, and setup does not start at all. One reason, as I said, could be that it is not finding the temporary folder. If this problem occurs, clear the system temp folder. Under the temp folder you will have _ISTMPx.DIR, and clean out that directory as well. Stop any active applications, especially _ISDEL.EXE. Then restart and try setup again.
Perform the standard clean-boot method, as defined for each OS. Actually, I'm going to give you an article that details how to perform the clean-boot for the appropriate operating system. If that doesn't work then you can install it from Safe Mode. If you have Msconfig then you can go through Msconfig, boot into Safe Mode, and try the installation from there.
One more thing I wanted to say before you go through the setup wizard is it will have an .inf file whenever you download the ActiveSync. When you start the installation from the CD, it will have the .inf file, which will have instructions on how to install the files onto the appropriate directories. Sometimes I've noticed that under the c:\Windows\Inf folder there are multiple .inf files. In one situation there were thousands of .inf files on a user's machine. Most of them were 0 bytes. Make sure you get rid of those 0-byte .inf files before proceeding with the installation.
If you are still having problems with setup, if it's not starting the InstallShield Setup Wizard, for example, try to see if you can bring up another InstallShield setup wizard, maybe for another application, just to make sure that InstallShield is working fine on your machine. If that also fails, then you can go to the InstallShield Web site, which is http://www.installshield.com/ (Note that this URL resolves external to the Microsoft domain, and Microsoft is not responsible for its content), and find out if they have any updates or information regarding this issue.
As I said, there are several KB articles (slide 8) that reference clean-booting for the appropriate operating system. You can see, on this screen, article 281770, "How to Perform Clean-Boot Troubleshooting for Windows 2000." You can go to that article to see how to perform clean boots on Windows 2000. Similarly, for Windows 98 (192926) and Windows Millennium Edition (267288) there are these other two articles.
There could also be other prewizard errors (slide 9). For example, InstallShield reports that a previous installation has not been completed. This could be due to the fact that you started the installation but it has some temporary files to maintain the run-time information for the setup program, and it hasn't actually cleaned those out. Then you start the setup again, so it is basically confused as to whether it's already installed or not. It throws up this error message, "InstallShield reports a previous installation has not been completed."
Then if the above message appears every time setup is launched, in spite of multiple restarts — like when you restart it, it should clean up any leftover files and try to perform the installation properly — you should start the installation after the restart. If you get this multiple times, then there are two places for you to look, depending on the user's OS.
For systems running Windows 98, Windows 98 Second Edition, and Windows Millennium, find and delete the Wininit.ini file. It should be located in the Windows folder. So get rid of that file and delete the value PendingFileOperations in the registry key, under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager. This is the key that will have all the pending file operations that this application has asked the system to perform. As soon as you restart it is going to look through that and try to finish those pending file operations. Make sure you delete that key.
For Windows NT 4.0 and Windows 2000, you can delete that particular key. It is going to be in the same location. Notice that the Wininit.ini file is not used for Windows NT-based systems: Windows NT 4.0, Windows 2000, and Windows XP.
The next step, after the preinstall wizard and after it starts the installation, is it is going to check whether TCP/IP is installed properly on your machine (slide 10). I've noticed that if you have either McAfee privacy software installed on the machine and that has TCP/IP, the Winsock port won't be open, or the TCP/IP port will be busy, for example. Just disabling the McAfee privacy software may not do it. You may have to uninstall it for the duration of the setup program. Try uninstalling McAffe and then start the setup again, and it should go through smoothly.
Again, as it says here, in addition to the standard TCP/IP Protocol Required dialog, the following are the two most common error messages that occur at this stage. Both will display while the ActiveSync install engine is querying the registry settings. The errors are "_INS5576 has caused an Invalid Page Fault in Module <unknown>" or "INS5576 has caused an Invalid Page Fault in Module Explorer.exe." This is for the Windows 95/Windows 98 and Windows Millennium Edition systems. For Windows NT 4.0, Windows 2000, and Windows XP systems this will be referred to as an access violation instead of invalid page fault, but the problem is the same. It's going to be the _INS5576 registry setting, for which you need to look through the registry and see if you can get rid of that key.
When you are performing the TCP/IP check, you should also make sure that your firewall software, such as ZoneAlarm or BlackICE, is disabled as well. Let me go through the slides and we can discuss the rest of the issues at the end of the presentation.
Troubleshooting errors during TCP/IP check (slide 11): Again, stop any active items and try starting setup again. When I say stop any active items, that's any active programs, any other running programs; close those and start the setup again, or clean-boot the operating system. One other thing you would need to do is remove any personal firewall applications and remove and reinstall Dial-Up Networking, if necessary. You may perform these operations step by step. If this doesn't work, then go on to the next step, and so on. There's no need to do everything at the same time. Maybe it is one of those that is interfering with our setup program. You can also manually remove and reinstall TCP/IP and Dial-Up Networking. The way to do it is to go to Control Panel, double-click Network, and you can install TCP/IP from there.
Again, there are some Knowledge Base articles that you can go through (slide 12). For example, when you receive that _INS5576 error, you can go through this article, 299393. Most of the information should be that in this article. There is another article, 299409, regarding this error message, "The TCP/IP protocol must be installed on your computer before Microsoft ActiveSync can be installed." This other article explains what you need to do. Basically it says you would have to disable the firewall and also try to install the TCP/IP protocol. The third one is 181599, "How to Remove and Reinstall Dial-Up Networking and TCP/IP Files."
The next step is troubleshooting errors during file copy (slide 13). You have gone through the preinstallation wizard steps, and you have successfully made it through the TCP/IP check. The next step for the setup wizard is to copy the actual files.
If it is a CD-based install, there are a couple of things that you need to make sure of. Make sure that the CD is free of scratches and smudges. Make sure that other CDs read correctly in the CD-ROM drive. That is, make sure your CD-ROM drive is working properly. Also, if your CD-based install doesn't work for some reason, you can always try the Web-based install. Go to the Web, install Microsoft ActiveSync, and try the Web-based install. If you are having problems with the Web-based install itself, or if you find that the files are corrupted for some reason, you can redownload the Web-based install and start the installation again. If you are trying to run the setup program from a Zip drive or a Jaz drive, a floppy disk, or something like that, I would recommend copying it to the hard disk and then trying the install from the hard disk.
Troubleshooting errors during file copy, continued (slide 14): During file copy, if you have any errors, you could stop any active background programs and try to restart the setup program. Or again, perform the clean boot. The third one is rare, but you just need to be aware of this. If the computer is overclocked, like if the processor speed is much, much higher than what is preferred by the ActiveSync setup program, that may cause some problems as well. If it is overclocked you can change it to the normal speed. You can go through the documentation for your computer to see how you can perform this. Also, make sure that the hard drive to which the installation is writing is free of errors. With Windows 95/98 and Windows Millennium, you can use Scandisk to check the hard disk. With Windows NT 4.0, Windows 2000, and Windows XP, you could use Chkdsk to verify the integrity of the hard disk.
The next part is troubleshooting errors during Updating System Settings (slide 15). After the files are copied, the setup program is going to try to update your system with the latest files and register them. When the "Updating System Settings" dialog is displayed, the ActiveSync setup is doing the following: registering the .dll files and creating the default Windows CE Services registry keys under HKEY_LOCAL_MACHINE\Software\Microsoft\Windows CE Services. And it's verifying the version of the ComCtl32.dll. After it does that, it will go to the Get Connected Wizard.
To troubleshoot errors during Updating System Settings, stop any background applications (slide 16). These are some of the standard items that you may need to stop. Sometimes all it requires is stopping any applications that are interfering with the setup program and relaunching the setup, and it should go through properly in most of those cases. Otherwise you may need to clean boot the system to get rid of any false registry entries and things like that, and then restart the setup program.
The final thing is, if you're still having problems with the Updating System Settings stage, when you start off the setup, you may want to go through the WCESetup.log file (slide 17). It logs each and every activity that happens when the setup is occurring. You can go through the log file and it will have most of the information. If it fails, if for some reason it has copied the file but has failed to register it, or if the last line in the WCESetup.log is that it has tried to copy some files, then you'll notice that it has failed during the updating system stage of the setup program. Open the WCESetup.log. It is usually in the Temp directory of your machine.
We recommend that if there are any files causing this issue, manually copy those files from the Temp directory to where the directory was destined to go — where it was trying the copy it over to. You can get that directory information from the setup log and copy those files over to that place. Then find the file name. Obviously, to copy it you need to know the file name. Then run MSASync.exe, the setup program for ActiveSync, and allow the Set Up ActiveSync 3.5 (or 3.6) dialog to come up.
As soon as that is up, use the file explorer to navigate to the Temp directory, the Ixp001.tmp folder in the system temporary directory. Locate the file and copy the appropriate file to the directory indicated in the setup program. Then cancel the ActiveSync installation.
And then after we cancel it, after the file is successfully copied (slide 18), open the Run dialog by clicking Start, clicking Run, and typing the following command: regsvr32 %path%\%filename% for the file that you just copied, and use /u to unregister it, to make sure that it's completely unregistered. If that is successful, try to install ActiveSync again, and it should go through the installation properly, because there are no conflicts with the registry entries that it wants to make for your program.
Using the WCESetup.log (slide 19): After you open the WCESetup.log, it is basically just a text file. It will have information about what has happened up to this point.
These are some examples, on this slide. It says:
Copying static files to c:\winnt\system32\
Ceutil.dll - copied .
It is just telling us, "I just copied this file on to this directory."
For the second one, usually it says replaced when it finds that the file was an older version on your machine. If the setup program was trying to copy a later version, it will copy the later version and say the file has been replaced.
When it says refreshed, it found the same version of the .dll on the machine, and the setup also had the same version, but just to make sure, it just copied the one from the setup.
Whenever the setup is trying to copy an older version than the file that you already have, it will just leave the newer version that you have on your machine alone, and it will just note that in the WCESetup.log. It will say something like, "Warning, I haven't copied the older version. You have a newer version, and you will continue to use it."
Then whenever it is creating registry entries and such, it will also let you know that it is creating the registry entries and where it is creating them. In this case it is trying to register the file Ppvexp.dll. The reason for displaying Registering started and then Registering completed is because if the .dll has any dependent files, then it needs to register them as well. After everything is done (the .dll and the dependent files) it will say, Registering completed. And there is another file, cefstore.dll, it is trying to register.
Moving on, the next step, after you have successfully installed the ActiveSync application, is to establish communications with your mobile device (slide 20). Here are some of the things that you need to be aware of to troubleshoot the communications part of ActiveSync. These are some of the problems that you may face.
Nothing happens when the device is in the cradle. One of the basic questions that you need to ask yourself is "Have I successfully installed ActiveSync? I do not have any problems with ActiveSync as such, and the ActiveSync program is running on my desktop." The second thing is verifying that the device is powered on and is in the cradle.
The other thing is, have you enabled USB in the ActiveSync connection settings? Also, does this OS support USB? For example, Windows NT 4.0 and Windows 95 do not support USB. If it doesn't support USB, then it is not going to establish any communication, of course. These are some of the basic questions that you need to ask yourself. If everything is okay and you have done these things, and still nothing happens when the device is in the cradle, then it could be a USB driver issue. Maybe you do not have the appropriate driver on your machine.
The next thing that may happen is device arrival is not detected by ActiveSync or the system. When this happens ActiveSync is not recognizing your device. Or rather, maybe this happens after you have established the partnership with the device once, and then you're trying to recradle the device and it is not recognizing it. One of the things we need to make sure of is: Is the device ID (the device name) correct? Maybe it is not recognizing the device name. You may need to change your device name by uncradling the device, going into settings, and changing the device name using the device ID edit box. Change the device name and then recradle the device. Create a new partnership, after you recradle it, and it should start working fine.
The next thing is, ActiveSync is not set to accept USB connections. As I said, you need to enable the option in your ActiveSync connection settings.
The device is not using USB to connect to the desktop computer. You need to make sure that the cable is correctly installed, and that you are using the USB cable.
And as I said, the USB device driver may not be installed properly, which we can troubleshoot by going to Device Manager. I will detail that during the course of my presentation as well.
Continuing with ActiveSync communications troubleshooting (slide 21), again USB may be in conflict. When I say USB may be in conflict, if you have multiple USB devices on your machine, for example if you have a USB mouse, and you're trying to attach your USB mobile device and things like that, it needs to share the USB bus among these devices. Try to disconnect one of the USB devices and see if that resolves the problem.
If nothing happens at all, even when you make sure of all these things, then maybe USB is not enabled in the desktop system BIOS at all. Go through the documentation for your computer to verify this; or ideally, when restarting the machine, you press F8 to get into the BIOS, and ensure that USB is properly enabled in the BIOS. As I said, Windows NT 4.0 and Windows 95, pre-OS2, cannot use USB.
When you are sure that everything is fine and you're sure that ActiveSync is running, the device is powered, it is cradled, but still nothing happens, then maybe the cable is broken. You may have to take the device to another computer and see if it works over there. If it doesn't work over there, then obviously you have some problems with the cable or the USB port.
One other issue is the device is plugged into a powered USB hub or is too far down the USB chain. If you are using a USB hub, it connects to the root hub and then it allows you to attach multiple USB devices to this hub. If the hub doesn't work properly, try to connect the device to the root hub directly and see if that works. If the device is connected too far down the USB chain, try to move it up and see if that takes care of the problem.
When the device is in the cradle, does it show up in the Device Manager in the OS (slide 22)? The way to check this is to click Start, double-click Control Panel, double-click System, click the Hardware tab on Windows 2000 and Windows XP, and then click Device Manager. On Windows 95/Windows 98 and Windows Millennium, you go into Control Panel, double-click System, and select Device Manager directly. After you get into Device Manager, if the device is successfully recognized by the operating system, you should see a Windows CE USB Devices section. Ideally that will be the last entry in Device Manager. It should display the Windows CE USB Devices and under that, your device. If you do not have that section, but you have some other entries under Other Devices, or it is showing up as Unknown Device under Other Devices or under the USB root entry or something like that, and it has a question mark in front of it, then you know that it has a conflict.
The way to get rid of this problem is to remove those entries and try to refresh the Device Manager. Sometimes, this is enough. It will detect the appropriate USB driver.
One of the things that people do before installing ActiveSync is they try to connect the device, they connect it successfully, and then they end up installing the wrong USB driver on their machine. Then even when they install ActiveSync, and ActiveSync has all the appropriate USB drivers, it notices that the machine already has a USB driver, and so it may not update it. Ideally, before connecting your device, make sure you have ActiveSync installed properly, in which case it will detect the USB driver appropriately and install it properly.
Otherwise you would have to go through this process: Go to Device Manager. Remove those unknown and other device entries. If you do not see Windows CE USB Devices in the Device Manager, then that is the clue that it could be a problem with the USB driver. You would need to remove those entries and refresh the Device Manager. Sometimes what you need to do is use Msconfig, go into the Safe Mode, then remove those entries. Sometimes you may see multiple entries, such as ghost entries for the USB device under the USB Root Devices entry in the Device Manager, when you look in Safe Mode. Get rid of those ghost entries. Then go into Msconfig again and boot normally. When you boot normally, the system should detect the appropriate USB drivers, because ActiveSync is already installed on the machine. Even for Windows 95/Windows 98 and Windows Millennium Edition, you can go into Safe Mode and do the same, and have it detect the appropriate USB driver.
Article 133240 details all the information about troubleshooting device conflicts with Device Manager. Go through this article if you are still having troubles with the Device Manager, if it still shows up as a question mark, or if you do not have the appropriate Windows CE USB Devices entry.
Moving on (slide 23), as I said, you may have ghost devices or ghost entries in the Device Manager, or it may be incompletely enumerated under other sections rather than under Windows CE USB Devices. Make sure that is not happening by going through the steps that I detailed earlier.
Also, sometimes you may need to remove and reinstall USB controllers and devices as well. As I said, if you see any problems with USB drivers and if you see question marks in Device Manager, I would suggest removing those USB drivers and also removing all the entries under USB controllers, and then booting normally. That should detect a USB host controller and also the appropriate USB driver.
Also, one other problem you may see is ActiveSync recognizes the device arrival but never completes initial connection. It just says, "Okay, connecting," but it never completes that. It will never say "Connected." To troubleshoot that the instinctive reaction should be that something is interfering with ActiveSync, because it was able to recognize the device, but it is just not able to connect to the device. Basically, some other program, maybe a firewall program or a privacy protection program like McAfee, ZoneAlarm, or BlackICE may be interfering and may be using up that port.
Initially, when the connection happens and ActiveSync needs to establish the communications, it uses the PPP port, the Winsock port, to talk to the device. It will exchange a set of characters to recognize that it is a valid device. For that to happen it needs to have the port open. If these other guys, these firewall software programs, are keeping the port open and using that port, then that may be the problem. So disable those. Before doing that, close ActiveSync and close WCESMgr, and try to start ActiveSync again. It should start working. That is what my next statement says.
Desktop firewall software blocks TCP/IP from opening ports for communication between the desktop and the device. If when you stop those programs you are still facing problems with the communication, it never stays "connected," or it keeps trying to connect, that will be due to some corrupt or invalid TCP/IP and Winsock2 settings in the registry.
Go into the registry under HKEY_LOCAL_MACHINE\Software\Microsoft\Windows CE Services\ Tcpip and Winsock2 settings and see if those settings are okay. One thing that we can do to verify this is go to another computer where you know this program is working fine, then compare those entries and see if you have any other entries. Because sometimes, as I said, these other programs, maybe Windows XP firewall or any other program, may change these entries in the registry, due to ActiveSync having problems checking your TCP/IP and Winsock2 settings. If that is the problem, then remove those settings, reinstall ActiveSync, and it should repopulate these registry entries properly.
The other issue is Windows CE USB device driver corruption, for which you can reinstall the USB driver to fix that problem.
When we are through with the setup and we are only facing problems while communicating to the device, that is we are having problems establishing communication to the device, there is the WCESCOMM.log file (slide 24), which details all the information, all the steps that happen from the connection stage through the communication stage. You can go to this log file to see if there are any errors in there and the last action that took place in the log. Based on that you can guess what may be happening.
These are some of the sample entries that I've included here. It will initially say Windows CE Services Communication Logging and it will start logging the information. As soon as the communication is properly established, it will say, Logging file auto-purge after a successful device connection. It will log this and auto-purge the device. It will just remove all the other information, which is not relevant now, because the connection has already been established. The next step would be the synchronization, in which case WCESMGR.log would take over the logging from that point onward. Then if it is connected and you remove your device, the WCESCOMM.log will go back to listening on the port and check when the device will be connected. It will prepare for the new socket connection. Usually, if it is a USB device, it will say UsbComm:. And if it is a serial device, it is SerialComm: and IR. These are easily detectable. You should be able to detect these things.
Again, continuing with WCESCOMM.log (slide 25), when the device and the desktop are unable to successfully connect or the device connects and then immediately disconnects, this issue can often be traced to Winsock refusing connection to a certain port for some reason. Maybe some other program is using it.
This can be easily verified by looking into the log. It will say CesProxy:. Ideally the desktop will use port 5679. This is the default port that the desktop uses to establish communications with the device. Then it will try to send some Ack messages. This is the protocol used between the device and the desktop to verify proper functionality.
In the line TCP: you can see that the desktop is trying to send a message to the device, but Win=0 indicates that it failed for some reason. In the second line it says results 10061. 10061 is a Win32 or Winsock error code for connection refused, which is the same here in the last line, 8007274d. Eight will always be there, so ignore that; 007 is the facility code. 007 is for the Win32 error code. If it is an ActiveSync error, it will say 014. The last four digits, 274d, translates to 10061 in decimal, and that is connection refused. You can look at these log files to help you with troubleshooting the connection.
Troubleshooting serial connections (slide 26) is similar to USB connections. This is just another port. The same things can happen in serial connections as well.
Is ActiveSync monitoring the right port, and is that port available? ActiveSync will start scanning the serial devices. It will see, "COM1 is available but COM2 is busy. Let me use COM1 and scan for serial devices." The WCESCOMM.log will have this information for you when it is trying to establish the communication. As I said, ComSerial indicates that it is the serial device.
If you close COM2 because it is already busy, it will try to open COM1, starting device detection at 19,200 baud. It will try to communicate to that device at this baud rate. If it can establish communication at this baud rate, if it receives the client characters from the device properly, then the communication has been established properly. It will change DTR, the Data Terminal Ready, to 1, and it will say it is a signal, it is a ping, but it is a signal like, "Okay, I am ready to start communications with the device."
The next one is if you are still having problems with the communications port, the COM port, then you need to check whether it is in conflict with any other IRQs registered for the COM port (slide 27). The way this works is every time the PC starts the system, the BIOS checks for the COM ports to see what serial devices are installed on your PC and posts this information to the system BIOS data area (BDA). Windows reads the BDA and uses the default interrupt request line for each device that is registered.
Usually, COM port requests a unique IRQ to communicate with your PC. By default what happens is, as I say here in the slide, for COM1 the address is 03F8 and the IRQ assigned is 4. For COM2, similarly, the address is 02F8, and the IRQ is 3. In most PCs you won't have COM3 and COM4. Those will be internal ports, and when you start the modem or something like that, it may start using that. To use these other COM ports, COM3 and COM4, obviously it needs to assign IRQs. This is basically to let the driver know, "Okay, I have registered for interrupt requests, and I need to monitor and see if some device is trying to communicate or is sending interrupts to me." By default COM3 will have the address 03E8, and again the default IRQ will be 4. For COM4, similarly, the address is 02E8, and the IRQ will be 3.
In this case, as you can see, we are getting at something here. If you have a serial device connected on COM1, for example a mouse, and if you have a PDA connected to COM3, this configuration may not work, because the mouse and the PDA are trying to use the same IRQ, which is not going to work. After you determine that both are trying to use the same IRQ, maybe you need to move the mouse to one of your other COM ports. Then you're allowing the PDA to use the IRQ that is not shared among other devices, and the communications may happen properly.
The way to verify this is ideally the WCESCOMM will also log if it is an IRQ conflict. Otherwise, if you don't see anything there, then you may need to go through your COM port settings, go to your Device Manager, select the COM port, go to Properties, and I think on the Resources tab it lists what addresses and what IRQs that particular COM port is using. See if you have an IRQ conflict and resolve that.
Moving on with serial connection troubleshooting, you can also verify this by going to the command prompt and typing debug; Debug.exe is a program. Type debug, press ENTER, and a hyphen (-) is the prompt for the Debug program. At the hyphen prompt, type :d40:0. It is like you're looking at a particular address. And after you type that it displays what is located at that address.
You need to read two bytes at a time in reverse. For example, in this case COM1 is using 03F8, COM2 is using 02F8, COM3 is using 03E8, and there is no COM4, because it is 0000. The entries left of that dash sign in the middle are for COM ports, and to the right of that are LPT ports. You can see whether it is using the appropriate addresses or not. If it is not, then you can fix that by typing e40:0, and then type F8 03 F8 02. And if you have COM3 and COM4, you can type in E8 03 and E8 02. Then press Q to quit out of the debug program. That way you are fixing the addresses right at the command prompt. You are making sure that the COM port is using the appropriate IRQ.
Again, all that troubleshooting that we detailed with USB, if you did the same things with the COM port — made sure that the driver is properly installed, made sure that the COM port is using the proper IRQs, and you have made sure that no other program is trying to use the COM port at that point in time — and you are still facing the problem, then it could be bad cabling (slide 29). Ideally, the WCESCOMM.log will detail this.
AutobaudDetect is a mechanism where the device is trying to connect, and ActiveSync needs to detect at which baud rate the device is trying to connect. That is when it will use AutobaudDetect. It will start from a high number, like 115,200, and then if it cannot establish communications at that baud rate, it will go down to 19,200 or 5600. Ideally, it should establish a connection by 19,200.
If it doesn't establish a connection, it will say, "Okay, retry 2, retry 3, retry 4" on your device, and if it still doesn't establish the connection and AutobaudDetect fails, maybe your cable is bad, as it details here. AutobaudDetect: CTS serial pin is high. So as soon as the device sends the characters CLIENT to the desktop, ActiveSync will check the DTR line and also CTS lines. CTS is Clear To Send. And it should also set RSLD serial pin to high, indicating that we are ready to communicate. If you see a difference here, like CTS serial pin is high, but RSLD serial pin is low, then maybe there is a possible cable problem, or the port's pin may be broken.
If it does not detail this and it just says, No device found, detection failed, then you may need to take this device and try it on a different system to see if that works fine. Then maybe the COM port on the system you were trying earlier may be broken.
If it cannot establish a connection, then it will just close out the COM port and say, ComSerial: Closed device.
The main thing that you need to consider with IR connections (slide 30) is how far apart are the two ports from one another? It should be between one to three inches. If it is any more than that, then it cannot detect it. Also, make sure your desktop, or whatever machine that you are trying to connect from, a laptop or desktop, supports IrDA. Some of the desktops use IR downloads and things like that. Make sure all those things are properly installed.
Are the ports properly aligned? You need to align the ports as well. Make sure you are doing that.
Is ActiveSync set to use the IR port for serial communications? In ActiveSync connection settings, the setting for Serial IR communications should be enabled, so that ActiveSync will accept IR communications, and IrDA is supported.
Are the COM and IR ports enabled on the desktop computer? As I said, you need to make sure these things are enabled. Sometimes in Device Manager it may show up as disabled. It may happen with a USB port as well. If it is disabled in Device Manager, then when you right-click on that port you have a choice to enable that. You can enable that and it may start working fine. Also, make sure all the drivers are installed properly.
Is the port on the desktop computer an IrDA type port? Make sure it is an IrDA type port. If it is not, it is not going to connect.
Troubleshooting Network Connections (slide 31): For troubleshooting network connections, the obvious things that we need to take care of are whether all my settings are correct on the device as well as on the desktop. The desktop should usually have the correct settings, because you will be using it, and you will be using all network resources, for example. It is rarely the problem. But if you do not have your device completely configured correctly, then you may not be able to establish network connections. So check this.
Are IP settings, DNS, WINS, GATEWAY, SUBNET and similar settings being properly populated in your device? Is RAS properly configured on the device, if you're trying to RAS dial and then use the VPN to try to connect to the device? Is DHCP enabled, if you are using DHCP, if you connect to the local network using either VPN or through Ethernet? Make sure that is enabled. See if VPN is involved in the connection and if your VPN settings are correct.
Basically, to use ActiveSync with your mobile device, you need to have a LAN, dial-up RAS, or a VPN connection. When I say LAN, that could be an Ethernet connection. And you cannot sync directly through the Internet. You cannot just dial up your service provider and try to sync with your computer. You need to have either an Ethernet or a VPN connection, or a dial-up RAS connection to your network to establish the communication with ActiveSync.
Also, beware that the device that you're trying to establish this communication from should have already established a partnership with this particular desktop PC before this. Only if the partnership is established will ActiveSync recognize your device.
Some of the problems that you may face are the IP address that you have configured on your device may be wrong. Sometimes, setting the static IP address to 192.168.1.2 or 192.168.5.500 on your modem TCP/IP connection settings may enable you to connect to your network. These are the default IP addresses that it uses, and you may want to try that as well.
For RAS incoming connections directly to the partner PC, there are several ways to diagnose the problem. You may want to ping your machine. Actually, Windows CE, the Pocket PC 2002 itself, does not come with any ping programs or anything like that, but there is some third-party software available that will perform these kinds of operations. For example, vxUtil from Cambridge Computer Corporation has a ping utility. You may want to ping your partner machine to see if it is connected properly, to troubleshoot this issue.
Try using, again, as I said, 192.168.1.2 as the IP address, regardless of the subnet the PC is on. If you use this default IP address, sometimes I've seen it resolve the problem.
Also, make sure your partner PC (the PC that you're trying to connect to) name is eight characters or fewer. If it has a longer name, you may have problems establishing the communication during remote sync and things like that. Make sure you have an MS-DOS® compatible name for your partner machine.
To troubleshoot communications, sometimes the easiest way to do this is to use the HyperTerminal tool (slide 32). It comes with the desktop operating system, so you should be able to find it by clicking Start, clicking Programs, clicking Accessories, clicking Communications, and then you should be able to find HyperTerminal. Open HyperTerminal, try to connect, and see if you can connect it properly.
The way to do that is after you select HyperTerminal, you can select New Connection as soon as it comes up, then in the Connection Description dialog box type something user friendly, like Pocket PC Test or something like that. Then click OK. In the Connect To dialog box choose the COM port that your device is plugged into. Then choose the baud rate. The default will be 19,200. Leave all of the settings as default (Data bits: 8, Parity: none; Stop bits: 1 and Flow control: Hardware) and click OK. Then disable Active Synchronization to the cradle. Actually, while you are doing this, you should stop your ActiveSync, because if both are trying to get hold of the COM port, that's not an ideal situation. You may want to turn off your ActiveSync program when you are testing it with the HyperTerminal program. Go to ActiveSync, click Tools, click Options, and clear the Enable synchronization when cradled using box. After you clear that selection, it should be able to get out of your way from the HyperTerminal.
Then create a connection in the connection wizard. Click the Start menu, click Settings, then from the Connections tab of your device tap Connection Cycle, and then under When needed automatically connect to the Internet using these settings, tap New from the drop-down list, enter a user friendly name, like Serial Test, and then tap the Modem tab. Mind you, we are doing all this on the device. On the Modem tab type New and ensure the following settings on the main page for this new connection are there: first, that your connection name is right, Serial Test. Make sure you're using a compatible modem. It should be Hayes compatible in COM1, and then the baud rate. Then go to Advanced Settings and select Use terminal before connecting and enter the dialing commands manually. After you are done with that, tap Finish. Tap OK, and under When needed, automatically connect to the Internet using these Settings, tap Connect. After you tap Connect, hide the Connection dialog. The terminal screen should be behind it. Place the device in the cradle and test the communications. You should be able to see the characters come through to your HyperTerminal and vice versa on your device. If this is functioning properly, then your COM port communication is working, and you can concentrate on other issues.
Actually, if you go into HyperTerminal and look through the help, you may be able to find this information there. I rushed through it because we will have the Q&A session soon.
Moving on, the main topic today is troubleshooting the synchronization process (slide 33). You have successfully set up ActiveSync, and the communications as well, and then there's the synchronization portion. You may face several problems with synchronization.
One is that the device may connect and then quickly disconnect. Typically this means that the device and desktop were blocked while trying to negotiate the opening of one of the PPP and Winsock ports that ActiveSync uses. WCESCOMM will show any connection failures. As I said, usually the culprit will be another application trying to use the port, which could be firewall software or privacy software like McAfee.
I forgot to mention that during all this you may want to soft reset the device, even when communications are not established properly, or any time during the synchronization process. Sometimes the soft reset clears up the memory, if it has a lot of information in memory and tries to start again. That will probably fix the problem. As soon as you set up ActiveSync, from establishing the communications and onward, and every time you connect or synchronize, if you face problems, press the soft reset button on your device, re-cradle the device, and see if that works.
The next problem you may face is the device connects only as guest, or the existing partnership is not recognized. Sometimes it may not recognize your device name. All you need to do is remove the device from the cradle, go to Start, click Settings, click System, click Device ID, rename your device, and recradle the device, and then ActiveSync should be able to pick up from there. You should be able to pick up a new partnership and work with it. Or look through the WCESMGR.log to see if there are other issues with this. WCESMGR.log reports all the information during the synchronization process.
Another problem you may face is after a hard reset of the device the user cannot create a partnership using the preferred device name. Again, you may want to change the device name and recradle the device, and it should be able to pick it up. You also can try closing and relaunching ActiveSync.
Sometimes synchronization may be unreliable and the connection may drop unexpectedly. This may be due to other third-party programs interfering with ActiveSync. Sometimes if you are trying to sync with Outlook and the Mapi32.dll file is not the right version, if it's not in the System or System32 directory, or if there is a wrong version of Mapi32.dll in the System32 directory, then you may face this type of problem. What you can do is remove all other Mapi32.dll versions. Just perform a search on your machine for Mapi32.dll, and if you see multiple copies of Mapi32.dll, get rid of them. If you suspect a version of Mapi32.dll in your System32 directory, then go into Outlook, click Help, and click Detect and Repair. It should fix the problem. It should place an appropriate copy of Mapi32.dll on your machine.
Moving on, sometimes no SSPs will synchronize (slide 34). The synchronization's service provider for Inbox or Contacts for example may not synchronize. The way to troubleshoot this is to clear all these options for Outlook synchronization, try to perform file synchronization, and see if that works. If that works fine, then you know that it is a problem with Outlook itself. Again, you may go back to Outlook, click Help, and click Detect and Repair. Most of the time that should fix the problem. Or as I said, soft reset the device. That is the default step that you should always perform before you try anything else. It may be as simple as that.
Also, deleting and re-creating the partnership is one of the other ways to troubleshoot this particular issue.
The other problem is SSPs related to Outlook will not synchronize. I basically detailed the same thing in my previous statement. Troubleshoot Outlook using Detect and Repair.
If your AvantGo software is unable to retrieve any data, then it could point to some network problems. You may need to concentrate on your network issues to ensure that the connection is present and your Internet is working fine.
WCESMGR.log (slide 35) – I will not go completely into the details regarding WCESMGR.log. Basically it will help to diagnose any synchronization issues, because it logs each and every detail that happens during the synchronization process. These are some of the statements that you can see in WCESMGR.log. After synchronization is complete, it will say ActiveSync session completed.
Then you can also see other things like checking existing partnership on device and the device ID. It will try to check the device ID and see if that is the right device. After it verifies that, "Okay, I know this device," or if it does not recognize the device and if it is a new partnership, it will create the new partnership with the device name and the type of device, whether it is a Pocket PC or a Pocket PC 2002. I think it may use Pocket PC for both versions.
Then for the SSPs it will check whether it found the PIM, the Personal Information Manager. For example, for most of Outlook it is Outlook.exe. If it does not find it then it will report that in your WCESMGR.log, and you will know that you do not have the proper version installed for this particular activity. You may need to reinstall Outlook.
Again, there are more sample logs within WCESMGR.log (slide 36). There is this conflict with one appointment, and it will show up there. You can remove that one particular appointment and try to redo the sync, and that may work. Also, if it does not like anything about the Outlook installation, and if it is just one item — for example, Contacts are not being synchronized because it has an attachment that you cannot open — even that will be detailed in WCESMGR.log. If it is just a single item, then there is another log file, called OUTSTORE.log.
Mind you, all these log files are located in your system temp directory. You can look through these log files and see if there are any error messages there. Depending on the results, you can troubleshoot your issue.
Again, as I said, OUTSTORE.log (slide 38) shows that this contact cannot be synchronized for some reason. If it is an attachment problem with either your Contacts or e-mail, then you may want to remove that attachment and try to re-sync. Maybe John has some more information regarding that, and we'll be able to talk about that in the Q&A session.
Tips for troubleshooting synchronization problems (slide 39): remember that WCESMGR.log will only log useful information if the desktop and device were able to successfully negotiate a connection. This will not log any connection information, so you need to look in WCESCOMM.log for any connection information.
If ActiveSync fails to recognize the partnership, restart or recradle the device. Take it out of the cradle then recradle the device. Soft reset the device, and see if that works.
If an SSP fails to sync, reconnect the device, reboot both the device and desktop. That might work. Or use Outlook Detect and Repair if the problem is with Outlook SSPs.
If you suspect an invalid setting in the registry, compare the user registry to a known-good install, maybe one of your colleague's machines. If you have access to another machine, you may want to check under Windows CE Services HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsCE\Services to see if all the registry keys are okay and match the server machine.
Also, in situations where a particular object cannot resynchronize and OUTSTORE.log does not show which item may be the problem, use the sync settings to limit the number of items that can be synced. Limit the items one-by-one to isolate the problem. You should be able to isolate that way. If you suspect that the problem is with Contacts and most of the contacts are going through, but some of them that have attachments have problems, it may be the contact with attachments, or something like that.
Moving on (slide 40), the top issues that we face are Outlook sync issues. To troubleshoot you may clear options for Inbox, Calendar, Contacts, Tasks, and Notes in your sync and run Outlook Detect and Repair. It will fix any problems that you may have on the desktop machine. Any problems detected must be resolved before ActiveSync will work correctly. If you see any problems during Detect and Repair, repair them. After everything is set, then retry the sync.
Next is problems running ActiveSync in Compatibility Mode under Windows 2000 and Windows XP. We are going to elaborate a little bit more on that in the Q&A session, because my colleagues here have more recent information regarding that issue.
When you have ActiveSync on your desktop, when you right-click it and select Properties for your ActiveSync, you have a check box where you can set the compatibility for your ActiveSync. Sometimes, when you select compatibility for Windows 95/Windows 98 or something like that and you are running on Windows XP or Windows 2000, it may create Windows Messaging subsystem registry entries in other locations in the registry, and it will confuse ActiveSync and Outlook. Outlook creates it in a separate location, and when you select Compatibility, it will create it in a separate location. So that will cause some problems. Ideally Compatibility should be cleared.
The next problem is device not detected. The most common cause is connecting the Pocket PC before a complete install of ActiveSync. As I detailed earlier, if you just connect your device and the Found New Hardware Wizard comes up and installs some phony USB driver, then ActiveSync may not be able to work with it. Make sure you install ActiveSync first, and then try to connect your device.
The other problem is connects as Guest only. You may need to reset the device. That is a default step that you should try every time sync fails.
We have seen that sometimes you may need to register the Msxml3.dll on your desktop. For some reason ActiveSync uses this .dll, and it needs to be registered properly.
Again, I've been saying this all along, the firewall software may be interfering. Disable the firewall and then restart ActiveSync, and restart the PC just to make sure. The Windows XP firewall usually does not interfere with ActiveSync, but if you are facing problems, you may want to turn that off as well, and then try to run ActiveSync again.
McAfee software may interfere with TCP/IP checks. As I said, this may happen during the preinstallation wizard, when the ActiveSync setup is doing the TCP/IP check, or when everything is done but when you connect the device it just doesn't detect the device — it just says "Connecting" and it never completes it. Maybe the McAfee privacy software is interfering there. You need to uninstall the McAfee software and try the sync again. You may install the software later on, after everything is working correctly. Otherwise, you may want to check on the McAfee Web site to see if they have any updates or if there is any way to make it not use the TCP/IP port that ActiveSync wants to use.
For prewizard errors, the most common thing is the temp environment variable is not properly set on the machine. If you recall, MSAsync.exe, the installation program, will temporarily copy the files to the temp folder and then take the files from there, according to the .inf file, to install those files in the appropriate directory. If the temp folder itself is not properly configured, then that may be the problem with your installation.
That was the presentation. We can go on to the Q&A session now.
Otto Cate: Thank you very much for the presentation. There was definitely some really good information. Before we fully transition into the Q&A, I'd like to share a couple of quick program notes with our audience.
As a reminder, the Q&A portion of the Support WebCast is intended to encourage further discussion of the topic today. One-on-one product support issues are outside the scope of what we're able to address during the WebCast. If you do to need some more complex technical assistance, it would probably be a good idea to contact Product Support Services directly and speak to a Support Professional, either by phone or by opening an online incident.
As was mentioned earlier, we have a couple more people joining us for the Q&A. We have Brian Haley, who is a Consumer Support Engineer for the Mobile Devices division. And we have John Wingard as well, who is a Support Professional in Developer Support, the Consumer division. It's great to have you guys.
Let's get into these questions. I know we touched on debug a little bit earlier. I'm not sure if this is within the scope, but I'm going to ask it, just in case: How do we set a break point for debugging the ActiveSync provider on the device?
Raghavendra: Actually, this could be out of the scope of this talk, and I'm not sure I understand the question properly, but you may be asking, "I have written an ActiveSync provider myself, or I am using another ActiveSync provider, and I know that there is a problem with the SSP. I want to debug it and find out what is happening underneath." You may need to try to debug the device and find out where exactly it is failing — what IP is failing and which particular driver or .dll is failing. I will not elaborate on that now. You may want to submit a support incident if you are facing a problem with debugging and things like that, and we can definitely help you with that.
Otto: This may have also been addressed during the presentation, when we were discussing some of the communication issues. It looks like: Users are receiving error messages similar to "Critical communication systems have failed to start. To correct this error, exit all applications and restart Windows. If this problem persists, please reinstall ActiveSync by running Setup." This seems to only happen when McAfee firewall is running. Is that an issue you guys have seen, and is that normally the case?
Brian Haley: Definitely, the McAfee stuff does generally tend to interfere. We get a lot of cases where that is interfering. We don't exactly understand what it is, because there are a tremendous number of variables in that situation. When we get a customer on the phone with an issue like that, we generally tell them, "Let's uninstall McAfee products, Norton products, and other system fixes, virus scanners in some cases, and firewalls." We ask them to uninstall it just to make sure that it is not running in memory. Then of course, we advise to reinstall it after we've completed the troubleshooting process and see if it interferes again.
John Wingard: In regard to that, sometimes the virus software is trying to manage ports that are used by the networking that is created. When the communications device is attached, it's actually running its own network, a consolidated network that is not seen by the outside, but is still subject to port protection and detection with regard to any antivirus software. That's where it's most likely going to affect the functionality of that communication. So that's one of the reasons why we suspect that antivirus software can get in the way.
Raghavendra: Actually, when such a thing happens when connecting or synchronizing the information and you find that the connection was established properly, but now it is trying to connect and it's taking a long time, that is a clue right there that some other program may be using the port or may be interfering with your ActiveSync. The likely culprit will be antivirus software (the virus checkers), the firewall software, and the McAfee privacy protection software. You may want to uninstall them and try troubleshooting the issue. After you are done troubleshooting, you can reinstall that software.
Otto: I have an iPAQ 3635 with Pocket PC 2002 Service Pack 3 running ActiveSync 3.6. Somehow I got into a mode where it seems to think that I've queued up an install. It's basically waiting to be installed, and it always pops up the Install Application screen when I dock the unit. Is there some kind of registry setting or file that I can remove to stop this? I've done a hard reset and reinstalled every program on the iPAQ, but it seems to still be occurring.
Raghavendra: If it is only happening on the device, then a hard reset should have taken care of that problem. If you have some applications in the startup of your device and as soon as you cradle the device it tries to start those programs or those installations, try to find out if you can remove those from the device startup. If not, you may want to submit an incident to us and we should be able to work with you.
Brian: Another possibility, if this kind of error message is coming, for example, when you put it in the cradle and it comes up on your computer, then ActiveSync, for some reason, believes that the application may not be installed on the device itself. Sometimes some applications give you a prompt on the device, and ActiveSync, on the host computer, tells you, "Check your device to see if you need to do anything further." Sometimes those popup messages don't always pop up onto the device. After a hard reset, if this still happens, another thing that you can do is remove and reinstall ActiveSync. At that point you're going to have to reinstall your applications, too. If you do have one particular suspect application that's in the Add/Remove Programs for ActiveSync, you can also remove it. You open up ActiveSync, choose Tools, and then choose Add/Remove Programs. From there, there are instructions on the screen on how to remove it from the computer and from the device itself.
Raghavendra: John, are there any situations where people are trying to perform the sync over GPRS and getting this "Critical communications" error?
John: With regard to the question previous and the "Critical communications," where it's not starting, there are a couple scenarios that can generate this. We have found if we're running Outlook 2002 from the Office XP suite and the backup utility for the .pst file, the personal folder, has been implemented — it's a COM add-in into Outlook. It is recorded as being compatible with Outlook 2000 and 2002, but when it is installed in Outlook 2002, ActiveSync will have a problem with it. At this point, we do not have any workarounds but to uninstall that COM add-in. That's one scenario in Outlook 2002.
In Outlook 2000 and Outlook 2002 this can be a product on the shortcut that's presented to us on the desktop for ActiveSync. In Windows XP only, when you check the properties of that shortcut by right-clicking on the icon and selecting Properties, then selecting the Compatibility tab, there is no supported reason to have this selection in here. We have seen where this selection seems to be applied for one reason or another. We have not been able to fully understand the circumstances that it takes for this particular selection to be applied, but we have seen it come up in certain cases and with different types of responses. For events where we're not sure what could be driving the particular issue, we will take a moment to look at the Properties of that icon in Windows XP and make sure that this is not selected. It is very obscure, and in normal troubleshooting it's not a common place to look, so we're focusing more and more on that. Again, we still don't understand the sequence in which this can occur. We have seen it happen after the product has been installed and something else has been installed that influenced the way that it thought it was supposed to work. But that check has revealed three or four different major errors that are stopping the synchronization process.
Raghavendra: As a follow-up to that, when you have Outlook sync issues, as John mentioned, it could be due to that Outlook Backup COM add-in utility. The way to uninstall it is go into Tools, Options in Outlook and select COM Add-ins (in Outlook 2002, select the Other tab, then click Advanced Options, then COM Add-ins). Then select the Outlook Backup Utility.
John: To clarify there, our original thought was that this was an updated version of the COM add-in. After further investigation we found that the Outlook team supports this in both versions, Outlook 2000 and Outlook 2002. This is an isolated incident with the way ActiveSync is interacting with Outlook. What Raghavendra was going to give us was a URL for a fix for this. It ended up being the same version for both Outlook 2000 and Outlook 2002. To accommodate a backup process, with regard to utilizing ActiveSync and Outlook 2002, we have to make a decision as to which one we're going to use. Most likely, to be successful with ActiveSync, we're going to need to perform a manual backup of our .pst file or we'll need another means of backing up. But the utility needs to be uninstalled.
Otto: We're coming pretty close to the end of the show. We still have quite a number of questions that we need to address. At this point I'm going to need to cut off any more incoming questions, just to ensure that we can get through as many of these as possible. Thank you very much for submitting your questions today.
Is it possible to set up a sync with a workstation directly from an 802.11b card without first establishing a partnership through USB or serial?
Brian: No. The partnership has to be established (USB, serial, or infrared) first. That's pretty much for security reasons. We want to make sure that you're actually going to be synchronizing with the proper computer. If you were allowed to set that up over any kind of network or wireless connection, it would be a pretty big security hole. You'd be plugging into some computer, and that person would probably not be happy.
Otto: How would I set up a notification that a new object is created, for instance using remote access programming interface (RAPI) to create a file on the device and signal REP log, I believe it is, for new object create? Is that something that's within the scope at all?
Raghavendra: Actually, it is not. We are just concentrating on troubleshooting ActiveSync connection and synchronization issues today. But there are notification APIs that you could use to get those kinds of notifications. It is well-documented. You may want to go through the documentation for Windows CE, and just type in notification events. I think it is under notification events, or something like that. And you may need to just search through the documentation. I don't have that particular API off the top of my head right now, but you should be able to do that.
Otto: Regarding the guest connection issues, we tried re-registering Msxml3.dll, and it doesn't seem to have helped. I know that we touched on this in the slides. Just as a clarification, are there any other available workarounds?
John: For a guest connection?
Otto: Yes, a guest connection issue.
John: There are a couple of ways a guest connection can come to be. The ones that we can address in looking for other applications that may be involved, or in regard to re-registering that .dll, the scenario is that you are able to connect, create a partnership, and you get connected as a normal connection. Everything syncs on the first established connection, but the next time, and every time following that, when you place the PDA in the cradle, it will come up as a guest. This is the scenario with registering the Msxml3.dll file or re-registering it (it hadn't been registered correctly somewhere along the line in the install). And it was also found that there could be third-party products running that could affect this. One that comes to mind is known as Aventail. I'm not familiar with the complete functionality of this particular application, but it is one that can be configured to allow ActiveSync to function.
This is where, again, we're working with the network functionality and the different ports that are utilized, where there are the PPP connections as well as just the general network ports. When guest connections in a direct-connect occur, it can be a fault of the product or the device itself, and therein lie the reasons to try a soft reset. See if that will cause it to be detected properly.
Usually, those kinds of scenarios will come up where you'll be able to install correctly and you will get a connection with the device. But in fact, the first connection, even though it registers the device shared name, it immediately switches to guest within that same instance. These kinds of cases have been shown to be more relevant to the device having a problem with proper detection. It's somewhat masked in that we see the device being detected properly in Device Manager as a USB device, it correctly identifies it as its proper name, yet we're missing just enough resources, if that's what it is, to communicate properly. That's where checking on a second system always comes in handy.
Raghavendra: As a follow-up to that, maybe your partnership may be wrong, and it is not able to detect your device properly. Even though you have set up your partnership once, maybe the partnership or the device ID or something has been corrupted. You may want to create another partnership for your device, or maybe change your device name and recradle the device. That may take care of the problem as well.
Brian: Right, and there are a couple of cases where customers have called up and we have received the indications from some of the log files, specifically the WCESCOMM log, where it says that the partnership ID is not recognized. In some cases like that the actual partnership ID is bad on the device, and even changing the device name doesn't help, even creating new partnerships doesn't help. And in those cases, oftentimes, we've had to hard reset the device. Of course, that resets everything, but it gets them working.
Raghavendra: One of the other things that you could do is to check whether the partnership ID and things like that are actually registered in the registry. You can go to HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsCE\Services\Partners, and there you will see the partnership ID and other details. If that is wrong, for some reason, then that calls for creating a new partnership.
Otto: Just a follow-up on that: Do you know whether or not ActiveSync would detect and fix that automatically at some point? Do we have any public information on whether an update like that is going to be available?
Raghavendra: I don't understand exactly what we are talking about here, you might be asking whether we have any hot fixes or anything in mind for the guest connections. If it poses a problem, even when you reinstall ActiveSync or try the new partnership and things like that, then you may want to submit a support incident. Depending on the severity of the issue, we may need to escalate it and write a hot fix.
Otto: You mentioned some registry keys early in the presentation, for the TCP/IP checks, including Winsock and Winsock2. Can you repeat those?
Raghavendra: Yes. It is HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services and underneath that, the Tcpip\Winsock and Winsock2 keys.
Otto: Okay. It's under Services. Are there any tools available for measuring the transfer performance of ActiveSync and maybe some benchmark numbers so I can evaluate if my system is transferring as fast as possible?
Raghavendra: There could be third-party tools, but I'm not aware of those. But one other option could be to use NETMON or something like that. I think that also gives you the rate at which it is transferring. I'm not really sure on that, but there are no Microsoft tools available to do that.
Otto: Regarding the .inf files that we mentioned earlier, if they are 1 KB or bigger, should I leave them alone? My folder currently has well over 1,100 .inf files in that folder, but it appears that they're not necessarily 0 bytes.
Brian: No, that one particular issue was identified. Some system helping utilities seem to duplicate .inf files and would fill up that directory with 0-byte .inf files, and that's the key differentiator there, is that they're 0-byte files. We've seen even ±30,000-40,000 of those files in some cases. So disregard any 1-KB files.
John: These files, the large numbers of files with 0 bytes, are identified primarily as OEM with a number following that, and it's continuously sequenced up to whatever number you might have, and 40,000 has been seen. It takes hours to clean these things up. Although that's been somewhat isolated, it still does come into effect. It mostly shows up during an endless loop of hardware detection.
Otto: Regarding install, can we upgrade ActiveSync over a previous version, or should we uninstall then reinstall? If that's the case, obviously we will lose our settings, so we're wondering if there's any way to save them before uninstalling.
Raghavendra: Ideally upgrade should work fine. The way it detects is as follows. If there is a folder called Program Files\Microsoft\ActiveSync, if that folder exists and the appropriate registry key exists in the registry, then it will take a look at the registry key. If there is a registry key called Install There (I do not have the exact location), it will look at the Install There registry key and see where it is installed and which version it is. If it is lower than version 3.6 or 3.5 it will upgrade and replace the appropriate files. So upgrading should be okay.
John: You might be upgrading because you're trying to resolve a problem, and you've already attempted to uninstall and reinstall the current version. When uninstalling, concerning the settings, the primary settings that are available on the surface of the product are the items that you're going to want to sync. In consideration of actual settings, you may consider changing the default settings for when you want this synchronization to occur, when you're connecting — whether it's going to be a manual synchronization only when you command it, or you may want certain mail types to be synchronized from your Inbox and your dates to correspond to the kind of mail you would want to have downloaded. All of these are not saved. They would need to be reset. But that would be minimal. The data itself would still be intact in your .pst file or your store file in Outlook, as well as whatever data you have on your PDA.
Raghavendra: As a follow-up to that, because we are on installs, I just want to mention a couple of things here. There have been problems when setup has failed, and in some of those situations it was a conflict with the video driver. If it is an NVIDIA driver, version 5.13.301.2192, then you may need to get an update from NVIDIA or change the video driver, and that will take care of the setup.
Other things, if you are facing problems with the install, the easiest thing for you to do is to look under WCESSETUP.log, as I said earlier, and you may want to just look for lines that say, for instance, "Warning" or which have "Unsuccessfully copied," "Unsuccessful registration," or "Unsuccessfully" or those kinds of keywords, such as "Not replaced," "Not copied," "Failure," and these kind of things. Just look for those things and you should be able to figure out what exactly is happening. Based on that you may want to reinstall ActiveSync.
Otto: Let me address the final question that we're going to be able to get to in the time allowed here. We'll mark the rest of these for offline follow-up and get the users the answers directly, through e-mail. As a benefit to the rest of the audience, we'll make sure that we get these into the Q&A section of the transcript.
Do we need to enable legacy USB in the BIOS for ActiveSync to work?
Raghavendra: Actually, I do not know what exactly they are referring to, but USB should be enabled in the BIOS for it to work. I do not exactly know what legacy USB is.
John: I have encountered that, and there have been times with this setting and for some USB devices that it is worthwhile to consider toggling from a position that it's currently in, in the BIOS. If it's not detecting properly, then as a troubleshooting step you can toggle this, be it on or off, to do the opposite, and give it a try. It's not a confirmed setting that would be required to make this work.
Otto: Great.
Raghavendra: Before we close I need to mention one more issue here. When you're running the setup program, if you are running it from the CD, there is a Setup.exe on the root folder. There is one under MS\ActSync\Main. So the setup that you would want to run is MS\ActSync\Main\Setup.exe, and not the one in the root folder. I just wanted to mention that.
Otto: Thank you very much for that clarification. With that, we have run out of time here today. I'm going to wrap up this session. I wanted to thank you all for joining us and hope that the information was useful. I definitely wanted to thank our presenters for coming out and giving us some great information and working through the Q&A.
As we end the show today I'd also like to ask you for some feedback. Our overall goal is to ensure that we're providing you the right content in the best way possible, so that feedback is absolutely important to us. You can e-mail your feedback to supweb@microsoft.com.
Again, for the remaining questions that were submitted today but left unanswered, we'll make sure to get these answers to you by e-mail, and we'll append the supplemental Q&A to the transcript for the benefit of the rest of the audience.
Thank you, again, everyone. I hope that everyone has the opportunity to tune in again soon. Have a great day.
{Supplemental Q&A:
Question: I have had a lot of situations where Active Sync 3.6 gets into a mode where it is using 80-90 percent of the computer time even when the Pocket PC is not plugged in. A reboot corrects the problem for a while. Is this something you've seen?
Answer: No, we have not seen this problem. If this happens only with this one computer (which I assume is the case), then it needs further investigation, to see what programs/services are running on this system. If you continue to experience this problem, you may want to open a support incident with Microsoft.
Question: When one uses SQLCE to connect to a remote database is Active Sync involved, or does the SQL connection go through TCP/IP without involving ActiveSync?
Answer: SQLCE can use TCP/IP without ActiveSync. However, you can use ActiveSync if you want to access the remote database through SQL Server CE Relay. Please see the following documents for more information on SQLCE connectivity with or without ActiveSync:
"Troubleshooting Microsoft SQL Server 2000 Windows CE Edition Connectivity Issues"
302349, "HOWTO: Perform RDA Pull by Using SSCERelay and ActiveSync"
315514, "HOW TO: Synchronize Mobile Databases by Using SQL Server CE Relay"
Question: I have one Pocket PC and Active Sync on two different desktops. When I switch between different desktops I have to reboot the Pocket PC to get a synchronized connection on the new desktop using a USB connection. Turning the device off and on doest not help. Is this normal? If I use 802.11b I also have to do a device reset to be able to switch from one desktop to another.
Answer: As far as a USB connection is concerned, a desktop computer can set up partnerships with many different mobile devices, but a device can have partnerships with only two computers. So, as long as the partnership is established between with that desktop computer and device and the desktop ActiveSync can find the partnership in the registry (HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners) and the partnership folder under the profiles directory, there should be no problem establishing the connection. However, if for some reason the PPC (client side AcitveSync Repllog.exe) is not able to communicate with the desktop, which can happen for various reasons, a simple reset should fix the problem.
In terms of 802.11b connections, to sync remotely with the second partner PC you can click Start, select ActiveSync, select Tools, select Options, and select the appropriate partner PC from the list.
If it is the same LAN, then there should be no problems. However, if you are moving between networks, cached credentials will be used, so you may need to perform a soft reset to connect with the new network. In any case, a simple reset should be the way to go.
Question: If you are using 802.11b and there are several possible access points available on different subnets, and you are connected to MSN® Messenger with a Pocket PC, should the device automatically reconnect to the strongest access point as one walks through the facility?
Answer: Between networks it will, but for different subnets it depends on the Wi-Fi driver. Please contact the manufacturer for more information.
Question: What about using IntelliSync with ActiveSync? Do you have keep ActiveSync running?
Answer: IntelliSync is an alternative to ActiveSync, so you use one or the other.
Question: We also found that the host name needs to start with the alpha character. If it starts with a number, it cannot sync with the desktop. Is this a known issue?
Answer: This is not a known issue. We can successfully sync with partner PCs whose host name starts with a digit. We can do this with local USB or remote (Ethernet) sync to the partner PC.
However, if you are using an 802.11b wireless network to sync remotely by Ethernet, we have seen some host name resolution problems with that, so please contact your Wi-Fi manufacturer.
Question: Regarding guest mode: What if a client does not want to rename the Device ID, and a soft reset does not work? We do not want to have to rename the device constantly.
Answer: That is just one of the solutions. If you do not want to rename the device, you need to troubleshoot the problem and figure out why it is connecting as guest only. One of the reasons we have seen this happen is due to Msxml3.dll not being registered correctly. You can use Regsvr32 to register it. One other reason I mentioned this in the WebCast is the device is using long device names, so a safer procedure would be to use a name fewer than 8 characters long. Also, if you have an existing partnership with the same name as the device, you may want to delete that and create a new partnership. Also, you can connect as guest and use the backup/restore menu to restore a previous backup (if you have one) which includes the partnership name. If none of this helps, you can use steps you would normally use to troubleshoot a connection issue, re-installing the device in the device manager, and re-installing desktop ActiveSync.
Question: My device installs fine and syncs fine, but it loses its partnership once every two weeks.
Answer: This can happen if the battery goes dead, or if the Pocket PC has been hard reset (a cold boot). On the desktop PC side, if the PC is using a different Windows profile, a new partnership is required (partnerships are per Windows user, per device). Otherwise, there are no known causes. Your device or software may be experiencing some problems. If you have a consistent reoccurrence of this problem, you may want to open a support incident with Microsoft to get this investigated.
Question: I did not understand how to check if I'm using "compatibility mode" on Windows 2000.
Answer: On Windows XP, right-click any program's shortcut (including those on the desktop or those in the Start menu), then click Properties. On the Compatibility tab, none of the check boxes should be selected. ActiveSync runs fine on Windows XP, and running it in Windows 98 compatibility mode will cause problems with the Outlook sync items. This is not for Windows 98/Windows Me.
Question: I find that after I disconnect my PDA, ActiveSync on the PDA will not close. The software says it is not responding. Closing will lose any unsaved data. Is this normal?
Answer: This is normal. ActiveSync is not designed to be manually stopped through the Start menu applet. You should always use the ActiveSync UI to start or stop it.
Question: I am a new user. Regarding synchronizing files, like Today themes or .jpg files for mobile viewing, for example, do these files need to sit indefinitely in the program's Options/Files/Settings area if they need to be present day-to-day on the mobile device?
Answer: If you want to synchronize file changes, go to ActiveSync, select Tools, select Options, select Files, click the Settings button and specify a synchronization folder (you would place all the files that you want to synchronize in this folder on your desktop).
Question: What is new in ActiveSync 3.6, is it worth moving from ActiveSync 3.5?
Answer: ActiveSync 3.6 adds support for Smartphone. For Pocket PC 2002, there is no difference between ActiveSync 3.5 and ActiveSync 3.6.
Question: When syncing using ActiveSync 3.6, if the Favorites selection is cleared I get a "Synchronization error," and the Pocket PC disconnects. If I have Favorites selected it syncs correctly. How do I clear Favorites? I have tried uninstalling and reinstalling Active sync, but there is no change. My OSs are Windows XP Professional for the desktop and Pocket PC 2002 EUU3.
Answer: This is not normal for any version of ActiveSync. Please contact your manufacturer.
Question: I get a "Cannot create another system semaphore" message when I try to copy a Pocket PC Access database with Access on the desktop. I ran DCOMCNFG and it seems to be configured correctly (i.e., "Allow Access" is given to System and Interactive users).
Answer: Completely un-installing the McAfee software or upgrading Vshield to latest version has resolved this problem in some cases. You may want to check the McAfee Web site.
Question: I get a critical communication error on the PC with ActiveSync 3.6 if I try to sync through GPRS.
Answer: As mentioned in the WebCast, the reason for this is another program is using the port that ActiveSync normally uses. We have found this error in the following situations:
In firewall software: If you have ZoneAlarm or McAfee Personal Firewall, please uninstall them; this has previously resolved this issue. After uninstalling, check with the appropriate company for updates.
In Real Server for Real Player: Uninstalling this has previously resolved the problem; please check with the software vendor for updates.}
|