BUG: eMbedded Visual C++ Always Displays CPU Mismatch Warning (307476)



The information in this article applies to:

  • Microsoft eMbedded Visual C++, Version:4.0

This article was previously published under Q307476

SYMPTOMS

Microsoft eMbedded Visual C++ displays a warning message that the CPU of the selected target does not match that of the remote Windows CE device connected to the Windows 2000 (Service Pack 1 or later) or Windows XP development host. For example, when the user clicks Go from the Build Debug menu while targeting a Pocket PC with an SH3 CPU, the following error message may appear:
CPU Mismatch Warning
The CPU does not support configuration SH3!
Executable will not run on device.
Continue?

There are two buttons on the message box that are labeled Yes and No.

The warning message appears even though the selected target CPU and that of the remote Windows CE device actually do match.

CAUSE

The eMbedded Visual C++ integrated development environment (IDE) fails to read the CPU type information from its internal database. After it gets the correct CPU type from the remote device it checks the value against what it attempted to read from its database and the comparison fails. It then displays the warning message.

RESOLUTION

The message is just a warning. The eMbedded Visual C++ IDE downloading and debugging features still work regardless of the message. As long as the CPU target selected matches that of the remote Windows CE device, it is safe to ignore the warning and click Yes to continue debugging.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

This problem did not appear until Windows 2000 Service Pack (SP) 1. In versions prior to Windows 2000 SP1 there appears to be a bug in the ODBC driver that allows queries to return correct results even though the SQL statement was malformed. This problem has been corrected in SP1 and now the SQL statement executed by the eMbedded Visual C++ IDE must be correctly formed. The correction in SP1 manifested the CPU mismatch warning problem in eMbedded Visual C++.

The warning message does not always appear when the user is updating the remote executable file. It only appears after the target platform has been selected. The warning message appears again after the user selects a different target platform.

REFERENCES

More information about building and debugging an application for Windows CE can be found in the eMbedded Visual Tools 3.0 Help topics "Building in the Development Environment" and "Testing and Debugging an Application."

Modification Type:MinorLast Reviewed:8/18/2005
Keywords:kbbug kbnofix KB307476