Prisijunkite prie „Microsoft“
Prisijunkite arba sukurkite paskyrą.
Sveiki,
Pasirinkti kitą paskyrą.
Turite kelias paskyras
Pasirinkite paskyrą, kurią naudodami norite prisijungti.

Požymiai

Įsivaizduokite tokią situaciją.

  • Galite sukurti programą, kuri įkelia baitas struktūra "arba" Microsoft Visual Studio 2008 1 pakeitimų paketas (SP1) klasės.

  • Galite įjungti parinktį /Ox optimizavimo arba/O2 optimizavimo variantas.

  • Rinkti paraiškos naudojant leidimo konfigūracijos x64 platforma.

Tokiu atveju poslinkis, kuris sukuriamas pasiekti struktūros narys arba grupės narys yra neteisingas.

Ši problema kyla, tik kai struktūros dydis ir poslinkis arba klasės dydis ir poslinkis lygus vieną iš šios poros:

  • (14,13)

  • (15,13)

  • (22.21)

  • (23,21)

  • (30,29)

  • (31,29)

Sprendimas

Karštųjų pataisų informacija

Palaikomą naujausią pataisą dabar yra Microsoft. Tačiau ji skirta spręsti tik šiame straipsnyje aprašytai problemai spręsti. Taikyti ją tik sistemoms, kuriose kyla ši konkreti problema. Šios karštosios pataisos gali būti papildomai išbandoma. Todėl, jei jums nelabai trukdo Ši problema, rekomenduojame palaukti kito Visual Studio 2008 pakeitimų paketo, kuriame bus šios karštosios pataisos.

Nedelsdami išspręsti šią problemą, susisiekite su Microsoft klientų palaikymo tarnybą ir įsigykite šias karštąsias pataisas. "Microsoft" klientų palaikymo tarnybos telefonų sąrašo ir informacijos apie palaikymo kainas sąrašą, apsilankykite šioje "Microsoft" svetainėje:

http://support.microsoft.com/contactus/?ws=supportPastaba. Konkrečiais atvejais už palaikymo skambučius taikomi įprasti mokesčiai gali būti atšaukti, jei "Microsoft" techninės pagalbos specialistas nusprendžia, kad jūsų problemą galima išspręsti naudojant konkretų naujinimą. Į įprastos kainos už palaikymą taikomos papildomiems palaikymo klausimams ir problemoms, kurių negalima išspręsti naudojant minėtą naujinimą.

Būtinosios sąlygos

Turite Visual Studio 2008 1 pakeitimų paketą norint taikyti šias karštąsias pataisas.

Reikalavimas paleisti iš naujo

Pritaikius šias karštąsias pataisas kompiuterio nereikia paleisti iš naujo.

Karštųjų pataisų pakeitimo informacija

Šios karštosios pataisos nepakeičia jokių kitų karštųjų pataisų.

Failo informacija

Šių karštųjų pataisų anglų k. versijos failo atributai (failo atributai) yra išvardyti toliau pateiktoje lentelėje. Datos ir laiko informacija pateikta pagal universalųjį laiką (UTC). Kai peržiūrite failo informaciją, ši informacija konvertuojama į vietos laiką. Norėdami sužinoti UTC ir vietos laiko skirtumą, naudokite valdymo skydo elemento Data ir laikas skirtuką Laiko juosta.

Failo vardas

Failo versija

Failo dydis

Data

Laikas

Platforma

C2.dll

15.0.30729. 4082

2,283,320

2009-kov-19

05:13

x86

C2.dll

15.0.30729.4082

2,36 1,656

2009-kov-19

05:13

x86

C2.dll

15.0.30729.4082

3,01 7,528

2009-kov-19

05:13

x64

Link.exe

9.0.30729.4082

1,0 54,520

2009-kov-19

05:13

x64

Link.exe

9.0.30729.4082

799, 032

19-Mar-2009

05:13

x86

Sprendimas

Norėdami išspręsti šią problemą, įtraukti vieną arba kelis fikcijos "nepasirašytos simbolis" narių išplėsti dydį struktūros arba klasės iki mažiausio aštuoni baitai. Pvz., išplėsti 14 baitų iki 16 baitų.

Būsena

„Microsoft“ patvirtino, kad tai yra „Microsoft“ produktų, išvardytų skyriuje „Taikoma“, problema.

Daugiau informacijos

Norėdami gauti daugiau informacijos apie programinės įrangos naujinimo terminiją, spustelėkite toliau esančio straipsnio numerį ir peržiūrėkite „Microsoft“ žinių bazės straipsnį:

824684 standartinę terminologiją, vartojamą Microsoft programinės įrangos naujinimams apibūdinti, aprašas

Problemos atkūrimo veiksmai

  1. Sukurti programą, pavadintą Test.cpp, naudodami šį kodą Visual Studio 2008 SP1:

    typedef struct DskDecimal
    {
    unsigned char precision;
    unsigned char scaleFactor;
    unsigned short value[ 5];
    unsigned char maxPrecision;
    unsigned char maxScaleFactor;
    } DskDecimal;

    int main()
    {
    DskDecimal decimal;
    decimal.maxScaleFactor = 4;
    DskDecimal self = decimal;
    return self.maxScaleFactor;
    }
  2. Kompiliuoti programą naudodami šią komandą:

    CL test.cpp/O2 arba MD

Rezultato yra 4. Tačiau tikrasis rezultatas yra 0.

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.

Ar ši informacija buvo naudinga?

Ar esate patenkinti kalbos kokybe?
Kas turėjo įtakos jūsų įspūdžiams?
Paspaudus mygtuką Pateikti, jūsų atsiliepimai bus naudojami tobulinant „Microsoft“ produktus ir paslaugas. Jūsų IT administratorius galės rinkti šiuos duomenis. Privatumo patvirtinimas.

Dėkojame už jūsų atsiliepimą!

×