193 FIXME(
"Unsupported error code: %ld\n",
err);
284 return This->mode == ForWriting ||
This->mode == ForAppending;
286 return This->mode == ForReading;
299 *
obj = &
This->ITextStream_iface;
303 *
obj = &
This->classinfo.IProvideClassInfo_iface;
317 TRACE(
"%p, refcount %ld.\n", iface,
ref);
327 TRACE(
"%p, refcount %ld.\n", iface,
ref);
350 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
356 LPOLESTR *rgszNames,
UINT cNames,
362 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
367 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
376 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
377 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
382 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
383 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
389 pDispParams, pVarResult, pExcepInfo, puArgErr);
424 *eos = (
This->eof && !
This->read_buf_size) ? VARIANT_TRUE : VARIANT_FALSE;
445 if (buf_size & 1) revert.
QuadPart = -1;
452 if (
len + 1 == buf_size)
467 if (!
stream->read_buf_size)
477 stream->read_buf = new_buf;
491 ITextStream_Release(&
stream->ITextStream_iface);
507 if (
stream->read_buf_size)
537 if (
This->eof && !
This->read_buf_size)
538 return CTL_E_ENDOFFILE;
552 unsigned int skip = 0;
571 if (
This->eof && !
This->read_buf_size)
572 return CTL_E_ENDOFFILE;
576 nl =
This->read_buf +
This->read_buf_size;
579 else if (nl >
This->read_buf && nl[-1] ==
'\r')
609 if (
This->eof && !
This->read_buf_size)
610 return CTL_E_ENDOFFILE;
655 static const char crlfA[] = {
'\r',
'\n'};
712 TRACE(
"%p.\n", iface);
762 FIXME(
"%p, %p.\n", iface, eos);
769 FIXME(
"%p, %p.\n", iface, eol);
827 FIXME(
"%p.\n", iface);
858 static const unsigned short utf16bom = 0xfeff;
894 if (
mode == ForReading)
899 if (
mode == ForWriting)
907 ITextStream_Release(&
stream->ITextStream_iface);
917 if (
format == TristateUseDefault ||
mode == ForReading)
921 ITextStream_Release(&
stream->ITextStream_iface);
926 if (
format == TristateUseDefault)
931 if (
mode == ForReading)
939 ITextStream_Release(&
stream->ITextStream_iface);
947 LONG filePosHigh = 0;
949 if(
stream->unicode && filePosHigh == 0 && filePosLow == 0) {
954 ITextStream_Release(&
stream->ITextStream_iface);
1002 *
obj = &
This->classinfo.IProvideClassInfo_iface;
1016 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1026 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1045 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
1051 LPOLESTR *rgszNames,
UINT cNames,
1057 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
1062 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
1071 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
1072 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
1077 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
1078 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1084 pDispParams, pVarResult, pExcepInfo, puArgErr);
1117 FIXME(
"(%p)->(%p): stub\n",
This, share_name);
1145 *
type = UnknownType;
1294 *ready =
ret ? VARIANT_TRUE : VARIANT_FALSE;
1327 object =
malloc(
sizeof(*
object));
1330 object->IDrive_iface.lpVtbl = &
drivevtbl;
1333 *
object->root = letter;
1353 IEnumVARIANT_AddRef(iface);
1365 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1374 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1378 IFolderCollection_Release(&
This->data.u.foldercoll.coll->IFolderCollection_iface);
1421 TRACE(
"%p, %lu, %p, %p.\n", iface, celt,
var, fetched);
1426 if (!celt)
return S_OK;
1458 if (
count >= celt)
break;
1474 TRACE(
"%p, %lu.\n", iface, celt);
1476 if (!celt)
return S_OK;
1509 This->data.u.foldercoll.find =
NULL;
1542 This->data.u.foldercoll.find =
NULL;
1544 IFolderCollection_AddRef(&
collection->IFolderCollection_iface);
1556 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1560 IFileCollection_Release(&
This->data.u.filecoll.coll->IFileCollection_iface);
1575 TRACE(
"%p, %ld, %p, %p.\n", iface, celt,
var, fetched);
1580 if (!celt)
return S_OK;
1606 if (++
count >= celt)
break;
1622 TRACE(
"%p, %lu.\n", iface, celt);
1624 if (!celt)
return S_OK;
1686 IFileCollection_AddRef(&
collection->IFileCollection_iface);
1698 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1702 IDriveCollection_Release(&
This->data.u.drivecoll.coll->IDriveCollection_iface);
1711 int i = penum->
data.u.drivecoll.cur == -1 ? 0 : penum->
data.u.drivecoll.cur + 1;
1714 if (penum->
data.u.drivecoll.coll->drives & (1 <<
i))
1716 penum->
data.u.drivecoll.cur =
i;
1728 TRACE(
"%p, %lu, %p, %p.\n", iface, celt,
var, fetched);
1733 if (!celt)
return S_OK;
1746 if (++
count >= celt)
break;
1759 TRACE(
"%p, %lu.\n", iface, celt);
1761 if (!celt)
return S_OK;
1775 This->data.u.drivecoll.cur = -1;
1808 This->data.u.drivecoll.cur = -1;
1809 IDriveCollection_AddRef(&
collection->IDriveCollection_iface);
1828 *
obj = &
This->IFolderCollection_iface;
1832 *
obj = &
This->classinfo.IProvideClassInfo_iface;
1846 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1856 TRACE(
"%p, refcount %ld.\n", iface,
ref);
1878 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
1884 LPOLESTR *rgszNames,
UINT cNames,
1890 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
1895 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
1904 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
1905 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
1910 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
1911 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
1917 pDispParams, pVarResult, pExcepInfo, puArgErr);
2013 *folders = &
This->IFolderCollection_iface;
2030 *
obj = &
This->IFileCollection_iface;
2034 *
obj = &
This->classinfo.IProvideClassInfo_iface;
2048 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2058 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2080 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
2086 LPOLESTR *rgszNames,
UINT cNames,
2092 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
2097 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
2106 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
2107 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
2112 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
2113 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
2119 pDispParams, pVarResult, pExcepInfo, puArgErr);
2207 *files = &
This->IFileCollection_iface;
2223 *
obj = &
This->IDriveCollection_iface;
2227 *
obj = &
This->classinfo.IProvideClassInfo_iface;
2241 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2251 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2270 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
2276 LPOLESTR *rgszNames,
UINT cNames,
2282 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
2287 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
2296 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
2297 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
2302 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
2303 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
2309 pDispParams, pVarResult, pExcepInfo, puArgErr);
2398 *
obj = &
This->classinfo.IProvideClassInfo_iface;
2412 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2422 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2444 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
2450 LPOLESTR *rgszNames,
UINT cNames,
2456 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
2461 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
2470 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
2471 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
2476 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
2477 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
2483 pDispParams, pVarResult, pExcepInfo, puArgErr);
2629 FIXME(
"(%p)->(%p): stub\n",
This, isroot);
2724 if (!(
object =
malloc(
sizeof(*
object))))
2773 *
obj = &
This->classinfo.IProvideClassInfo_iface;
2787 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2797 TRACE(
"%p, refcount %ld.\n", iface,
ref);
2821 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
2833 rgszNames, cNames,
lcid, rgDispId);
2837 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
2844 DISPPARAMS *pDispParams,
VARIANT *pVarResult, EXCEPINFO *pExcepInfo,
UINT *puArgErr)
2849 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
2850 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
2856 pDispParams, pVarResult, pExcepInfo, puArgErr);
3032 size.u.LowPart =
fd.nFileSizeLow;
3033 size.u.HighPart =
fd.nFileSizeHigh;
3162 *ppvObject = &
This->IFileSystem3_iface;
3166 *ppvObject = &
This->classinfo.IProvideClassInfo_iface;
3170 TRACE(
"Interface IDispatchEx not supported - returning NULL\n");
3176 TRACE(
"Interface IObjectWithSite not supported - returning NULL\n");
3186 IUnknown_AddRef((
IUnknown*)*ppvObject);
3193 TRACE(
"%p\n", iface);
3200 TRACE(
"%p\n", iface);
3207 TRACE(
"(%p)->(%p)\n", iface, pctinfo);
3216 TRACE(
"%p, %u, %lx, %p.\n", iface, iTInfo,
lcid, ppTInfo);
3222 LPOLESTR *rgszNames,
UINT cNames,
3228 TRACE(
"%p, %s, %p, %u, %lx, %p.\n", iface,
debugstr_guid(
riid), rgszNames, cNames,
lcid, rgDispId);
3233 hr = ITypeInfo_GetIDsOfNames(
typeinfo, rgszNames, cNames, rgDispId);
3242 DISPPARAMS *pDispParams,
VARIANT *pVarResult,
3243 EXCEPINFO *pExcepInfo,
UINT *puArgErr)
3248 TRACE(
"%p, %ld, %s, %lx, %d, %p, %p, %p, %p.\n", iface, dispIdMember,
debugstr_guid(
riid),
3249 lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
3255 pDispParams, pVarResult, pExcepInfo, puArgErr);
3264 TRACE(
"%p %p\n", iface, ppdrives);
3332 *pbstrResult =
NULL;
3353 *pbstrResult =
NULL;
3367 *pbstrResult =
NULL;
3388 *pbstrResult =
NULL;
3405 *pbstrResult =
NULL;
3457 for(beg=3,
i=3;
i<=
len;
i++) {
3468 if(exp_len ==
i-beg)
3512 *pfExists = VARIANT_FALSE;
3516 driveletter =
towupper(DriveSpec[0]);
3517 if (driveletter >=
'A' && driveletter <=
'Z'
3518 && (
len < 2 || DriveSpec[1] ==
':')
3519 && (
len < 3 || DriveSpec[2] ==
'\\')) {
3520 const WCHAR root[] = {driveletter,
':',
'\\', 0};
3573 else if (
len <= 3) {
3574 driveletter =
towupper(DriveSpec[0]);
3575 if (driveletter <
'A' || driveletter >
'Z'
3576 || (
len >= 2 && DriveSpec[1] !=
':')
3577 || (
len == 3 && DriveSpec[2] !=
'\\'))
3579 hr = IFileSystem3_DriveExists(iface, DriveSpec, &drive_exists);
3582 if (drive_exists == VARIANT_FALSE)
3586 if (DriveSpec[0] !=
'\\' || DriveSpec[1] !=
'\\')
3628 SpecialFolderConst SpecialFolder,
3634 TRACE(
"%p %d %p\n", iface, SpecialFolder,
folder);
3641 switch (SpecialFolder)
3649 case TemporaryFolder:
3656 FIXME(
"unknown special folder type, %d\n", SpecialFolder);
3803 if(!
source || !destination)
3822 DWORD src_len, dst_len, name_len;
3827 if(!
source[0] || !destination[0])
3854 src_path[src_len++] =
'\\';
3857 dst_len = destination_len;
3862 memcpy(dst_path, destination, dst_len*
sizeof(
WCHAR));
3863 if(dst_path[dst_len-1]!=
'\\' && dst_path[dst_len-1]!=
'/')
3864 dst_path[dst_len++] =
'\\';
3881 if(!
CopyFileW(src_path, dst_path, !overwrite)) {
3908 DWORD tmp, src_len, dst_len, name_len;
3915 if(!
source[0] || !destination[0])
3918 dst_len = destination_len;
3923 if(
dst[dst_len-1]!=
'\\' &&
dst[dst_len-1]!=
'/' &&
3937 src_len = source_len;
3941 src[src_len++] =
'\\';
3956 src[src_len++] =
'\\';
3963 dst[dst_len++] =
'\\';
3979 dst[dst_len+name_len] = 0;
3981 src[src_len+name_len] =
'\\';
3982 src[src_len+name_len+1] =
'*';
3983 src[src_len+name_len+2] = 0;
4068 if(
mode == ForWriting) {
4077 StandardStreamTypes StandardStreamType,
4081 FIXME(
"%p %d %d %p\n", iface, StandardStreamType, Unicode, ppts);
PRTL_UNICODE_STRING_BUFFER Path
HRESULT get_typeinfo(enum type_id tid, ITypeInfo **ret)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static const WCHAR nameW[]
_Inout_ PVCB _In_ BOOLEAN Force
BOOL WINAPI IsTextUnicode(IN CONST VOID *lpv, IN INT iSize, IN OUT LPINT lpiResult OPTIONAL)
#define ReadFile(a, b, c, d, e)
#define INVALID_HANDLE_VALUE
#define FILE_ATTRIBUTE_NORMAL
#define WideCharToMultiByte
#define MultiByteToWideChar
#define ERROR_ACCESS_DENIED
static const WCHAR *const ext[]
static const WCHAR version[]
BOOL WINAPI CopyFileW(IN LPCWSTR lpExistingFileName, IN LPCWSTR lpNewFileName, IN BOOL bFailIfExists)
BOOL WINAPI DeleteFileW(IN LPCWSTR lpFileName)
BOOL WINAPI CreateDirectoryW(IN LPCWSTR lpPathName, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes)
BOOL WINAPI RemoveDirectoryW(IN LPCWSTR lpPathName)
BOOL WINAPI GetDiskFreeSpaceExW(IN LPCWSTR lpDirectoryName OPTIONAL, OUT PULARGE_INTEGER lpFreeBytesAvailableToCaller, OUT PULARGE_INTEGER lpTotalNumberOfBytes, OUT PULARGE_INTEGER lpTotalNumberOfFreeBytes)
UINT WINAPI GetDriveTypeW(IN LPCWSTR lpRootPathName)
DWORD WINAPI GetFileAttributesW(LPCWSTR lpFileName)
BOOL WINAPI SetFileAttributesW(LPCWSTR lpFileName, DWORD dwFileAttributes)
BOOL WINAPI GetFileAttributesExW(LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, LPVOID lpFileInformation)
BOOL WINAPI SetFilePointerEx(HANDLE hFile, LARGE_INTEGER liDistanceToMove, PLARGE_INTEGER lpNewFilePointer, DWORD dwMoveMethod)
HANDLE WINAPI FindFirstFileW(IN LPCWSTR lpFileName, OUT LPWIN32_FIND_DATAW lpFindFileData)
BOOL WINAPI FindClose(HANDLE hFindFile)
BOOL WINAPI FindNextFileW(IN HANDLE hFindFile, OUT LPWIN32_FIND_DATAW lpFindFileData)
BOOL WINAPI MoveFileW(IN LPCWSTR lpExistingFileName, IN LPCWSTR lpNewFileName)
BOOL WINAPI WriteFile(_In_ HANDLE hFile, _In_reads_bytes_opt_(nNumberOfBytesToWrite) LPCVOID lpBuffer, _In_ DWORD nNumberOfBytesToWrite, _Out_opt_ LPDWORD lpNumberOfBytesWritten, _Inout_opt_ LPOVERLAPPED lpOverlapped)
BOOL WINAPI GetVolumeInformationW(IN LPCWSTR lpRootPathName, IN LPWSTR lpVolumeNameBuffer, IN DWORD nVolumeNameSize, OUT LPDWORD lpVolumeSerialNumber OPTIONAL, OUT LPDWORD lpMaximumComponentLength OPTIONAL, OUT LPDWORD lpFileSystemFlags OPTIONAL, OUT LPWSTR lpFileSystemNameBuffer OPTIONAL, IN DWORD nFileSystemNameSize)
DWORD WINAPI GetTempPathW(IN DWORD count, OUT LPWSTR path)
UINT WINAPI GetSystemDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
DWORD WINAPI GetFullPathNameW(IN LPCWSTR lpFileName, IN DWORD nBufferLength, OUT LPWSTR lpBuffer, OUT LPWSTR *lpFilePart)
UINT WINAPI GetWindowsDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
BOOL WINAPI FileTimeToSystemTime(IN CONST FILETIME *lpFileTime, OUT LPSYSTEMTIME lpSystemTime)
BOOL WINAPI FileTimeToLocalFileTime(IN CONST FILETIME *lpFileTime, OUT LPFILETIME lpLocalFileTime)
BOOL WINAPI IsDBCSLeadByte(BYTE testchar)
BOOL WINAPI GetFileVersionInfoW(LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data)
BOOL WINAPI VerQueryValueW(LPCVOID pBlock, LPCWSTR lpSubBlock, LPVOID *lplpBuffer, PUINT puLen)
DWORD WINAPI GetFileVersionInfoSizeW(LPCWSTR filename, LPDWORD handle)
DWORD WINAPI DECLSPEC_HOTPATCH GetLogicalDrives(void)
_ACRTIMP int __cdecl wcscmp(const wchar_t *, const wchar_t *)
static wchar_t * wmemchr(const wchar_t *s, wchar_t c, size_t n)
HRESULT WINAPI VarR8FromUI8(ULONG64 ullIn, double *pDblOut)
static HRESULT WINAPI drivecoll_QueryInterface(IDriveCollection *iface, REFIID riid, void **obj)
static HRESULT WINAPI file_Invoke(IFile *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI filesys_CopyFolder(IFileSystem3 *iface, BSTR Source, BSTR Destination, VARIANT_BOOL OverWriteFiles)
static HRESULT delete_folder(const WCHAR *folder, DWORD folder_len, VARIANT_BOOL force)
static HRESULT WINAPI folder_get_DateLastModified(IFolder *iface, DATE *date)
static HRESULT WINAPI filesys_get_Drives(IFileSystem3 *iface, IDriveCollection **ppdrives)
static BOOL is_file_data(const WIN32_FIND_DATAW *data)
static HRESULT WINAPI folder_get_Type(IFolder *iface, BSTR *type)
static HRESULT WINAPI folder_get_Size(IFolder *iface, VARIANT *size)
static HRESULT WINAPI foldercoll_enumvariant_Next(IEnumVARIANT *iface, ULONG celt, VARIANT *var, ULONG *fetched)
static HRESULT WINAPI folder_put_Name(IFolder *iface, BSTR name)
static BSTR get_full_path(BSTR path, const WIN32_FIND_DATAW *data)
static ULONG WINAPI foldercoll_AddRef(IFolderCollection *iface)
static HRESULT WINAPI file_Delete(IFile *iface, VARIANT_BOOL Force)
static HRESULT create_foldercoll(BSTR path, IFolderCollection **folders)
static HRESULT WINAPI filecoll_enumvariant_Reset(IEnumVARIANT *iface)
static HRESULT WINAPI pipestream_WriteLine(ITextStream *iface, BSTR text)
static HRESULT WINAPI filesys_DriveExists(IFileSystem3 *iface, BSTR DriveSpec, VARIANT_BOOL *pfExists)
static HRESULT WINAPI folder_get_ShortName(IFolder *iface, BSTR *name)
static HRESULT WINAPI file_get_DateCreated(IFile *iface, DATE *date)
static HRESULT create_drivecoll_enum(struct drivecollection *, IUnknown **)
static const IEnumVARIANTVtbl filecollenumvariantvtbl
static HRESULT WINAPI drivecoll_GetTypeInfo(IDriveCollection *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI drive_get_FreeSpace(IDrive *iface, VARIANT *v)
static HRESULT WINAPI foldercoll_GetTypeInfoCount(IFolderCollection *iface, UINT *pctinfo)
static HRESULT WINAPI textstream_get_Line(ITextStream *iface, LONG *line)
static HRESULT WINAPI folder_get_Name(IFolder *iface, BSTR *name)
static HRESULT WINAPI folder_get_IsRootFolder(IFolder *iface, VARIANT_BOOL *isroot)
static BOOL is_dir_data(const WIN32_FIND_DATAW *data)
static const IDriveCollectionVtbl drivecollectionvtbl
static ULONG WINAPI filecoll_Release(IFileCollection *iface)
static HRESULT WINAPI file_get_ShortName(IFile *iface, BSTR *pbstrName)
static HRESULT WINAPI textstream_GetIDsOfNames(ITextStream *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI pipestream_get_Column(ITextStream *iface, LONG *column)
static HRESULT WINAPI pipestream_get_Line(ITextStream *iface, LONG *line)
static const IFileCollectionVtbl filecollectionvtbl
static const IFileVtbl file_vtbl
static HRESULT WINAPI file_GetTypeInfoCount(IFile *iface, UINT *pctinfo)
static HRESULT WINAPI folder_CreateTextFile(IFolder *iface, BSTR filename, VARIANT_BOOL overwrite, VARIANT_BOOL unicode, ITextStream **stream)
static HRESULT WINAPI filecoll_enumvariant_Clone(IEnumVARIANT *iface, IEnumVARIANT **pclone)
static HRESULT WINAPI filesys_GetFile(IFileSystem3 *iface, BSTR FilePath, IFile **ppfile)
static HRESULT WINAPI file_get_Attributes(IFile *iface, FileAttribute *pfa)
static HRESULT WINAPI file_get_ParentFolder(IFile *iface, IFolder **ppfolder)
static HRESULT WINAPI folder_get_SubFolders(IFolder *iface, IFolderCollection **folders)
static HRESULT create_folder(const WCHAR *, IFolder **)
static HRESULT WINAPI file_get_ShortPath(IFile *iface, BSTR *pbstrPath)
static HRESULT create_filecoll(BSTR path, IFileCollection **files)
static HRESULT WINAPI filesys_MoveFile(IFileSystem3 *iface, BSTR source, BSTR destination)
static HRESULT WINAPI filesys_GetTypeInfoCount(IFileSystem3 *iface, UINT *pctinfo)
static HRESULT WINAPI pipestream_ReadAll(ITextStream *iface, BSTR *text)
static HRESULT WINAPI foldercoll_enumvariant_Reset(IEnumVARIANT *iface)
static HRESULT WINAPI folder_QueryInterface(IFolder *iface, REFIID riid, void **obj)
static HRESULT WINAPI filesys_GetDrive(IFileSystem3 *iface, BSTR DriveSpec, IDrive **ppdrive)
static HRESULT WINAPI filecoll_enumvariant_Skip(IEnumVARIANT *iface, ULONG celt)
static HRESULT WINAPI foldercoll_get_Item(IFolderCollection *iface, VARIANT key, IFolder **folder)
static HRESULT WINAPI filesys_GetDriveName(IFileSystem3 *iface, BSTR path, BSTR *drive)
static HRESULT WINAPI folder_Delete(IFolder *iface, VARIANT_BOOL force)
static HRESULT WINAPI textstream_GetTypeInfoCount(ITextStream *iface, UINT *pctinfo)
static HRESULT WINAPI drivecoll_Invoke(IDriveCollection *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI pipestream_Skip(ITextStream *iface, LONG count)
static HRESULT WINAPI drivecoll_get_Count(IDriveCollection *iface, LONG *count)
static ULONG WINAPI file_AddRef(IFile *iface)
static HRESULT WINAPI drivecoll_GetTypeInfoCount(IDriveCollection *iface, UINT *pctinfo)
static HRESULT WINAPI textstream_Skip(ITextStream *iface, LONG count)
static const IEnumVARIANTVtbl foldercollenumvariantvtbl
static struct drive * impl_from_IDrive(IDrive *iface)
static HRESULT WINAPI textstream_GetTypeInfo(ITextStream *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT find_next_drive(struct enumvariant *penum)
static struct drivecollection * impl_from_IDriveCollection(IDriveCollection *iface)
static HRESULT WINAPI drive_get_SerialNumber(IDrive *iface, LONG *serial)
static DWORD get_parent_folder_name(const WCHAR *path, DWORD len)
static HRESULT append_read_data(struct textstream *stream, const char *buf, size_t buf_size)
static struct filecollection * impl_from_IFileCollection(IFileCollection *iface)
static HRESULT WINAPI drivecoll_enumvariant_Clone(IEnumVARIANT *iface, IEnumVARIANT **pclone)
static HRESULT WINAPI filesys_QueryInterface(IFileSystem3 *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI file_OpenAsTextStream(IFile *iface, IOMode mode, Tristate format, ITextStream **stream)
static HRESULT WINAPI filesys_GetTempName(IFileSystem3 *iface, BSTR *result)
static HRESULT WINAPI filesys_CreateFolder(IFileSystem3 *iface, BSTR path, IFolder **folder)
static HRESULT get_date_from_filetime(const FILETIME *ft, DATE *date)
static HRESULT WINAPI filesys_OpenTextFile(IFileSystem3 *iface, BSTR filename, IOMode mode, VARIANT_BOOL create, Tristate format, ITextStream **stream)
static HRESULT WINAPI file_get_Drive(IFile *iface, IDrive **ppdrive)
static HRESULT WINAPI foldercoll_get_Count(IFolderCollection *iface, LONG *count)
static struct file * impl_from_IFile(IFile *iface)
static HRESULT WINAPI filesys_GetIDsOfNames(IFileSystem3 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI file_Move(IFile *iface, BSTR Destination)
static HRESULT WINAPI filesys_DeleteFile(IFileSystem3 *iface, BSTR FileSpec, VARIANT_BOOL Force)
static HRESULT WINAPI filecoll_Invoke(IFileCollection *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI filecoll_GetIDsOfNames(IFileCollection *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI textstream_get_AtEndOfStream(ITextStream *iface, VARIANT_BOOL *eos)
static HRESULT WINAPI folder_Move(IFolder *iface, BSTR dest)
static HRESULT WINAPI filesys_GetAbsolutePathName(IFileSystem3 *iface, BSTR path, BSTR *pbstrResult)
static HRESULT variant_from_largeint(const ULARGE_INTEGER *src, VARIANT *v)
static HRESULT WINAPI file_QueryInterface(IFile *iface, REFIID riid, void **obj)
static HRESULT read_more_data(struct textstream *stream)
static HRESULT WINAPI textstream_QueryInterface(ITextStream *iface, REFIID riid, void **obj)
static ULONG WINAPI drivecoll_Release(IDriveCollection *iface)
static const IDriveVtbl drivevtbl
static ULONG WINAPI folder_Release(IFolder *iface)
static HRESULT WINAPI folder_get_Path(IFolder *iface, BSTR *path)
static HRESULT WINAPI folder_put_Attributes(IFolder *iface, FileAttribute attr)
static HRESULT WINAPI drive_get_DriveLetter(IDrive *iface, BSTR *letter)
static HRESULT WINAPI drive_get_TotalSize(IDrive *iface, VARIANT *v)
static HRESULT WINAPI foldercoll_enumvariant_Clone(IEnumVARIANT *iface, IEnumVARIANT **pclone)
static ULONG WINAPI textstream_Release(ITextStream *iface)
static HRESULT WINAPI drive_get_DriveType(IDrive *iface, DriveTypeConst *type)
static HRESULT WINAPI textstream_ReadAll(ITextStream *iface, BSTR *text)
static HRESULT WINAPI folder_get_Attributes(IFolder *iface, FileAttribute *attr)
static HRESULT WINAPI textstream_ReadLine(ITextStream *iface, BSTR *text)
static HRESULT WINAPI file_put_Attributes(IFile *iface, FileAttribute pfa)
static HRESULT WINAPI pipestream_get_AtEndOfStream(ITextStream *iface, VARIANT_BOOL *eos)
static HRESULT WINAPI drive_get_VolumeName(IDrive *iface, BSTR *name)
static HRESULT WINAPI pipestream_Write(ITextStream *iface, BSTR text)
static const IFolderVtbl foldervtbl
static HRESULT WINAPI pipestream_Read(ITextStream *iface, LONG len, BSTR *text)
static HRESULT WINAPI drivecoll_GetIDsOfNames(IDriveCollection *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI filecoll_get_Count(IFileCollection *iface, LONG *count)
static HRESULT WINAPI drive_GetTypeInfoCount(IDrive *iface, UINT *pctinfo)
static HRESULT WINAPI drive_get_RootFolder(IDrive *iface, IFolder **folder)
static HRESULT WINAPI filesys_GetStandardStream(IFileSystem3 *iface, StandardStreamTypes StandardStreamType, VARIANT_BOOL Unicode, ITextStream **ppts)
static HRESULT WINAPI folder_get_ShortPath(IFolder *iface, BSTR *path)
static HRESULT WINAPI drivecoll_get__NewEnum(IDriveCollection *iface, IUnknown **ppenum)
static HRESULT WINAPI textstream_Write(ITextStream *iface, BSTR text)
static HRESULT WINAPI textstream_WriteLine(ITextStream *iface, BSTR text)
static HRESULT WINAPI file_get_Type(IFile *iface, BSTR *pbstrType)
static HRESULT WINAPI drivecoll_get_Item(IDriveCollection *iface, VARIANT key, IDrive **drive)
static HRESULT WINAPI textstream_get_Column(ITextStream *iface, LONG *column)
static HRESULT WINAPI filesys_GetSpecialFolder(IFileSystem3 *iface, SpecialFolderConst SpecialFolder, IFolder **folder)
static HRESULT WINAPI filesys_GetParentFolderName(IFileSystem3 *iface, BSTR Path, BSTR *pbstrResult)
static HRESULT WINAPI drive_put_VolumeName(IDrive *iface, BSTR name)
static HRESULT WINAPI filesys_GetFileName(IFileSystem3 *iface, BSTR Path, BSTR *pbstrResult)
static HRESULT WINAPI file_get_Path(IFile *iface, BSTR *path)
static ULONG WINAPI textstream_AddRef(ITextStream *iface)
static HRESULT WINAPI filesys_CopyFile(IFileSystem3 *iface, BSTR Source, BSTR Destination, VARIANT_BOOL OverWriteFiles)
static HRESULT create_drive(WCHAR letter, IDrive **drive)
static HRESULT WINAPI filecoll_get_Item(IFileCollection *iface, VARIANT Key, IFile **file)
static ULONG WINAPI folder_AddRef(IFolder *iface)
static HRESULT WINAPI filesys_GetFileVersion(IFileSystem3 *iface, BSTR name, BSTR *version)
static HRESULT WINAPI foldercoll_QueryInterface(IFolderCollection *iface, REFIID riid, void **obj)
static HRESULT WINAPI drive_GetTypeInfo(IDrive *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI file_get_Name(IFile *iface, BSTR *name)
static HRESULT WINAPI filecoll_get__NewEnum(IFileCollection *iface, IUnknown **ppenum)
static const IFolderCollectionVtbl foldercollvtbl
static HRESULT WINAPI drivecoll_enumvariant_Skip(IEnumVARIANT *iface, ULONG celt)
static HRESULT WINAPI enumvariant_QueryInterface(IEnumVARIANT *iface, REFIID riid, void **obj)
static HRESULT WINAPI pipestream_ReadLine(ITextStream *iface, BSTR *text)
static HRESULT WINAPI foldercoll_GetIDsOfNames(IFolderCollection *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI drive_get_ShareName(IDrive *iface, BSTR *share_name)
static HRESULT WINAPI file_get_DateLastModified(IFile *iface, DATE *date)
static HRESULT WINAPI filecoll_GetTypeInfoCount(IFileCollection *iface, UINT *pctinfo)
static HRESULT WINAPI drive_get_AvailableSpace(IDrive *iface, VARIANT *v)
static HRESULT WINAPI filecoll_QueryInterface(IFileCollection *iface, REFIID riid, void **obj)
static BOOL read_from_buffer(struct textstream *stream, size_t len, BSTR *ret, size_t skip)
static HRESULT create_error(DWORD err)
static HRESULT copy_file(const WCHAR *source, DWORD source_len, const WCHAR *destination, DWORD destination_len, VARIANT_BOOL overwrite)
static HRESULT WINAPI folder_GetTypeInfoCount(IFolder *iface, UINT *pctinfo)
static HRESULT WINAPI textstream_SkipLine(ITextStream *iface)
static HRESULT WINAPI filesys_GetBaseName(IFileSystem3 *iface, BSTR Path, BSTR *pbstrResult)
static ULONG WINAPI foldercoll_Release(IFolderCollection *iface)
static HRESULT WINAPI filesys_DeleteFolder(IFileSystem3 *iface, BSTR FolderSpec, VARIANT_BOOL Force)
static BOOL textstream_check_iomode(struct textstream *This, enum iotype type)
HRESULT WINAPI DoOpenPipeStream(HANDLE pipe, IOMode mode, ITextStream **ret)
static ULONG WINAPI filesys_Release(IFileSystem3 *iface)
static HRESULT textstream_writecrlf(struct textstream *stream)
static HRESULT WINAPI folder_get_Files(IFolder *iface, IFileCollection **files)
static const IEnumVARIANTVtbl drivecollenumvariantvtbl
static const struct IFileSystem3Vtbl filesys_vtbl
static ULONG WINAPI enumvariant_AddRef(IEnumVARIANT *iface)
static HRESULT WINAPI filesys_MoveFolder(IFileSystem3 *iface, BSTR Source, BSTR Destination)
static HRESULT WINAPI filecoll_enumvariant_Next(IEnumVARIANT *iface, ULONG celt, VARIANT *var, ULONG *fetched)
static HRESULT WINAPI foldercoll_enumvariant_Skip(IEnumVARIANT *iface, ULONG celt)
static HRESULT WINAPI textstream_WriteBlankLines(ITextStream *iface, LONG lines)
static HRESULT WINAPI file_Copy(IFile *iface, BSTR Destination, VARIANT_BOOL OverWriteFiles)
static HRESULT WINAPI folder_get_ParentFolder(IFolder *iface, IFolder **parent)
static HRESULT WINAPI filesys_GetFolder(IFileSystem3 *iface, BSTR FolderPath, IFolder **folder)
static HRESULT WINAPI textstream_Read(ITextStream *iface, LONG len, BSTR *text)
static HRESULT WINAPI foldercoll_get__NewEnum(IFolderCollection *iface, IUnknown **newenum)
static HANDLE start_enumeration(const WCHAR *path, WIN32_FIND_DATAW *data, BOOL file)
static HRESULT WINAPI file_get_Size(IFile *iface, VARIANT *pvarSize)
static ULONG WINAPI drive_Release(IDrive *iface)
static HRESULT create_foldercoll_enum(struct foldercollection *, IUnknown **)
static void get_versionstring(VS_FIXEDFILEINFO *info, WCHAR *ver)
static ULONG WINAPI file_Release(IFile *iface)
static HRESULT WINAPI folder_get_Drive(IFolder *iface, IDrive **drive)
static HRESULT WINAPI pipestream_SkipLine(ITextStream *iface)
static HRESULT WINAPI filesys_FolderExists(IFileSystem3 *iface, BSTR path, VARIANT_BOOL *ret)
static HRESULT WINAPI foldercoll_Add(IFolderCollection *iface, BSTR name, IFolder **folder)
static HRESULT create_drivecoll(IDriveCollection **drives)
static HRESULT WINAPI folder_get_DateLastAccessed(IFolder *iface, DATE *date)
static HRESULT WINAPI drive_Invoke(IDrive *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static struct filesystem * impl_from_IFileSystem3(IFileSystem3 *iface)
static HRESULT textstream_write(struct textstream *stream, BSTR text)
static ULONG WINAPI drive_AddRef(IDrive *iface)
static HRESULT build_path(BSTR Path, BSTR Name, BSTR *Result)
static HRESULT WINAPI textstream_Close(ITextStream *iface)
static HRESULT WINAPI pipestream_WriteBlankLines(ITextStream *iface, LONG lines)
static HRESULT WINAPI filesys_GetExtensionName(IFileSystem3 *iface, BSTR path, BSTR *ext)
static ULONG WINAPI drivecoll_enumvariant_Release(IEnumVARIANT *iface)
static HRESULT WINAPI drive_get_FileSystem(IDrive *iface, BSTR *fs)
static HRESULT WINAPI file_get_DateLastAccessed(IFile *iface, DATE *pdate)
static HRESULT WINAPI drivecoll_enumvariant_Next(IEnumVARIANT *iface, ULONG celt, VARIANT *var, ULONG *fetched)
static HRESULT WINAPI textstream_Invoke(ITextStream *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static const ITextStreamVtbl pipestreamvtbl
static HRESULT WINAPI pipestream_get_AtEndOfLine(ITextStream *iface, VARIANT_BOOL *eol)
static HRESULT WINAPI drive_get_IsReady(IDrive *iface, VARIANT_BOOL *ready)
static HRESULT WINAPI folder_Copy(IFolder *iface, BSTR dest, VARIANT_BOOL overwrite)
static HRESULT WINAPI drive_QueryInterface(IDrive *iface, REFIID riid, void **obj)
static HRESULT WINAPI filesys_GetTypeInfo(IFileSystem3 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI filesys_CreateTextFile(IFileSystem3 *iface, BSTR filename, VARIANT_BOOL overwrite, VARIANT_BOOL unicode, ITextStream **stream)
static struct textstream * impl_from_ITextStream(ITextStream *iface)
static HRESULT WINAPI folder_GetTypeInfo(IFolder *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static struct foldercollection * impl_from_IFolderCollection(IFolderCollection *iface)
static HRESULT WINAPI folder_get_DateCreated(IFolder *iface, DATE *date)
static ULONG WINAPI foldercoll_enumvariant_Release(IEnumVARIANT *iface)
static struct folder * impl_from_IFolder(IFolder *iface)
static HRESULT WINAPI filesys_BuildPath(IFileSystem3 *iface, BSTR Path, BSTR Name, BSTR *Result)
static HRESULT WINAPI textstream_get_AtEndOfLine(ITextStream *iface, VARIANT_BOOL *eol)
static const ITextStreamVtbl textstreamvtbl
static ULONG WINAPI filesys_AddRef(IFileSystem3 *iface)
static ULONG WINAPI filecoll_AddRef(IFileCollection *iface)
static HRESULT create_textstream(const WCHAR *filename, DWORD disposition, IOMode mode, Tristate format, ITextStream **ret)
static HRESULT WINAPI folder_GetIDsOfNames(IFolder *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI file_GetTypeInfo(IFile *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI file_put_Name(IFile *iface, BSTR pbstrName)
static HRESULT WINAPI filecoll_GetTypeInfo(IFileCollection *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI foldercoll_Invoke(IFolderCollection *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI folder_Invoke(IFolder *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static ULONG WINAPI filecoll_enumvariant_Release(IEnumVARIANT *iface)
static HRESULT WINAPI foldercoll_GetTypeInfo(IFolderCollection *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
static HRESULT WINAPI drive_GetIDsOfNames(IDrive *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT copy_folder(const WCHAR *source, DWORD source_len, const WCHAR *destination, DWORD destination_len, VARIANT_BOOL overwrite)
HRESULT WINAPI FileSystem_CreateInstance(IClassFactory *iface, IUnknown *outer, REFIID riid, void **ppv)
static HRESULT WINAPI filesys_Invoke(IFileSystem3 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI file_GetIDsOfNames(IFile *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
static HRESULT WINAPI drivecoll_enumvariant_Reset(IEnumVARIANT *iface)
static struct enumvariant * impl_from_IEnumVARIANT(IEnumVARIANT *iface)
static HRESULT WINAPI drive_get_Path(IDrive *iface, BSTR *path)
static HRESULT create_filecoll_enum(struct filecollection *, IUnknown **)
static HRESULT WINAPI filesys_FileExists(IFileSystem3 *iface, BSTR path, VARIANT_BOOL *ret)
static ULONG WINAPI drivecoll_AddRef(IDriveCollection *iface)
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLboolean GLboolean GLboolean b
GLenum GLuint GLenum GLsizei const GLchar * buf
GLuint GLint GLboolean GLint GLenum access
GLboolean GLboolean GLboolean GLboolean a
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static const WCHAR crlfW[]
unsigned long long DWORDLONG
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
#define ERROR_ALREADY_EXISTS
#define TRUNCATE_EXISTING
#define FILE_ATTRIBUTE_DEVICE
#define ERROR_FILE_NOT_FOUND
const IID IID_IObjectWithSite
#define create_file(name, size)
static const WCHAR pathW[]
static const struct access_res create[16]
static const char utf16bom[]
static VARIANTARG static DISPID
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
#define FILE_ATTRIBUTE_READONLY
#define FILE_ATTRIBUTE_COMPRESSED
#define FILE_ATTRIBUTE_HIDDEN
#define FILE_ATTRIBUTE_SYSTEM
#define FILE_ATTRIBUTE_ARCHIVE
#define FILE_ATTRIBUTE_DIRECTORY
#define FILE_ATTRIBUTE_REPARSE_POINT
UINT WINAPI SysStringByteLen(BSTR str)
BSTR WINAPI SysAllocString(LPCOLESTR str)
UINT WINAPI SysStringLen(BSTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
#define CTL_E_BADFILEMODE
#define CTL_E_PATHNOTFOUND
#define CTL_E_FILENOTFOUND
#define CTL_E_FILEALREADYEXISTS
#define CTL_E_DEVICEUNAVAILABLE
#define CTL_E_PERMISSIONDENIED
const GUID IID_IProvideClassInfo
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
void init_classinfo(const GUID *guid, IUnknown *outer, struct provideclassinfo *classinfo)
_Field_z_ WCHAR cFileName[MAX_PATH]
IDriveCollection IDriveCollection_iface
struct enumdata::@667::@669 filecoll
struct drivecollection * coll
struct enumdata::@667::@670 drivecoll
struct foldercollection * coll
struct enumdata::@667::@668 foldercoll
struct filecollection * coll
IEnumVARIANT IEnumVARIANT_iface
IFileCollection IFileCollection_iface
IFileSystem3 IFileSystem3_iface
struct provideclassinfo classinfo
IFolderCollection IFolderCollection_iface
ITextStream ITextStream_iface
#define CONTAINING_RECORD(address, type, field)
INT WINAPI SystemTimeToVariantTime(LPSYSTEMTIME lpSt, double *pDateOut)
#define INVALID_FILE_ATTRIBUTES
#define DRIVE_NO_ROOT_DIR
DWORD WINAPI GetLastError(void)
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
#define ERROR_PATH_NOT_FOUND
#define ERROR_FILE_EXISTS
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO