Nykyisessä projektissa tarvitaan tiedoston kokoa, jotta voi laskea kopioinnin tiedonsiirtonopeuden. Ongelmana on että tiedostot voivat olla hyvin suuria, jopa yli 2 gigan kokoisia, joten 32-bittinen koon selvitys (GetFileSize) ei sovi. Helpeissä mainittu GetFileSizeEx taas ei tunnu toimivan (tulee käännösvirhe). Mikä olisi paras tapa saada tuollaisen suuren tiedoston koko ?
Visual C++ 6.0: suuren tiedoston koko
6
952
Vastaukset
- juupajuujoo
"Helpeissä mainittu GetFileSizeEx taas ei tunnu toimivan (tulee käännösvirhe)"
kannattanee korjata se virhe. jos et osaa, pistä tänne se kyseinen koodinpätkä niin katotaan- The Real J.
Funktio:
__int64 CFileCopyTimerDlg::SizeOfFile(CString filename)
{
LARGE_INTEGER filedata;
HANDLE filehandle;
// Try to open the file for read access
filehandle = CreateFile(filename.operator LPCTSTR(),
GENERIC_READ,
0,
NULL,
0,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (filehandle == INVALID_HANDLE_VALUE)
return 0; // Failed, just return 0
// Get size of file to struct
if (GetFileSizeEx(filehandle, &filedata))
{
CloseHandle(filehandle);
return (__int64)(filedata.QuadPart);
}
CloseHandle(filehandle);
return 0;
}
Virheilmoitus:
FileCopyTimerDlg.cpp
C:\Data\FileCopyTimer\FileCopyTimerDlg.cpp(580) : error C2065: 'GetFileSizeEx' : undeclared identifier
Error executing cl.exe. - usdhfsidufh
The Real J. kirjoitti:
Funktio:
__int64 CFileCopyTimerDlg::SizeOfFile(CString filename)
{
LARGE_INTEGER filedata;
HANDLE filehandle;
// Try to open the file for read access
filehandle = CreateFile(filename.operator LPCTSTR(),
GENERIC_READ,
0,
NULL,
0,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (filehandle == INVALID_HANDLE_VALUE)
return 0; // Failed, just return 0
// Get size of file to struct
if (GetFileSizeEx(filehandle, &filedata))
{
CloseHandle(filehandle);
return (__int64)(filedata.QuadPart);
}
CloseHandle(filehandle);
return 0;
}
Virheilmoitus:
FileCopyTimerDlg.cpp
C:\Data\FileCopyTimer\FileCopyTimerDlg.cpp(580) : error C2065: 'GetFileSizeEx' : undeclared identifier
Error executing cl.exe.ongelma on tuo vc 6.0 joka on ikivanha eikä tue tuota funktiota. ei taida auttaa muu kun hommata uudempi versio. tai mikäli pelkän platform sdk:n pystyy 6.0:aan päivittämään niin teeppä se.
- sulla
The Real J. kirjoitti:
Funktio:
__int64 CFileCopyTimerDlg::SizeOfFile(CString filename)
{
LARGE_INTEGER filedata;
HANDLE filehandle;
// Try to open the file for read access
filehandle = CreateFile(filename.operator LPCTSTR(),
GENERIC_READ,
0,
NULL,
0,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (filehandle == INVALID_HANDLE_VALUE)
return 0; // Failed, just return 0
// Get size of file to struct
if (GetFileSizeEx(filehandle, &filedata))
{
CloseHandle(filehandle);
return (__int64)(filedata.QuadPart);
}
CloseHandle(filehandle);
return 0;
}
Virheilmoitus:
FileCopyTimerDlg.cpp
C:\Data\FileCopyTimer\FileCopyTimerDlg.cpp(580) : error C2065: 'GetFileSizeEx' : undeclared identifier
Error executing cl.exe.tiedostosi alussa rivi:
#include - tämä:
The Real J. kirjoitti:
Funktio:
__int64 CFileCopyTimerDlg::SizeOfFile(CString filename)
{
LARGE_INTEGER filedata;
HANDLE filehandle;
// Try to open the file for read access
filehandle = CreateFile(filename.operator LPCTSTR(),
GENERIC_READ,
0,
NULL,
0,
FILE_ATTRIBUTE_NORMAL,
NULL);
if (filehandle == INVALID_HANDLE_VALUE)
return 0; // Failed, just return 0
// Get size of file to struct
if (GetFileSizeEx(filehandle, &filedata))
{
CloseHandle(filehandle);
return (__int64)(filedata.QuadPart);
}
CloseHandle(filehandle);
return 0;
}
Virheilmoitus:
FileCopyTimerDlg.cpp
C:\Data\FileCopyTimer\FileCopyTimerDlg.cpp(580) : error C2065: 'GetFileSizeEx' : undeclared identifier
Error executing cl.exe.Platform SDK, hae se microsoftilta.
- Kiikaroin
PDC2008, MicrosoftftPDC.com osoite josta en tiedä onko apua mutta päivityksiä löytyy ehkä laajennuksiakin Microsoftilta .
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 2024218
SDP haluaa 40 000 nettomaahanmuuttajaa
SDP:n Suunnanmuutos-vaihtoehtobudjetissa, käy ilmi, että demarit itse asiassa vaativat räjähdysmäistä ”työperäisen” maah1463778Orpo: Velkajarrua vastustavaa puoluetta vaikea ajatella hallitukseen
No Minja Koskelan kommunistipuolue jäi ulos tuosta. Kaikki eduskuntapuolueet vasemmistoliittoa lukuun ottamatta sopivat1043172Hienoa! Eduskunta luopui käteisen käytöstä
Nyt tuo sama muutos pitää saada myös muuhun yhteiskuntaan. Käteistähän ei tarvitse tänä päivänä enää kuin rikolliset.431589Ikävä sinua mies
Vuosia kuluu, mutta tunteet ei ole hävinnyt. Tasoittuneet toki, kun ei olla nähty. Järki palannut päähän kuitenkin. Se i191448Mikä tämä henkilö mahtaa touhuta Parkanossa
Kamalaa https://www.ylasatakunta.fi/teksti/pirkanmaan-karajaoikeus-vangitsi-koiran-tappamisesta-epaillyn-6.68.127794.b58341390Sulla on avaimet ja keinot
Jos haluat jatkaa tutustumista. Itse olen niin jäässä etten pysty tekemään enää mitään. Pidempi keppi johon on helpompi251375Orpo loukkaantui fasismiin viittaavasta sanavalinnasta
Mutta miksi loukkaantui? Orpohan on tehnyt yhteistyötä fasistien kanssa jo vuonna 2019, siis jo neljä vuotta ennen loukk271351Kiinnostaa - ei kiinnosta - kiinnostaapas
Selittäkää hämmentyneelle miksi miehiä ei ikinä kiinnosta silloin, kun sitä olisi itsekin kiinnostunut? Sitten kun siirt1161140Martina haluaa Marbellaan
Martinan tekisi mieli ottaa lennot Marbellaan, jossa näkisisi kauniita ja hyväntuulisia ihmisiä. No sitten pitää matkust2151053