Remediere: Excepție când mai multe fire apelează funcția C run-time "atexit" în același timp în Windows Embedded Compact 7

Introducere

Acest articol descrie o problemă în care oexcepție n apare când mai multe fire apelează funcția C run-time "atexit" în același timp în Windows Embedded Compact 7. O actualizare este disponibilă pentru a rezolva această problemă. Înainte de a instala această actualizare, trebuie să se instaleze toate actualizările emise anterior pentru acest produs.

Simptome

Când mai multe fire apelează funcția C run-time atexit în același timp în Windows Embedded Compact 7, se poate produce o excepție. Excepție se produce atunci când codul care apelează funcția atexit nu este publicată sau când funcția atexit este introdus de compilator.

Cauza

Această problemă apare deoarece funcția C-Run time atexit nu este fără fir. De aceea, tabelul de memorie care utilizează funcția este deteriorat.

Rezolvare

Informații de actualizare software

O actualizare de software acceptată este acum disponibilă de la Microsoft ca Windows Embedded Compact 7 lunar Update (iunie 2017).

Notă Această Windows Embedded Compact 7 lunar actualizare este disponibilă pentru descărcare de la următorul site Web Microsoft Download Center:

Windows Embedded Compact 7 actualizări

Cerințe preliminare

Această actualizare este acceptată numai dacă toate actualizările emise anterior pentru acest produs, de asemenea, s-au instalat.

Cerinţă de repornire

După ce Aplicați această actualizare, trebuie să efectuați o compilare curată a platformei întreg. Pentru aceasta, utilizați una dintre următoarele metode:

  • În meniul de compilare , Soluții curată, și apoi faceți clic pe Compilare soluții.

  • În meniul de compilare , faceți clic pe Reconstrui soluții.

Nu trebuie să reporniți computerul după aplicarea acestei actualizări de software.

Informații despre înlocuirea vreunei actualizări

Această actualizare nu înlocuieşte orice alte actualizări.

Informații despre fișier

Deoarece aceasta este o versiune completă wave. Aproape toate fişierele binare sunt afectate de această versiune.

Fișierele sursă următoare sunt afectate de această lansare::

private\winceos\COREOS\core\corelibc\crtw32\startup\cexit.cpp
private\winceos\COREOS\core\corelibc\crtw32\startup\onexit.c

Mai multe informații

Într-un mediu multithread, tabelele funcția de atexit pot fi deteriorate de un alt atexit apel din cauza securitatea fără fir. Acest lucru poate duce la deteriorarea de memorie și excepții. Funcția atexit este utilizată pentru a înregistra o rutină care va fi executat când programul se închide sau Descarcă o .dll. Breșă în siguranță fir pot conduce la o modificare a acestei rutină de ieșire și deteriorarea de ieșire function tabele.

Referințe

Aflați ce terminologie utilizează Microsoft pentru a descrie actualizările de software.

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă la Microsoft Insider

V-a fost de ajutor această informație?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×