Simptome
Luați în considerare următorul scenariu:
- Aveți o aplicație care rulează pe un dispozitiv bazat pe Windows Embedded CE 6.0 R3.
- Aplicația apelează funcția SetLocalTime pentru a actualiza ora locală pentru dispozitiv.
În acest scenariu, este posibil să descoperiți că ora locală a dispozitivului se deplasează cu o oră ocazional după apelarea funcției.
Notă: Este posibil să întâmpinați aceeași problemă și atunci când utilizați funcția SetSystemTime.
Cauză
Această problemă apare deoarece funcțiile SetLocalTime și SetSystemTime nu sunt sigure pentru fir. Funcțiile modifică o variabilă globală din kernel, iar această variabilă nu este protejată corect de un obiect de secțiune critică.
Rezolvare
Informații despre actualizarea software-ului
O actualizare de software acceptată este acum disponibilă de la Microsoft ca Actualizarea lunară Windows Embedded CE 6.0 martie 2012. În secțiunea "Informații despre fișier", numele de fișier al pachetului conține versiunea produsului, data, numărul articolului din Baza de cunoștințe și tipul de procesor. Formatul numelui de fișier al pachetului este după cum urmează:
Versiunea produsului-aaallzz-kbnnnnnn-tip de procesorDe exemplu, Wincepb60-110128-kb2492159-armv4i.msi este remedierea ARMV4i Windows Embedded CE 6.0 Platform Builder care este documentată în articolul 2492159 din baza de cunoștințe și care este conținută în actualizarea lunară din ianuarie 2011.
Pentru a rezolva imediat această problemă, descărcați această actualizare lunară Windows Embedded CE 6.0 de pe următorul site web Microsoft.
Centrul de descărcare Microsoft
Cerințe preliminare
Această actualizare este acceptată doar dacă toate actualizările lansate anterior pentru acest produs au fost instalate, de asemenea.
Cerința de repornire
După ce aplicați această actualizare, trebuie să efectuați o compilare curată a întregii platforme. Pentru aceasta, utilizați una dintre următoarele metode:
- În meniul Generare , faceți clic pe Clean Solution, apoi pe Build Solution.
- În meniul Compilare , faceți clic pe Reconstruire soluție.
Nu este necesar să reporniți computerul după ce aplicați această actualizare de software.
Informații despre înlocuirea actualizării
Această actualizare nu înlocuiește alte actualizări.
Informații despre fișiere
Versiunea în limba engleză a acestui pachet de actualizare software are atributele de fișier (sau atributele de fișier mai recente) listate în tabelul următor. Datele și orele pentru aceste fișiere sunt listate în UTC. Când vizualizați informațiile despre fișier, acestea sunt convertite la ora locală. Pentru a găsi diferența dintre UTC și ora locală, utilizați fila Fus orar din elementul Dată și oră din Panou de control.
Fișiere de instalare
| Nume fișier | Dimensiune fișier | Dată | Oră |
|---|---|---|---|
| Wincepb60-120319-kb2686451-mipsiv_fp.msi | 3,493,888 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-sh4.msi | 3,149,824 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-x86.msi | 2,985,984 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-armv4i.msi | 3,493,888 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-mipsii.msi | 3,334,144 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-mipsii_fp.msi | 3,448,832 | 20-martie-2012 | 18:21 |
| Wincepb60-120319-kb2686451-mipsiv.msi | 3,371,008 | 20-martie-2012 | 18:21 |
Files that are included in this update package
| Nume fișier | Dimensiune fișier | Dată | Oră | Cale |
|---|---|---|---|---|
| Time.c | 23,298 | 08-Mar.-2012 | 01:42 | Private\Winceos\Coreos\Nk\Kernel |
| Nkmain.lib | 2,746,064 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Armv4i\Debug |
| Nkprmain.lib | 2,782,924 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Armv4i\Debug |
| Nkmain.lib | 1,767,370 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Armv4i\Retail |
| Nkprmain.lib | 1,792,798 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Armv4i\Retail |
| Nkmain.lib | 2,588,508 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Mipsii\Debug |
| Nkprmain.lib | 2,624,494 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Mipsii\Debug |
| Nkmain.lib | 1,676,650 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Mipsii\Retail |
| Nkprmain.lib | 1,706,794 | 08-Mar.-2012 | 01:39 | Public\Common\Oak\Lib\Mipsii\Retail |
| Nkmain.lib | 2,663,356 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsii_fp\Debug |
| Nkprmain.lib | 2,699,618 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsii_fp\Debug |
| Nkmain.lib | 1,736,352 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsii_fp\Retail |
| Nkprmain.lib | 1,766,604 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsii_fp\Retail |
| Nkmain.lib | 2,620,962 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsiv\Debug |
| Nkprmain.lib | 2,657,080 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsiv\Debug |
| Nkmain.lib | 1,701,878 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsiv\Retail |
| Nkprmain.lib | 1,731,924 | 08-Mar.-2012 | 01:40 | Public\Common\Oak\Lib\Mipsiv\Retail |
| Nkmain.lib | 2,701,072 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Mipsiv_fp\Debug |
| Nkprmain.lib | 2,737,466 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Mipsiv_fp\Debug |
| Nkmain.lib | 1,768,040 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Mipsiv_fp\Retail |
| Nkprmain.lib | 1,798,190 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Mipsiv_fp\Retail |
| Nkmain.lib | 2,183,008 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Sh4\Debug |
| Nkprmain.lib | 2,208,240 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Sh4\Debug |
| Nkmain.lib | 1,520,142 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Sh4\Retail |
| Nkprmain.lib | 1,544,514 | 08-Mar.-2012 | 01:41 | Public\Common\Oak\Lib\Sh4\Retail |
| Nkmain.lib | 2,174,422 | 08-Mar.-2012 | 01:38 | Public\Common\Oak\Lib\X86\Debug |
| Nkprmain.lib | 2,202,554 | 08-Mar.-2012 | 01:38 | Public\Common\Oak\Lib\X86\Debug |
| Nkmain.lib | 1,532,248 | 08-Mar.-2012 | 01:38 | Public\Common\Oak\Lib\X86\Retail |
| Nkprmain.lib | 1,552,260 | 08-Mar.-2012 | 01:38 | Public\Common\Oak\Lib\X86\Retail |
Referințe
Pentru mai multe informații despre funcția SetLocalTime, vizitați următorul site web Rețea Microsoft pentru dezvoltatori (MSDN):
SetLocalTime Pentru mai multe informații despre funcția SetSystemTime, vizitați următorul site web MSDN:
SetSystemTime Pentru mai multe informații despre un obiect de secțiune critică, vizitați următorul site web MSDN:
Critical Section Objects (Windows Embedded CE 6.0) Pentru informații suplimentare despre terminologia actualizărilor de software, faceți clic pe următorul număr de articol pentru a vedea articolul în Baza de cunoștințe Microsoft:
824684 Descrierea terminologiei standard care este utilizată pentru a descrie actualizările de software Microsoft