MCPcopy Create free account
hub / github.com/NtQuery/Scylla / updateStatusBar

Method updateStatusBar

Scylla/MainGui.cpp:421–469  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

419}
420
421void MainGui::updateStatusBar()
422{
423 // Rewrite ImportsHandling so we get these easily
424 unsigned int totalImports = importsHandling.thunkCount();
425 unsigned int invalidImports = importsHandling.invalidThunkCount();
426
427 // \t = center, \t\t = right-align
428 swprintf_s(stringBuffer, L"\tImports: %u", totalImports);
429 StatusBar.SetText(PART_COUNT, stringBuffer);
430
431 if(invalidImports > 0)
432 {
433 StatusBar.SetIcon(PART_INVALID, hIconError);
434 }
435 else
436 {
437 StatusBar.SetIcon(PART_INVALID, hIconCheck);
438 }
439
440 swprintf_s(stringBuffer, L"\tInvalid: %u", invalidImports);
441 StatusBar.SetText(PART_INVALID, stringBuffer);
442
443 if(selectedProcess)
444 {
445 DWORD_PTR imageBase = 0;
446 const WCHAR * fileName = 0;
447
448 if(ProcessAccessHelp::selectedModule)
449 {
450 imageBase = ProcessAccessHelp::selectedModule->modBaseAddr;
451 fileName = ProcessAccessHelp::selectedModule->getFilename();
452 }
453 else
454 {
455 imageBase = selectedProcess->imageBase;
456 fileName = selectedProcess->filename;
457 }
458
459 swprintf_s(stringBuffer, L"\tImagebase: " PRINTF_DWORD_PTR_FULL, imageBase);
460 StatusBar.SetText(PART_IMAGEBASE, stringBuffer);
461 StatusBar.SetText(PART_MODULE, fileName);
462 StatusBar.SetTipText(PART_MODULE, fileName);
463 }
464 else
465 {
466 StatusBar.SetText(PART_IMAGEBASE, L"");
467 StatusBar.SetText(PART_MODULE, L"");
468 }
469}
470
471bool MainGui::showFileDialog(WCHAR * selectedFile, bool save, const WCHAR * defFileName, const WCHAR * filter, const WCHAR * defExtension, const WCHAR * directory)
472{

Callers

nothing calls this directly

Calls 3

thunkCountMethod · 0.80
invalidThunkCountMethod · 0.80
getFilenameMethod · 0.80

Tested by

no test coverage detected