MCPcopy Create free account
hub / github.com/derceg/explorerplusplus / Split

Method Split

Explorer++/Explorer++/SplitFileDialog.cpp:573–602  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

571}
572
573void SplitFile::Split()
574{
575 HANDLE hInputFile = CreateFile(m_strFullFilename.c_str(), GENERIC_READ, FILE_SHARE_READ,
576 nullptr, OPEN_EXISTING, 0, nullptr);
577
578 if (hInputFile == INVALID_HANDLE_VALUE)
579 {
580 PostMessage(m_hDlg, NSplitFileDialog::WM_APP_INPUTFILEINVALID, 0, 0);
581 return;
582 }
583
584 LARGE_INTEGER lFileSize;
585 GetFileSizeEx(hInputFile, &lFileSize);
586
587 LONGLONG nSplits = lFileSize.QuadPart / m_uSplitSize;
588
589 if ((lFileSize.QuadPart % m_uSplitSize) != 0)
590 {
591 nSplits++;
592 }
593
594 PostMessage(
595 m_hDlg, NSplitFileDialog::WM_APP_SETTOTALSPLITCOUNT, static_cast<WPARAM>(nSplits), 0);
596
597 SplitInternal(hInputFile, lFileSize);
598
599 CloseHandle(hInputFile);
600
601 SendMessage(m_hDlg, NSplitFileDialog::WM_APP_SPLITFINISHED, 0, 0);
602}
603
604void SplitFile::SplitInternal(HANDLE hInputFile, const LARGE_INTEGER &lFileSize)
605{

Callers 1

Calls 2

GetFileSizeExFunction · 0.85
c_strMethod · 0.80

Tested by

no test coverage detected