Šajā rakstā aprakstīta problēma, kuras SEH izņēmumi nozvejo nepareizi apdarinātājs Windows Embedded Compact 2013. Ir pieejams atjauninājums, lai atrisinātu šo problēmu. Pirms šī atjauninājuma instalēšanas ir jāinstalē visas iepriekš izsniegtās šo produktu atjauninājumus.
Pazīmes
Apsveriet šādu situāciju:
-
Spraudnis Visual Studio 2013 programmu veidotājs izmanto, lai izveidotu šo mērķi Windows Embedded Compact 2013 C++ lietojumprogrammu.
-
Iespējojiet asinhronā izņēmumu apstrāde, izmantojot slēdzi "/EHa" kompilators. Šis slēdzis ļauj gan C++ sinhrona un strukturēta izņēmumu apstrāde (SEH) asinhronā izņēmumu apstrādes metodes sajaukt vienu un to pašu kodu.
-
Varat palaist kodu saistītu catch SEH izņēmumi.
Šādā gadījumā SEH izņēmumi tie vienmēr noteikumi pirmo izņēmumu apdarinātājā pat tad, ja piemēroti C++ sinhrona izņēmums.
Paredzamā rīcība ir daudzpunkte izņēmumu apstrādes laikā piesaista SEH izņēmumi. Piemēram, palaižot parauga kodu:class CMyEx{ public: CMyEx(int nParam) : m_nParam(nParam) { } int m_nParam; }; void TestExceptions() { try { int a = 42; int b = 0; // throw CMyEx(1); // throw 97; int c = a / b; } catch (const CMyEx &e) { wprintf(L"CMyEx exception caught (param=%d)!\n", e.m_nParam); } catch (...) { wprintf(L"Exception of unspecified type caught by ellipsis clause!\n"); } } Šajā piemērā jūs vienmēr rezultāts pirmā loma klauzula, SEH (skaitlim dalīt ar nulli) Izņēmums nevis daudzpunktes apdarinātāju, kā paredzēts.Risinājums
Informācija par programmatūras atjauninājumu
Pašlaik korporācija Microsoft Windows Embedded Compact 2013 ikmēneša atjauninājums (2015. gada septembris). Lai lejupielādētu Windows Embedded Compact 2013 ikmēneša atjauninājums, dodieties uz Microsoft OEM tiešsaistes vai MyOEM.
Priekšnosacījumi
Šis atjauninājums tiek atbalstīts tikai tad, ja ir instalēti arī visi iepriekš izsniegtie šī produkta atjauninājumi.
Restartēšanas nepieciešamība
Pēc šī atjauninājuma lietošanas ir jāveic tīrā izveidot visu platformu. Lai to izdarītu, izmantojiet kādu no šīm metodēm:
-
Veidot izvēlnē atlasiet Clean risinājumsun pēc tam atlasiet Izveidot risinājumu.
-
Veidot izvēlnē atlasiet Atjaunot risinājumu.
Jums nav pēc šī programmatūras atjauninājuma instalēšanas dators jārestartē.
Informācija par atjauninājumu aizstāšanu
Šis atjauninājums neaizstāj nekādus citus atjauninājumus.
Šī programmatūras atjauninājuma pakotnes versijai angļu valodā ir faila atribūti (vai jaunāki faila atribūti) Šajā tabulā sniegtie. Šo failu datumi un laiki ir norādīti atbilstoši universālajam koordinētajam laikam (UTC). Skatot faila informāciju, tā tiek pārvērsta atbilstoši vietējam laikam. Lai noskaidrotu atšķirību starp UTC un vietējo laiku, izmantojiet vadības paneļa vienuma datums un laiks cilni laika josla .
Šajā atjauninājumu pakotnē iekļautie faili
Faila nosaukums |
Faila lielums |
Datums |
Laiks |
Ceļš |
---|---|---|---|---|
Frame.cpp |
34,133 |
13-Nov-2014 |
23:06 |
Private\Winceos\Coreos\Core\Corelibc\Crtw32\Eh |
Fullcrt.lib |
30,027,378 |
09-Sep-2015 |
09:17 |
Public\Common\Oak\Lib\X86\Checked |
Fullcrt.lib |
30,228,292 |
09-Sep-2015 |
09:17 |
Public\Common\Oak\Lib\X86\Retail |
Fullcrt.lib |
28,759,836 |
09-Sep-2015 |
09:16 |
Public\Common\Oak\Lib\X86\Debug |
Fullcrt.lib |
29,278,300 |
09-Sep-2015 |
09:17 |
Public\Common\Oak\Lib\Armv7\Checked |
Fullcrt.lib |
29,566,730 |
09-Sep-2015 |
09:17 |
Public\Common\Oak\Lib\Armv7\Retail |
Fullcrt.lib |
33,139,560 |
09-Sep-2015 |
09:16 |
Public\Common\Oak\Lib\Armv7\Debug |
Msvcr110d.dll |
1,339,952 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110.dll |
754,224 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110d.map |
1,287,579 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110d.rel |
528,834 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110.map |
788,986 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110.rel |
242,169 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\X86 |
Msvcr110d.dll |
1,145,312 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Msvcr110.dll |
539,608 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Msvcr110d.map |
2,714,275 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Msvcr110d.rel |
215,924 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Msvcr110.map |
1,258,317 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Msvcr110.rel |
122,167 |
08-Sep-2015 |
05:26 |
Public\Common\Sdk\Crt\Bin\Arm |
Atsauces
Uzziniet par terminoloģiju , kas tiek izmantota Microsoft programmatūras atjauninājumu aprakstos.