Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.

Den här artikeln beskrivs ett problem som SEH undantag fångas av en fel-hanteraren i Windows Embedded kompakt 2013. Det finns en uppdatering för att åtgärda problemet. Alla tidigare utgivna uppdateringar för den här produkten måste installeras innan du installerar denna uppdatering.

Symptom

Föreställ dig följande:

  • Du kan använda den Application Builder plugin-program för Visual Studio 2013 och skapa ett C++-program som ger Windows Embedded kompakt 2013.

  • Du aktiverar asynkron undantagshantering med hjälp av växeln "/EHa"-kompilatorn. Den här växeln kan båda C++ synkront och strukturerad undantagshantering (SEH) asynkrona undantagshantering metoder avsedda att blandas i samma kod.

  • Du kör relaterad kod att fånga SEH-undantag.

I det här fallet fångas alltid SEH undantag i den allra första Undantagshanteraren även om den är filtrerad för en synkron C++-undantag.

Normalt är SEH-undantag som fångas upp av punkter undantagshanterare.

Till exempel kan du köra följande exempelkod: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");
}
}
I det här exemplet kan träffar du alltid den första catch-satsen när SEH-undantag (heltal division med noll) inträffar i stället för tre punkter hanterare som förväntat.

Lösning

Information om programvara

Windows Embedded kompakt 2013 Monthly Update (September 2015) är nu tillgänglig från Microsoft. Om du vill hämta uppdateringen Windows Embedded kompakt 2013 månatliga, gå till Microsoft OEM Online eller MyOEM.

Förutsättningar

Den här uppdateringen stöds endast om alla tidigare utgivna uppdateringar för produkten har installerats.

Krav på omstart

När du har installerat den här uppdateringen måste du utföra en ren build-version av hela plattformen. Genom att använda någon av följande metoder:

  • Markera Ren lösningBuild -menyn och välj Skapa lösningen.

  • Välj Återskapa lösningenBuild -menyn.

Du behöver inte starta om datorn när du har installerat denna uppdatering.

Information om vad uppdateringen ersätter

Den här uppdateringen ersätter inte några andra uppdateringar.

Den engelska versionen av det här programuppdateringspaketet har de filattribut (eller senare filattribut) som visas i följande tabell. Datum och tider för dessa filer anges i UTC-tid (UTC). När du visar filinformationen konverteras den till lokal tid. Använd fliken tidszon i datum och tid på Kontrollpanelen om du vill se skillnaden mellan UTC-tid och lokal tid.

Filer som ingår i uppdateringspaketet

Filnamn

Storlek

Datum

Tid

Sökväg

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


Referenser

Lär dig mer om den terminologi som Microsoft använder för att beskriva programuppdateringar.

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×