COM.h |
//////////////////////////////////
// GUID <--> String Conversions
UString GUIDToStringW(REFGUID guid);
AString GUIDToStringA(REFGUID guid);
#ifdef UNICODE
#define GUIDToString GUIDToStringW
#else
#define GUIDToString GUIDToStringA
#endif
HRESULT StringToGUIDW(const wchar_t *string, GUID &classID);
HRESULT StringToGUIDA(const char *string, GUID &classID);
#ifdef UNICODE
#define StringToGUID StringToGUIDW
#else
#define StringToGUID StringToGUIDA
#endif
|
1395 |
CommonDialog.cpp |
if (lpstrFilter == NULL && nFilterIndex == 0)
MSDN : "the system doesn't show any files",
but WinXP-64 shows all files. Why ??? |
4511 |
CommonDialog.h |
|
543 |
Control |
|
|
Defs.h |
|
503 |
DLL.cpp |
|
1833 |
DLL.h |
Win32: Don't call CLibrary::Free() and FreeLibrary() from another
FreeLibrary() code: detaching code in DLL entry-point or in
destructors of global objects in DLL module. |
1310 |
ErrorMsg.cpp |
|
1449 |
ErrorMsg.h |
|
227 |
FileDir.cpp |
if (::CreateHardLink(fs2fas(newFileName), fs2fas(existFileName), NULL))
return true;
|
16122 |
FileDir.h |
Some programs store posix attributes in high 16 bits of windows attributes field.
Also some programs use additional flag markers: 0x8000 or 0x4000.
SetFileAttrib_PosixHighDetect() tries to detect posix field, and it extracts only attribute
bits that are related to current system only.
|
2953 |
FileFind.cpp |
#ifdef UNDER_CE
fi.ObjectID = fd.dwOID;
#else
fi.ReparseTag = fd.dwReserved0;
#endif
|
19034 |
FileFind.h |
#ifdef UNDER_CE
DWORD ObjectID;
#else
UINT32 ReparseTag;
#endif
|
4545 |
FileIO.cpp |
WinXP-64 CreateFile():
"" - ERROR_PATH_NOT_FOUND
:stream - OK
.:stream - ERROR_PATH_NOT_FOUND
.\:stream - OK
folder\:stream - ERROR_INVALID_NAME
folder:stream - OK
c:\:stream - OK
c::stream - ERROR_INVALID_NAME, if current dir is NOT ROOT ( c:\dir1 )
c::stream - OK, if current dir is ROOT ( c:\ )
|
12076 |
FileIO.h |
|
6778 |
FileLink.cpp |
Reparse Points (Junctions and Symbolic Links):
struct
{
UInt32 Tag;
UInt16 Size; // not including starting 8 bytes
UInt16 Reserved; // = 0
UInt16 SubstituteOffset; // offset in bytes from start of namesChars
UInt16 SubstituteLen; // size in bytes, it doesn't include tailed NUL
UInt16 PrintOffset; // offset in bytes from start of namesChars
UInt16 PrintLen; // size in bytes, it doesn't include tailed NUL
[UInt32] Flags; // for Symbolic Links only.
UInt16 namesChars[]
}
MOUNT_POINT (Junction point):
1) there is NUL wchar after path
2) Default Order in table:
Substitute Path
Print Path
3) pathnames can not contain dot directory names
SYMLINK:
1) there is no NUL wchar after path
2) Default Order in table:
Print Path
Substitute Path
|
10185 |
FileMapping.cpp |
|
153 |
FileMapping.h |
|
1592 |
FileName.cpp |
// actually we don't know the way to open device file in WinCE.
unsigned len = MyStringLen(s);
if (len < 5 || len > 5 || !IsString1PrefixedByString2(s, "DSK"))
return false;
if (s[4] != ':')
return false;
// for reading use SG_REQ sg; if (DeviceIoControl(dsk, IOCTL_DISK_READ));
|
20545 |
FileName.h |
name: |
3824 |
FileSystem.cpp |
|
3878 |
FileSystem.h |
|
595 |
Handle.h |
|
655 |
MemoryLock.cpp |
We suppose that Window 10 works incorrectly with "Large Pages" at:
- Windows 10 1703 (15063)
- Windows 10 1709 (16299)
|
2623 |
MemoryLock.h |
Probably we do not to set any Privilege for junction points.
But we need them for Symbolic links |
950 |
NtCheck.h |
|
961 |
PropVariant.cpp |
if (s.IsEmpty())
this = L"";
else
|
7603 |
PropVariant.h |
|
3409 |
PropVariantConv.cpp |
{
unsigned val = st.wMilliseconds;
s[2] = (char)('0' + val % 10); val /= 10;
s[1] = (char)('0' + val % 10);
s[0] = (char)('0' + val / 10);
s += 3;
}
s++ = ' ';
|
4348 |
PropVariantConv.h |
|
1288 |
Registry.cpp |
LONG CKey::SetValue(LPCTSTR name, const CSysString &value)
{
MYASSERT(value != NULL);
MYASSERT(_object != NULL);
return RegSetValueEx(_object, name, NULL, REG_SZ,
(const BYTE *)(const TCHAR *)value, (value.Len() + 1) * sizeof(TCHAR));
}
|
10036 |
Registry.h |
|
2567 |
ResourceString.cpp |
|
2087 |
ResourceString.h |
|
346 |
SecurityUtils.cpp |
bool MyLookupAccountSid(LPCTSTR systemName, PSID sid,
CSysString &accountName, CSysString &domainName, PSID_NAME_USE sidNameUse)
{
DWORD accountNameSize = 0, domainNameSize = 0;
if (!::LookupAccountSid(systemName, sid,
accountName.GetBuf(0), &accountNameSize,
domainName.GetBuf(0), &domainNameSize, sidNameUse))
{
if (::GetLastError() != ERROR_INSUFFICIENT_BUFFER)
return false;
}
DWORD accountNameSize2 = accountNameSize, domainNameSize2 = domainNameSize;
bool result = BOOLToBool(::LookupAccountSid(systemName, sid,
accountName.GetBuf(accountNameSize), &accountNameSize2,
domainName.GetBuf(domainNameSize), &domainNameSize2, sidNameUse));
accountName.ReleaseBuf_CalcLen(accountNameSize);
domainName.ReleaseBuf_CalcLen(domainNameSize);
return result;
}
|
5077 |
SecurityUtils.h |
bool OpenThreadToken(HANDLE threadHandle, DWORD desiredAccess, bool openAsSelf)
{
Close();
return BOOLToBool(::OpenTreadToken(threadHandle, desiredAccess, BoolToBOOL(anOpenAsSelf), &_handle));
}
|
5074 |
Shell.cpp |
CItemIDList::(LPCITEMIDLIST itemIDList): m_Object(NULL)
{ *this = itemIDList; }
CItemIDList::(const CItemIDList& itemIDList): m_Object(NULL)
{ *this = itemIDList; }
CItemIDList& CItemIDList::operator=(LPCITEMIDLIST object)
{
Free();
if (object != 0)
{
UINT32 size = GetSize(object);
m_Object = (LPITEMIDLIST)CoTaskMemAlloc(size);
if (m_Object != NULL)
MoveMemory(m_Object, object, size);
}
return *this;
}
CItemIDList& CItemIDList::operator=(const CItemIDList &object)
{
Free();
if (object.m_Object != NULL)
{
UINT32 size = GetSize(object.m_Object);
m_Object = (LPITEMIDLIST)CoTaskMemAlloc(size);
if (m_Object != NULL)
MoveMemory(m_Object, object.m_Object, size);
}
return *this;
}
|
8696 |
Shell.h |
|
2517 |
StdAfx.h |
|
98 |
Synchronization.cpp |
|
147 |
Synchronization.h |
|
4220 |
System.cpp |
|
2922 |
System.h |
|
818 |
Thread.h |
|
1173 |
TimeUtils.cpp |
|
5954 |
TimeUtils.h |
|
1057 |
Window.cpp |
bool CWindow::ModifyStyleBase(int styleOffset,
DWORD remove, DWORD add, UINT flags)
{
DWORD style = GetWindowLong(styleOffset);
DWORD newStyle = (style & ~remove) | add;
if (style == newStyle)
return false; // it is not good
SetWindowLong(styleOffset, newStyle);
if (flags != 0)
{
::SetWindowPos(_window, NULL, 0, 0, 0, 0,
SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE | flags);
}
return TRUE;
}
|
4581 |
Window.h |
|
9405 |