From 2ddc37416416894bf085edc6ca4a0b3862fae2c2 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Mon, 17 Oct 2016 16:26:34 +0200 Subject: Windows: Remove VeraCrypt from EFI boot partition after decrypting the system --- src/Common/Dlgcode.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'src/Common/Dlgcode.c') diff --git a/src/Common/Dlgcode.c b/src/Common/Dlgcode.c index ae6fcd2d..04fec471 100644 --- a/src/Common/Dlgcode.c +++ b/src/Common/Dlgcode.c @@ -12203,4 +12203,25 @@ BOOL RaisePrivileges(void) SetLastError (dwLastError); return bRet; -} \ No newline at end of file +} + +BOOL DeleteDirectory (const wchar_t* szDirName) +{ + BOOL bStatus = RemoveDirectory (szDirName); + if (!bStatus) + { + /* force removal of the non empty directory */ + wchar_t szOpPath[TC_MAX_PATH + 1] = {0}; + SHFILEOPSTRUCTW op; + + StringCchCopyW(szOpPath, ARRAYSIZE(szOpPath)-1, szDirName); + ZeroMemory(&op, sizeof(op)); + op.wFunc = FO_DELETE; + op.pFrom = szOpPath; + op.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NOCONFIRMMKDIR; + + if ((0 == SHFileOperation(&op)) && (!op.fAnyOperationsAborted)) + bStatus = TRUE; + } + return bStatus; +} -- cgit v1.2.3