#include #include #include #include ">

LLVM: include/llvm/Support/Windows/WindowsSupport.h File Reference (original) (raw)

#include "[llvm/ADT/SmallVector.h](SmallVector%5F8h%5Fsource.html)"
#include "[llvm/ADT/StringExtras.h](StringExtras%5F8h%5Fsource.html)"
#include "[llvm/ADT/StringRef.h](StringRef%5F8h%5Fsource.html)"
#include "[llvm/ADT/Twine.h](Twine%5F8h%5Fsource.html)"
#include "llvm/Config/llvm-config.h"
#include "[llvm/Support/Allocator.h](Allocator%5F8h%5Fsource.html)"
#include "[llvm/Support/Chrono.h](Chrono%5F8h%5Fsource.html)"
#include "[llvm/Support/Compiler.h](Compiler%5F8h%5Fsource.html)"
#include "[llvm/Support/ErrorHandling.h](llvm%5F2Support%5F2ErrorHandling%5F8h%5Fsource.html)"
#include "[llvm/Support/VersionTuple.h](VersionTuple%5F8h%5Fsource.html)"
#include <cassert>
#include <string>
#include <system_error>
#include <windows.h>
#include <wincrypt.h>

Go to the source code of this file.

Classes
class llvm::ScopedHandle< HandleTraits >
struct llvm::CommonHandleTraits
struct llvm::JobHandleTraits
struct llvm::CryptContextTraits
struct llvm::RegTraits
struct llvm::FindHandleTraits
struct llvm::FileHandleTraits
Macros
#define _WIN32_WINNT 0x0601
#define WIN32_LEAN_AND_MEAN
#define NOMINMAX
Typedefs
typedef ScopedHandle< CommonHandleTraits > llvm::ScopedCommonHandle
typedef ScopedHandle< FileHandleTraits > llvm::ScopedFileHandle
typedef ScopedHandle< CryptContextTraits > llvm::ScopedCryptContext
typedef ScopedHandle< RegTraits > llvm::ScopedRegHandle
typedef ScopedHandle< FindHandleTraits > llvm::ScopedFindHandle
typedef ScopedHandle< JobHandleTraits > llvm::ScopedJobHandle
Functions
LLVM_ABI bool llvm::RunningWindows8OrGreater ()
Determines if the program is running on Windows 8 or newer.
LLVM_ABI bool llvm::RunningWindows11OrGreater ()
Determines if the program is running on Windows 11 or Windows Server 2022.
LLVM_ABI llvm::VersionTuple llvm::GetWindowsOSVersion ()
Returns the Windows version as Major.Minor.0.BuildNumber.
LLVM_ABI bool llvm::MakeErrMsg (std::string *ErrMsg, const std::string &prefix)
void llvm::ReportLastErrorFatal (const char *Msg)
template<class T>
SmallVectorImpl< T >::const_pointer llvm::c_str (SmallVectorImpl< T > &str)
std::chrono::nanoseconds llvm::sys::toDuration (FILETIME Time)
TimePoint llvm::sys::toTimePoint (FILETIME Time)
FILETIME llvm::sys::toFILETIME (TimePoint<> TP)
LLVM_ABI std::error_code llvm::sys::windows::GetCommandLineArguments (SmallVectorImpl< const char * > &Args, BumpPtrAllocator &Alloc)
LLVM_ABI std::error_code llvm::sys::windows::widenPath (const Twine &Path8, SmallVectorImpl< wchar_t > &Path16, size_t MaxPathLen=MAX_PATH)
Convert UTF-8 path to a suitable UTF-16 path for use with the Win32 Unicode File API.
LLVM_ABI HMODULE llvm::sys::windows::loadSystemModuleSecure (LPCWSTR lpModuleName)
Retrieves the handle to a in-memory system module such as ntdll.dll, while ensuring we're not retrieving a malicious injected module but a module loaded from the system path.

_WIN32_WINNT

#define _WIN32_WINNT 0x0601

NOMINMAX

WIN32_LEAN_AND_MEAN

#define WIN32_LEAN_AND_MEAN