0
이 오류가 발생하며이를 수정할 수 없습니다. 어떤 도움을 주셔서 감사합니다. 감사. 오류 C2440 '=' "DWORD *"타입 "부호 INT"의 엔티티에 할당 될 수DWORD 및 부호없는 정수
using namespace std;
typedef vector<WIN32_FIND_DATA> tFoundFilesVector;
std::wstring LastWriteTime;
int getFileList(wstring filespec, tFoundFilesVector &foundFiles)
{
WIN32_FIND_DATA findData;
HANDLE h;
int validResult=true;
int numFoundFiles = 0;
h = FindFirstFile(filespec.c_str(), &findData);
if (h == INVALID_HANDLE_VALUE)
return 0;
while (validResult)
{
numFoundFiles++;
foundFiles.push_back(findData);
validResult = FindNextFile(h, &findData);
}
return numFoundFiles;
}
void showFileAge(tFoundFilesVector &fileList)
{
unsigned int fileTime,curTime, age;
tFoundFilesVector::iterator iter;
FILETIME ftNow;
__int64 nFileSize;
LARGE_INTEGER li;
li.LowPart = ftNow.dwLowDateTime;
li.HighPart = ftNow.dwHighDateTime;
CoFileTimeNow(&ftNow);
curTime = ((_int64) &ftNow.dwHighDateTime << 32) + &ftNow.dwLowDateTime;
for (iter=fileList.begin(); iter<fileList.end(); iter++)
{
fileTime = ((_int64)iter->ftLastWriteTime.dwHighDateTime << 32) + iter- >ftLastWriteTime.dwLowDateTime;
age = curTime - fileTime;
cout << "FILE: '" << iter->cFileName << "', AGE: " << (INT64)age/10000000UL << " seconds" << endl;
}
}
int main()
{
string fileSpec = "*.*";
tFoundFilesVector foundFiles;
tFoundFilesVector::iterator iter;
int foundCount = 0;
getFileList(L"*.c??", foundFiles);
getFileList(L"*.h", foundFiles);
foundCount = foundFiles.size();
if (foundCount)
{
cout << "Found "<<foundCount<<" matching files.\n";
showFileAge(foundFiles);
}
return 0;
}
형식의 값 : "부호 INT ' 인텔리에'DWORD의 * '로 변환 할 수없는 그는이 라인에 .....
감사합니다 !!!! 첫 번째 문제가 해결되었습니다! 64 비트 정수를 어떻게 처리 할 수 있습니까? 고맙습니다. –
'unsigned long long'을 사용할 수 있습니다. 그러나 Windows를 사용하고 있기 때문에'unsigned __int64' 만 사용할 수 있습니다. – Mysticial
빙고! 고맙습니다! –