scrrun: Add scrrun tests.
This commit is contained in:
parent
62077059a5
commit
1c62c9f7f9
|
@ -121,6 +121,7 @@ dlls/rpcrt4/tests/server.h
|
|||
dlls/rpcrt4/tests/server_c.c
|
||||
dlls/rpcrt4/tests/server_s.c
|
||||
dlls/scrrun/scrrun.h
|
||||
dlls/scrrun/tests/scrrun.h
|
||||
dlls/shell32/AUTHORS
|
||||
dlls/sti/sti_wia.h
|
||||
dlls/sti/sti_wia_p.c
|
||||
|
|
|
@ -15291,6 +15291,7 @@ wine_fn_config_dll sccbase enable_sccbase
|
|||
wine_fn_config_dll schannel enable_schannel
|
||||
wine_fn_config_test dlls/schannel/tests schannel_test
|
||||
wine_fn_config_dll scrrun enable_scrrun
|
||||
wine_fn_config_test dlls/scrrun/tests scrrun_test
|
||||
wine_fn_config_dll secur32 enable_secur32 implib
|
||||
wine_fn_config_test dlls/secur32/tests secur32_test
|
||||
wine_fn_config_dll security enable_security
|
||||
|
|
|
@ -2797,6 +2797,7 @@ WINE_CONFIG_DLL(sccbase)
|
|||
WINE_CONFIG_DLL(schannel)
|
||||
WINE_CONFIG_TEST(dlls/schannel/tests)
|
||||
WINE_CONFIG_DLL(scrrun)
|
||||
WINE_CONFIG_TEST(dlls/scrrun/tests)
|
||||
WINE_CONFIG_DLL(secur32,,[implib])
|
||||
WINE_CONFIG_TEST(dlls/secur32/tests)
|
||||
WINE_CONFIG_DLL(security)
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
TESTDLL = scrrun.dll
|
||||
IMPORTS = ole32 shlwapi uuid
|
||||
|
||||
C_SRCS = \
|
||||
filesystem.c
|
||||
|
||||
IDL_H_SRCS = scrrun.idl
|
||||
|
||||
@MAKE_TEST_RULES@
|
|
@ -0,0 +1,68 @@
|
|||
/*
|
||||
*
|
||||
* Copyright 2012 Alistair Leslie-Hughes
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#define COBJMACROS
|
||||
#include <stdio.h>
|
||||
|
||||
#include "windows.h"
|
||||
#include "ole2.h"
|
||||
#include "dispex.h"
|
||||
|
||||
#include "wine/test.h"
|
||||
|
||||
#include "initguid.h"
|
||||
#include "scrrun.h"
|
||||
|
||||
void test_interfaces(void)
|
||||
{
|
||||
HRESULT hr;
|
||||
IDispatch *disp;
|
||||
IDispatchEx *dispex;
|
||||
IFileSystem3 *fs3;
|
||||
IObjectWithSite *site;
|
||||
|
||||
hr = CoCreateInstance(&CLSID_FileSystemObject, NULL, CLSCTX_INPROC_SERVER|CLSCTX_INPROC_HANDLER,
|
||||
&IID_IDispatch, (void**)&disp);
|
||||
if(FAILED(hr)) {
|
||||
win_skip("Could not create FileSystem object: %08x\n", hr);
|
||||
return;
|
||||
}
|
||||
|
||||
hr = IDispatch_QueryInterface(disp, &IID_IFileSystem3, (void**)&fs3);
|
||||
ok(hr == S_OK, "got 0x%08x, expected 0x%08x\n", hr, S_OK);
|
||||
IFileSystem3_Release(fs3);
|
||||
|
||||
hr = IDispatch_QueryInterface(disp, &IID_IObjectWithSite, (void**)&site);
|
||||
ok(hr == E_NOINTERFACE, "got 0x%08x, expected 0x%08x\n", hr, E_NOINTERFACE);
|
||||
|
||||
hr = IDispatch_QueryInterface(disp, &IID_IDispatchEx, (void**)&dispex);
|
||||
ok(hr == E_NOINTERFACE, "got 0x%08x, expected 0x%08x\n", hr, E_NOINTERFACE);
|
||||
|
||||
IDispatch_Release(disp);
|
||||
}
|
||||
|
||||
START_TEST(filesystem)
|
||||
{
|
||||
CoInitialize(NULL);
|
||||
|
||||
test_interfaces();
|
||||
|
||||
|
||||
CoUninitialize();
|
||||
}
|
|
@ -0,0 +1,691 @@
|
|||
/*
|
||||
* Copyright (C) 2012 Alistair Leslie-Hughes
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl";
|
||||
import "oaidl.idl";
|
||||
|
||||
cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
|
||||
cpp_quote("#undef CopyFile")
|
||||
cpp_quote("#undef DeleteFile")
|
||||
cpp_quote("#undef MoveFile")
|
||||
cpp_quote("#endif")
|
||||
|
||||
[
|
||||
uuid(420B2830-E718-11CF-893D-00A0C9054228),
|
||||
version(1.0)
|
||||
]
|
||||
library Scripting
|
||||
{
|
||||
importlib("stdole2.tlb");
|
||||
|
||||
interface IDictionary;
|
||||
interface IDrive;
|
||||
interface IDriveCollection;
|
||||
interface IFile;
|
||||
interface IFileCollection;
|
||||
interface IFileSystem;
|
||||
interface IFileSystem3;
|
||||
interface IFolder;
|
||||
interface IFolderCollection;
|
||||
interface IScriptEncoder;
|
||||
interface ITextStream;
|
||||
|
||||
typedef enum CompareMethod
|
||||
{
|
||||
BinaryCompare = 0,
|
||||
TextCompare = 1,
|
||||
DatabaseCompare = 2
|
||||
} CompareMethod;
|
||||
|
||||
typedef enum IOMode
|
||||
{
|
||||
ForReading = 1,
|
||||
ForWriting = 2,
|
||||
ForAppending = 8
|
||||
} IOMode;
|
||||
|
||||
typedef enum Tristate
|
||||
{
|
||||
TristateTrue = 0xffffffff,
|
||||
TristateFalse = 0,
|
||||
TristateUseDefault = 0xfffffffe,
|
||||
TristateMixed = 0xfffffffe
|
||||
} Tristate;
|
||||
|
||||
typedef enum FileAttribute
|
||||
{
|
||||
Normal = 0,
|
||||
ReadOnly = 1,
|
||||
Hidden = 2,
|
||||
System = 4,
|
||||
Volume = 8,
|
||||
Directory = 16,
|
||||
Archive = 32,
|
||||
Alias = 1024,
|
||||
Compressed = 2048
|
||||
} FileAttribute;
|
||||
|
||||
typedef enum SpecialFolderConst
|
||||
{
|
||||
WindowsFolder = 0,
|
||||
SystemFolder = 1,
|
||||
TemporaryFolder = 2
|
||||
} SpecialFolderConst;
|
||||
|
||||
typedef enum DriveTypeConst
|
||||
{
|
||||
UnknownType = 0,
|
||||
Removable = 1,
|
||||
Fixed = 2,
|
||||
Remote = 3,
|
||||
CDRom = 4,
|
||||
RamDisk = 5
|
||||
} DriveTypeConst;
|
||||
|
||||
typedef enum StandardStreamTypes
|
||||
{
|
||||
StdIn = 0,
|
||||
StdOut = 1,
|
||||
StdErr = 2
|
||||
} StandardStreamTypes;
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(42C642C1-97E1-11CF-978F-00A02463E06F),
|
||||
hidden,
|
||||
dual,
|
||||
oleautomation
|
||||
]
|
||||
interface IDictionary : IDispatch
|
||||
{
|
||||
[id(00000000), propputref]
|
||||
HRESULT Item([in] VARIANT* Key, [in] VARIANT* pRetItem);
|
||||
|
||||
[id(00000000), propput]
|
||||
HRESULT Item([in] VARIANT* Key, [in] VARIANT* pRetItem);
|
||||
|
||||
[id(00000000), propget]
|
||||
HRESULT Item([in] VARIANT* Key, [out, retval] VARIANT* pRetItem);
|
||||
|
||||
[id(0x00000001)]
|
||||
HRESULT Add([in] VARIANT* Key, [in] VARIANT* Item);
|
||||
|
||||
[id(0x00000002), propget]
|
||||
HRESULT Count([out, retval] long* pCount);
|
||||
|
||||
[id(0x00000003)]
|
||||
HRESULT Exists([in] VARIANT* Key, [out, retval] VARIANT_BOOL* pExists);
|
||||
|
||||
[id(0x00000004)]
|
||||
HRESULT Items([out, retval] VARIANT* pItemsArray);
|
||||
|
||||
[id(0x00000005), propput]
|
||||
HRESULT Key([in] VARIANT* Key, [in] VARIANT* rhs);
|
||||
|
||||
[id(0x00000006)]
|
||||
HRESULT Keys([out, retval] VARIANT* pKeysArray);
|
||||
|
||||
[id(0x00000007)]
|
||||
HRESULT Remove([in] VARIANT* Key);
|
||||
|
||||
[id(0x00000008)]
|
||||
HRESULT RemoveAll();
|
||||
|
||||
[id(0x00000009), propput]
|
||||
HRESULT CompareMode([in] CompareMethod pcomp);
|
||||
|
||||
[id(0x00000009), propget]
|
||||
HRESULT CompareMode([out, retval] CompareMethod* pcomp);
|
||||
|
||||
[id(DISPID_NEWENUM), restricted]
|
||||
HRESULT _NewEnum([out, retval] IUnknown** ppunk);
|
||||
|
||||
[id(0x0000000a), propget, hidden]
|
||||
HRESULT HashVal([in] VARIANT* Key, [out, retval] VARIANT* HashVal);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(0AB5A3D0-E5B6-11D0-ABF5-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFileSystem : IDispatch
|
||||
{
|
||||
[id(0x0000271a), propget]
|
||||
HRESULT Drives([out, retval] IDriveCollection** ppdrives);
|
||||
|
||||
[id(0x00002710)]
|
||||
HRESULT BuildPath([in] BSTR Path, [in] BSTR Name, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002714)]
|
||||
HRESULT GetDriveName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002715)]
|
||||
HRESULT GetParentFolderName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002716)]
|
||||
HRESULT GetFileName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002717)]
|
||||
HRESULT GetBaseName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002718)]
|
||||
HRESULT GetExtensionName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002712)]
|
||||
HRESULT GetAbsolutePathName([in] BSTR Path, [out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x00002713)]
|
||||
HRESULT GetTempName([out, retval] BSTR* pbstrResult);
|
||||
|
||||
[id(0x0000271f)]
|
||||
HRESULT DriveExists([in] BSTR DriveSpec, [out, retval] VARIANT_BOOL* pfExists);
|
||||
|
||||
[id(0x00002720)]
|
||||
HRESULT FileExists([in] BSTR FileSpec, [out, retval] VARIANT_BOOL* pfExists);
|
||||
|
||||
[id(0x00002721)]
|
||||
HRESULT FolderExists([in] BSTR FolderSpec, [out, retval] VARIANT_BOOL* pfExists);
|
||||
|
||||
[id(0x0000271b)]
|
||||
HRESULT GetDrive([in] BSTR DriveSpec, [out, retval] IDrive** ppdrive);
|
||||
|
||||
[id(0x0000271c)]
|
||||
HRESULT GetFile([in] BSTR FilePath, [out, retval] IFile** ppfile);
|
||||
|
||||
[id(0x0000271d)]
|
||||
HRESULT GetFolder([in] BSTR FolderPath, [out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x0000271e)]
|
||||
HRESULT GetSpecialFolder([in] SpecialFolderConst SpecialFolder, [out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x000004b0)]
|
||||
HRESULT DeleteFile([in] BSTR FileSpec, [in, optional, defaultvalue(0)] VARIANT_BOOL Force);
|
||||
|
||||
[id(0x000004b1)]
|
||||
HRESULT DeleteFolder([in] BSTR FolderSpec, [in, optional, defaultvalue(0)] VARIANT_BOOL Force);
|
||||
|
||||
[id(0x000004b4), helpstring("Move a file"), helpcontext(0x00214bab)]
|
||||
HRESULT MoveFile([in] BSTR Source, [in] BSTR Destination);
|
||||
|
||||
[id(0x000004b5)]
|
||||
HRESULT MoveFolder([in] BSTR Source, [in] BSTR Destination);
|
||||
|
||||
[id(0x000004b2)]
|
||||
HRESULT CopyFile([in] BSTR Source, [in] BSTR Destination,
|
||||
[in, optional, defaultvalue(-1)] VARIANT_BOOL OverWriteFiles);
|
||||
|
||||
[id(0x000004b3)]
|
||||
HRESULT CopyFolder([in] BSTR Source, [in] BSTR Destination,
|
||||
[in, optional, defaultvalue(-1)] VARIANT_BOOL OverWriteFiles);
|
||||
|
||||
[id(0x00000460)]
|
||||
HRESULT CreateFolder([in] BSTR Path, [out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x0000044d)]
|
||||
HRESULT CreateTextFile([in] BSTR FileName, [in, optional, defaultvalue(-1)] VARIANT_BOOL Overwrite,
|
||||
[in, optional, defaultvalue(0)] VARIANT_BOOL Unicode, [out, retval] ITextStream** ppts);
|
||||
|
||||
[id(0x0000044c)]
|
||||
HRESULT OpenTextFile([in] BSTR FileName, [in, optional, defaultvalue(1)] IOMode IOMode,
|
||||
[in, optional, defaultvalue(0)] VARIANT_BOOL Create,
|
||||
[in, optional, defaultvalue(0)] Tristate Format,
|
||||
[out, retval] ITextStream** ppts);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A1-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IDriveCollection : IDispatch {
|
||||
[id(00000000)]
|
||||
HRESULT Item([in] VARIANT Key, [out, retval] IDrive** ppdrive);
|
||||
|
||||
[id(DISPID_NEWENUM), propget, restricted, hidden]
|
||||
HRESULT _NewEnum([out, retval] IUnknown** ppenum);
|
||||
|
||||
[id(0x00000001), propget]
|
||||
HRESULT Count([out, retval] long* plCount);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A0-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IDrive : IDispatch
|
||||
{
|
||||
[id(00000000), propget]
|
||||
HRESULT Path([out, retval] BSTR* pbstrPath);
|
||||
|
||||
[id(0x00002710), propget]
|
||||
HRESULT DriveLetter([out, retval] BSTR* pbstrLetter)
|
||||
;
|
||||
[id(0x00002711), propget]
|
||||
HRESULT ShareName([out, retval] BSTR* pbstrShareName);
|
||||
|
||||
[id(0x00002712), propget]
|
||||
HRESULT DriveType([out, retval] DriveTypeConst* pdt);
|
||||
|
||||
[id(0x00002713), propget]
|
||||
HRESULT RootFolder([out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x00002715), propget]
|
||||
HRESULT AvailableSpace([out, retval] VARIANT* pvarAvail);
|
||||
|
||||
[id(0x00002714), propget]
|
||||
HRESULT FreeSpace([out, retval] VARIANT* pvarFree);
|
||||
|
||||
[id(0x00002716), propget]
|
||||
HRESULT TotalSize([out, retval] VARIANT* pvarTotal);
|
||||
|
||||
[id(0x00002717), propget]
|
||||
HRESULT VolumeName([out, retval] BSTR* pbstrName);
|
||||
|
||||
[id(0x00002717), propput]
|
||||
HRESULT VolumeName([in] BSTR pbstrName);
|
||||
|
||||
[id(0x00002718), propget]
|
||||
HRESULT FileSystem([out, retval] BSTR* pbstrFileSystem);
|
||||
|
||||
[id(0x00002719), propget]
|
||||
HRESULT SerialNumber([out, retval] long* pulSerialNumber);
|
||||
|
||||
[id(0x0000271a), propget]
|
||||
HRESULT IsReady([out, retval] VARIANT_BOOL* pfReady);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A2-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFolder : IDispatch
|
||||
{
|
||||
[id(00000000), propget]
|
||||
HRESULT Path([out, retval] BSTR* pbstrPath);
|
||||
|
||||
[id(0x000003e8), propget]
|
||||
HRESULT Name([out, retval] BSTR* pbstrName);
|
||||
|
||||
[id(0x000003e8), propput]
|
||||
HRESULT Name([in] BSTR pbstrName);
|
||||
|
||||
[id(0x000003ea), propget]
|
||||
HRESULT ShortPath([out, retval] BSTR* pbstrPath);
|
||||
|
||||
[id(0x000003e9), propget]
|
||||
HRESULT ShortName([out, retval] BSTR* pbstrName);
|
||||
|
||||
[id(0x000003ec), propget]
|
||||
HRESULT Drive([out, retval] IDrive** ppdrive);
|
||||
|
||||
[id(0x000003ed), propget]
|
||||
HRESULT ParentFolder([out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x000003eb), propget]
|
||||
HRESULT Attributes([out, retval] FileAttribute* pfa);
|
||||
|
||||
[id(0x000003eb), propput]
|
||||
HRESULT Attributes([in] FileAttribute pfa);
|
||||
|
||||
[id(0x000003ee), propget]
|
||||
HRESULT DateCreated([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003ef), propget]
|
||||
HRESULT DateLastModified([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003f0), propget]
|
||||
HRESULT DateLastAccessed([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003f2), propget]
|
||||
HRESULT Type([out, retval] BSTR* pbstrType);
|
||||
|
||||
[id(0x000004b1)]
|
||||
HRESULT Delete([in, optional, defaultvalue(0)] VARIANT_BOOL Force);
|
||||
|
||||
[id(0x000004b3)]
|
||||
HRESULT Copy([in] BSTR Destination, [in, optional, defaultvalue(-1)] VARIANT_BOOL OverWriteFiles);
|
||||
|
||||
[id(0x000004b5)]
|
||||
HRESULT Move([in] BSTR Destination);
|
||||
|
||||
[id(0x00002710), propget]
|
||||
HRESULT IsRootFolder([out, retval] VARIANT_BOOL* pfRootFolder);
|
||||
|
||||
[id(0x000003f1), propget]
|
||||
HRESULT Size([out, retval] VARIANT* pvarSize);
|
||||
|
||||
[id(0x00002711), propget]
|
||||
HRESULT SubFolders([out, retval] IFolderCollection** ppfolders);
|
||||
|
||||
[id(0x00002712), propget]
|
||||
HRESULT Files([out, retval] IFileCollection** ppfiles);
|
||||
|
||||
[id(0x0000044d)]
|
||||
HRESULT CreateTextFile([in] BSTR FileName, [in, optional, defaultvalue(-1)] VARIANT_BOOL Overwrite,
|
||||
[in, optional, defaultvalue(0)] VARIANT_BOOL Unicode, [out, retval] ITextStream** ppts);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A3-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFolderCollection : IDispatch
|
||||
{
|
||||
[id(0x00000002)]
|
||||
HRESULT Add([in] BSTR Name, [out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(00000000), propget]
|
||||
HRESULT Item([in] VARIANT Key, [out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(DISPID_NEWENUM), propget, restricted, hidden]
|
||||
HRESULT _NewEnum([out, retval] IUnknown** ppenum);
|
||||
|
||||
[id(0x00000001), propget]
|
||||
HRESULT Count([out, retval] long* plCount);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A5-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFileCollection : IDispatch
|
||||
{
|
||||
[id(00000000), propget]
|
||||
HRESULT Item([in] VARIANT Key, [out, retval] IFile** ppfile);
|
||||
|
||||
[id(DISPID_NEWENUM), propget, restricted, hidden]
|
||||
HRESULT _NewEnum([out, retval] IUnknown** ppenum);
|
||||
|
||||
[id(0x00000001), propget]
|
||||
HRESULT Count([out, retval] long* plCount);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(C7C3F5A4-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFile : IDispatch
|
||||
{
|
||||
[id(00000000), propget]
|
||||
HRESULT Path([out, retval] BSTR* pbstrPath);
|
||||
|
||||
[id(0x000003e8), propget]
|
||||
HRESULT Name([out, retval] BSTR* pbstrName);
|
||||
|
||||
[id(0x000003e8), propput]
|
||||
HRESULT Name([in] BSTR pbstrName);
|
||||
|
||||
[id(0x000003ea), propget]
|
||||
HRESULT ShortPath([out, retval] BSTR* pbstrPath);
|
||||
|
||||
[id(0x000003e9), propget]
|
||||
HRESULT ShortName([out, retval] BSTR* pbstrName);
|
||||
|
||||
[id(0x000003ec), propget]
|
||||
HRESULT Drive([out, retval] IDrive** ppdrive);
|
||||
|
||||
[id(0x000003ed), propget]
|
||||
HRESULT ParentFolder([out, retval] IFolder** ppfolder);
|
||||
|
||||
[id(0x000003eb), propget]
|
||||
HRESULT Attributes([out, retval] FileAttribute* pfa);
|
||||
|
||||
[id(0x000003eb), propput]
|
||||
HRESULT Attributes([in] FileAttribute pfa);
|
||||
|
||||
[id(0x000003ee), propget]
|
||||
HRESULT DateCreated([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003ef), propget]
|
||||
HRESULT DateLastModified([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003f0), propget]
|
||||
HRESULT DateLastAccessed([out, retval] DATE* pdate);
|
||||
|
||||
[id(0x000003f1), propget]
|
||||
HRESULT Size([out, retval] VARIANT* pvarSize);
|
||||
|
||||
[id(0x000003f2), propget]
|
||||
HRESULT Type([out, retval] BSTR* pbstrType);
|
||||
|
||||
[id(0x000004b0)]
|
||||
HRESULT Delete([in, optional, defaultvalue(0)] VARIANT_BOOL Force);
|
||||
|
||||
[id(0x000004b2)]
|
||||
HRESULT Copy([in] BSTR Destination, [in, optional, defaultvalue(-1)] VARIANT_BOOL OverWriteFiles);
|
||||
|
||||
[id(0x000004b4)]
|
||||
HRESULT Move([in] BSTR Destination);
|
||||
|
||||
[id(0x0000044c)]
|
||||
HRESULT OpenAsTextStream([in, optional, defaultvalue(1)] IOMode IOMode,
|
||||
[in, optional, defaultvalue(0)] Tristate Format, [out, retval] ITextStream** ppts);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(53BAD8C1-E718-11CF-893D-00A0C9054228),
|
||||
hidden,
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface ITextStream : IDispatch
|
||||
{
|
||||
[id(0x00002710), propget]
|
||||
HRESULT Line([out, retval] long* Line);
|
||||
|
||||
[id(0xfffffdef), propget]
|
||||
HRESULT Column([out, retval] long* Column);
|
||||
|
||||
[id(0x00002712), propget]
|
||||
HRESULT AtEndOfStream([out, retval] VARIANT_BOOL* EOS);
|
||||
|
||||
[id(0x00002713), propget]
|
||||
HRESULT AtEndOfLine([out, retval] VARIANT_BOOL* EOL);
|
||||
|
||||
HRESULT Read([in] long Characters, [out, retval] BSTR* Text);
|
||||
|
||||
[id(0x00002715)]
|
||||
HRESULT ReadLine([out, retval] BSTR* Text);
|
||||
|
||||
[id(0x00002716)]
|
||||
HRESULT ReadAll([out, retval] BSTR* Text);
|
||||
|
||||
[id(0x00002717)]
|
||||
HRESULT Write([in] BSTR Text);
|
||||
|
||||
[id(0x00002718)]
|
||||
HRESULT WriteLine([in, optional, defaultvalue("")] BSTR Text);
|
||||
|
||||
[id(0x00002719)]
|
||||
HRESULT WriteBlankLines([in] long Lines);
|
||||
|
||||
[id(0x0000271a)]
|
||||
HRESULT Skip([in] long Characters);
|
||||
|
||||
[id(0x0000271b)]
|
||||
HRESULT SkipLine();
|
||||
|
||||
[id(0x0000271c)]
|
||||
HRESULT Close();
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(2A0B9D10-4B87-11D3-A97A-00104B365C9F),
|
||||
dual,
|
||||
nonextensible,
|
||||
oleautomation
|
||||
]
|
||||
interface IFileSystem3 : IFileSystem
|
||||
{
|
||||
[id(0x00004e20)]
|
||||
HRESULT GetStandardStream([in] StandardStreamTypes StandardStreamType,
|
||||
[in, optional, defaultvalue(0)] VARIANT_BOOL Unicode, [out, retval] ITextStream** ppts);
|
||||
|
||||
[id(0x00004e2a)]
|
||||
HRESULT GetFileVersion([in] BSTR FileName, [out, retval] BSTR* FileVersion);
|
||||
}
|
||||
|
||||
[
|
||||
odl,
|
||||
uuid(AADC65F6-CFF1-11D1-B747-00C04FC2B085),
|
||||
dual,
|
||||
oleautomation
|
||||
]
|
||||
interface IScriptEncoder : IDispatch
|
||||
{
|
||||
[id(00000000)]
|
||||
HRESULT EncodeScriptFile([in] BSTR szExt, [in] BSTR bstrStreamIn, [in] long cFlags,
|
||||
[in] BSTR bstrDefaultLang, [out, retval] BSTR* pbstrStreamOut);
|
||||
}
|
||||
|
||||
[
|
||||
uuid(EE09B103-97E0-11CF-978F-00A02463E06F),
|
||||
version(1.0),
|
||||
helpstring("Scripting.Dictionary"),
|
||||
threading(apartment),
|
||||
progid("Scripting.Dictionary")
|
||||
]
|
||||
coclass Dictionary
|
||||
{
|
||||
[default] interface IDictionary;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(0D43FE01-F093-11CF-8940-00A0C9054228),
|
||||
version(1.0),
|
||||
helpstring("FileSystem Object"),
|
||||
threading(both),
|
||||
progid("Scripting.FileSystemObject")
|
||||
]
|
||||
coclass FileSystemObject
|
||||
{
|
||||
[default] interface IFileSystem3;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B1-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass Drive
|
||||
{
|
||||
[default] interface IDrive;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B2-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass Drives
|
||||
{
|
||||
[default] interface IDriveCollection;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B3-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass Folder
|
||||
{
|
||||
[default] interface IFolder;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B4-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass Folders
|
||||
{
|
||||
[default] interface IFolderCollection;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B5-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass File
|
||||
{
|
||||
[default] interface IFile;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(C7C3F5B6-88A3-11D0-ABCB-00A0C90FFFC0),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass Files
|
||||
{
|
||||
[default] interface IFileCollection;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(0BB02EC0-EF49-11CF-8940-00A0C9054228),
|
||||
noncreatable,
|
||||
version(1.0)
|
||||
]
|
||||
coclass TextStream
|
||||
{
|
||||
[default] interface ITextStream;
|
||||
}
|
||||
|
||||
[
|
||||
uuid(32DA2B15-CFED-11D1-B747-00C04FC2B085),
|
||||
version(1.0),
|
||||
helpstring("Script Encoder Object"),
|
||||
threading(apartment),
|
||||
progid("Scripting.Encoder")
|
||||
]
|
||||
coclass Encoder
|
||||
{
|
||||
[default] interface IScriptEncoder;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue