Oprava: Nelze otevřít soubor, který je minimálně 4 GB, připojit nebo zápisu dat pomocí aplikace Visual C++ 2010

Platí pro: Visual Studio Professional 2010Visual Studio Ultimate 2010

Příznaky


Jde o takovouto situaci:
  • Vytvoření aplikace v aplikaci Microsoft Visual C++ 2010.
  • Pomocí funkce fopen() aplikace k otevření souboru a funkce, která používá režim přístupu r +nebo a + .
  • Spuštění aplikace a applicationtries k otevření souboru, který je roven nebo větší než 4 gigabajty (GB).

V tomto scénáři soubor neotevře nebo vrácena následující chyba:
EINVAL (neplatný argument)

Příčina


Po otevření souborů pro přidávání, k tomuto problému dochází kvůli způsobu funkce fopen() usiluje na konce souborů. _Lseek() funkce fopen() funkce interně používá k provedení této akce. _Lseek() funkce však nelze zpracovat soubory, které jsou stejné nebo větší než 4 GB.

Řešení


Tato oprava hotfix změní chování fopen() řady funkcí. Po použití této opravy hotfix fopen() funkce interně používá funkci, která může pokusit nad limit 4 GB bez návratu k chybě. Konkrétně funkce fopen() funkce _lseeki64() místo _lseek() funkce.

Informace o opravě hotfix

Podporovaná oprava hotfix je nyní k dispozici od společnosti Microsoft. Je však určena opravit pouze problému popsaného v tomto článku. Použijte ji pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému.

Chcete-li vyřešit tento problém, obraťte se na technickou podporu společnosti Microsoft získat opravu hotfix. Úplný seznam telefonních čísel služeb podpory zákazníků společnosti Microsoft a informace o cenách podpory naleznete na následujícím webu společnosti Microsoft:Poznámka: Ve zvláštních případech mohou být stornovány poplatky, které jsou třeba obvykle zaplatit za telefonní hovory, pokud pracovník služeb podpory společnosti Microsoft určí, že konkrétní aktualizace odstraní váš problém. Výdaje na technickou podporu použije dalších otázek a problémů, které nelze vyřešit konkrétní aktualizací.

Předpoklady

Chcete-li nainstalovat tuto opravu hotfix, musí mít Microsoft Visual Studio 2010 Service Pack 1 (SP1) nainstalován.

Požadavek na restartování

Bude pravděpodobně nutné restartovat počítač po instalaci této opravy hotfix Pokud zasažené soubory jsou používány.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje dříve vydanou opravu hotfix.

Informace o souborech

Globální verze této má atributy souborů (nebo novější) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.

Pro všechny podporované verze Microsoft Visual Studio 2010 SP1

Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Mfcm100.dll10.0.40219.36282,69615-Nov-201122:32x86
Mfcm100d.dll10.0.40219.362104,72016-Nov-201100:29x86
Mfcm100u.dll10.0.40219.36282,70415-Nov-201122:32x86
Mfcm100ud.dll10.0.40219.362106,25616-Nov-201100:29x86
Mfcm100.dll10.0.40219.36293,96015-Nov-201121:54x64
Mfcm100d.dll10.0.40219.362120,59215-Nov-201123:56x64
Mfcm100u.dll10.0.40219.36293,96815-Nov-201121:54x64
Mfcm100ud.dll10.0.40219.362122,12815-Nov-201123:56x64
Mfcmifc80.dll10.0.40219.36214,09616-Nov-201121:26x86

Další informace


Další informace o jiný balíček opravy hotfix vztahující se k Redistributable Package Microsoft Visual C++ 2010 Service Pack 1 (SP1) klepněte na následující číslo článku databáze Microsoft Knowledge Base:

2606060 oprava: Nelze otevřít soubor, který je minimálně 4 GB, připojit nebo zápisu dat pomocí aplikace, která používá Visual C++ 2010 Redistributable Package


Další informace o funkce fopen() a _wfopen() naleznete na následujícím webu MSDN:

Stav


Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".