1 /***************************************************************************
3 Copyright (c) Microsoft Corporation. All rights reserved.
4 This code is licensed under the Visual Studio SDK license terms.
5 THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
6 ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
7 IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
8 PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
10 This code is a part of the Visual Studio Library.
12 ***************************************************************************/
14 #ifndef FILEPROPERTIES2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define FILEPROPERTIES2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
21 #include "vslangproj80.h"
24 #pragma warning(disable : 4510) // default constructor could not be generated
25 #pragma warning(disable : 4610) // can never be instantiated - user defined constructor required
26 #pragma warning(disable : 4512) // assignment operator could not be generated
27 #pragma warning(disable : 6011) // Dereferencing NULL pointer (a NULL derference is just another kind of failure for a unit test
32 class FileProperties2NotImpl
:
33 public FileProperties2
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(FileProperties2NotImpl
)
40 typedef FileProperties2 Interface
;
42 STDMETHOD(get_CopyToOutputDirectory
)(
43 /*[out,retval]*/ COPYTOOUTPUTSTATE
* /*pCopy*/)VSL_STDMETHOD_NOTIMPL
45 STDMETHOD(put_CopyToOutputDirectory
)(
46 /*[in]*/ COPYTOOUTPUTSTATE
/*Copy*/)VSL_STDMETHOD_NOTIMPL
48 STDMETHOD(get_ItemType
)(
49 /*[out,retval]*/ BSTR
* /*pbstrItemType*/)VSL_STDMETHOD_NOTIMPL
51 STDMETHOD(put_ItemType
)(
52 /*[in]*/ BSTR
/*ItemType*/)VSL_STDMETHOD_NOTIMPL
54 STDMETHOD(get_IsSharedDesignTimeBuildInput
)(
55 /*[out,retval]*/ VARIANT_BOOL
* /*pbIsSharedDesignTimeBuildInput*/)VSL_STDMETHOD_NOTIMPL
58 /*[out,retval]*/ BSTR
* /*pbstrName*/)VSL_STDMETHOD_NOTIMPL
60 STDMETHOD(get_FileName
)(
61 /*[out,retval]*/ BSTR
* /*pbstrName*/)VSL_STDMETHOD_NOTIMPL
63 STDMETHOD(put_FileName
)(
64 /*[in]*/ BSTR
/*bstrName*/)VSL_STDMETHOD_NOTIMPL
66 STDMETHOD(get_Extension
)(
67 /*[out,retval]*/ BSTR
* /*pbstrExtension*/)VSL_STDMETHOD_NOTIMPL
69 STDMETHOD(get_Filesize
)(
70 /*[out,retval]*/ unsigned long* /*pdwSize*/)VSL_STDMETHOD_NOTIMPL
72 STDMETHOD(get_LocalPath
)(
73 /*[out,retval]*/ BSTR
* /*pbstrLocalPath*/)VSL_STDMETHOD_NOTIMPL
75 STDMETHOD(get_FullPath
)(
76 /*[out,retval]*/ BSTR
* /*pbstrFullPath*/)VSL_STDMETHOD_NOTIMPL
79 /*[out,retval]*/ BSTR
* /*pbstrURL*/)VSL_STDMETHOD_NOTIMPL
81 STDMETHOD(get_HTMLTitle
)(
82 /*[out,retval]*/ BSTR
* /*pbstrTitle*/)VSL_STDMETHOD_NOTIMPL
84 STDMETHOD(get_Author
)(
85 /*[out,retval]*/ BSTR
* /*pbstrTitle*/)VSL_STDMETHOD_NOTIMPL
87 STDMETHOD(get_DateCreated
)(
88 /*[out,retval]*/ BSTR
* /*pbstrDateCreated*/)VSL_STDMETHOD_NOTIMPL
90 STDMETHOD(get_DateModified
)(
91 /*[out,retval]*/ BSTR
* /*pbstrDateCreated*/)VSL_STDMETHOD_NOTIMPL
93 STDMETHOD(get_ModifiedBy
)(
94 /*[out,retval]*/ BSTR
* /*pbstrDateCreated*/)VSL_STDMETHOD_NOTIMPL
96 STDMETHOD(get_SubType
)(
97 /*[out,retval]*/ BSTR
* /*pbstrSubType*/)VSL_STDMETHOD_NOTIMPL
99 STDMETHOD(put_SubType
)(
100 /*[in]*/ BSTR
/*bstrSubType*/)VSL_STDMETHOD_NOTIMPL
102 STDMETHOD(get_Extender
)(
103 /*[in]*/ BSTR
/*ExtenderName*/,
104 /*[out,retval]*/ IDispatch
** /*Extender*/)VSL_STDMETHOD_NOTIMPL
106 STDMETHOD(get_ExtenderNames
)(
107 /*[out,retval]*/ VARIANT
* /*ExtenderNames*/)VSL_STDMETHOD_NOTIMPL
109 STDMETHOD(get_ExtenderCATID
)(
110 /*[out,retval]*/ BSTR
* /*pRetval*/)VSL_STDMETHOD_NOTIMPL
112 STDMETHOD(get_BuildAction
)(
113 /*[out,retval]*/ prjBuildAction
* /*pbuildAction*/)VSL_STDMETHOD_NOTIMPL
115 STDMETHOD(put_BuildAction
)(
116 /*[in]*/ prjBuildAction
/*buildAction*/)VSL_STDMETHOD_NOTIMPL
118 STDMETHOD(get_CustomTool
)(
119 /*[out,retval]*/ BSTR
* /*pbstrCustomTool*/)VSL_STDMETHOD_NOTIMPL
121 STDMETHOD(put_CustomTool
)(
122 /*[in]*/ BSTR
/*bstrCustomTool*/)VSL_STDMETHOD_NOTIMPL
124 STDMETHOD(get_CustomToolNamespace
)(
125 /*[out,retval]*/ BSTR
* /*pbstrCustomToolNamespace*/)VSL_STDMETHOD_NOTIMPL
127 STDMETHOD(put_CustomToolNamespace
)(
128 /*[in]*/ BSTR
/*bstrCustomToolNamespace*/)VSL_STDMETHOD_NOTIMPL
130 STDMETHOD(get_CustomToolOutput
)(
131 /*[out,retval]*/ BSTR
* /*pbstrCustomToolOutput*/)VSL_STDMETHOD_NOTIMPL
133 STDMETHOD(get_IsCustomToolOutput
)(
134 /*[out,retval]*/ VARIANT_BOOL
* /*pbIsCustomToolOutput*/)VSL_STDMETHOD_NOTIMPL
136 STDMETHOD(get_IsDependentFile
)(
137 /*[out,retval]*/ VARIANT_BOOL
* /*pbIsDepedentFile*/)VSL_STDMETHOD_NOTIMPL
139 STDMETHOD(get_IsLink
)(
140 /*[out,retval]*/ VARIANT_BOOL
* /*pbIsLinkFile*/)VSL_STDMETHOD_NOTIMPL
142 STDMETHOD(get_IsDesignTimeBuildInput
)(
143 /*[out,retval]*/ VARIANT_BOOL
* /*pbIsDesignTimeBuildInput*/)VSL_STDMETHOD_NOTIMPL
145 STDMETHOD(GetTypeInfoCount
)(
146 /*[out]*/ UINT
* /*pctinfo*/)VSL_STDMETHOD_NOTIMPL
148 STDMETHOD(GetTypeInfo
)(
149 /*[in]*/ UINT
/*iTInfo*/,
150 /*[in]*/ LCID
/*lcid*/,
151 /*[out]*/ ITypeInfo
** /*ppTInfo*/)VSL_STDMETHOD_NOTIMPL
153 STDMETHOD(GetIDsOfNames
)(
154 /*[in]*/ REFIID
/*riid*/,
155 /*[in,size_is(cNames)]*/ LPOLESTR
* /*rgszNames*/,
156 /*[in]*/ UINT
/*cNames*/,
157 /*[in]*/ LCID
/*lcid*/,
158 /*[out,size_is(cNames)]*/ DISPID
* /*rgDispId*/)VSL_STDMETHOD_NOTIMPL
161 /*[in]*/ DISPID
/*dispIdMember*/,
162 /*[in]*/ REFIID
/*riid*/,
163 /*[in]*/ LCID
/*lcid*/,
164 /*[in]*/ WORD
/*wFlags*/,
165 /*[in,out]*/ DISPPARAMS
* /*pDispParams*/,
166 /*[out]*/ VARIANT
* /*pVarResult*/,
167 /*[out]*/ EXCEPINFO
* /*pExcepInfo*/,
168 /*[out]*/ UINT
* /*puArgErr*/)VSL_STDMETHOD_NOTIMPL
171 class FileProperties2MockImpl
:
172 public FileProperties2
,
176 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(FileProperties2MockImpl
)
180 VSL_DEFINE_MOCK_CLASS_TYPDEFS(FileProperties2MockImpl
)
182 typedef FileProperties2 Interface
;
183 struct get_CopyToOutputDirectoryValidValues
185 /*[out,retval]*/ COPYTOOUTPUTSTATE
* pCopy
;
189 STDMETHOD(get_CopyToOutputDirectory
)(
190 /*[out,retval]*/ COPYTOOUTPUTSTATE
* pCopy
)
192 VSL_DEFINE_MOCK_METHOD(get_CopyToOutputDirectory
)
194 VSL_SET_VALIDVALUE(pCopy
);
196 VSL_RETURN_VALIDVALUES();
198 struct put_CopyToOutputDirectoryValidValues
200 /*[in]*/ COPYTOOUTPUTSTATE Copy
;
204 STDMETHOD(put_CopyToOutputDirectory
)(
205 /*[in]*/ COPYTOOUTPUTSTATE Copy
)
207 VSL_DEFINE_MOCK_METHOD(put_CopyToOutputDirectory
)
209 VSL_CHECK_VALIDVALUE(Copy
);
211 VSL_RETURN_VALIDVALUES();
213 struct get_ItemTypeValidValues
215 /*[out,retval]*/ BSTR
* pbstrItemType
;
219 STDMETHOD(get_ItemType
)(
220 /*[out,retval]*/ BSTR
* pbstrItemType
)
222 VSL_DEFINE_MOCK_METHOD(get_ItemType
)
224 VSL_SET_VALIDVALUE_BSTR(pbstrItemType
);
226 VSL_RETURN_VALIDVALUES();
228 struct put_ItemTypeValidValues
230 /*[in]*/ BSTR ItemType
;
234 STDMETHOD(put_ItemType
)(
235 /*[in]*/ BSTR ItemType
)
237 VSL_DEFINE_MOCK_METHOD(put_ItemType
)
239 VSL_CHECK_VALIDVALUE_BSTR(ItemType
);
241 VSL_RETURN_VALIDVALUES();
243 struct get_IsSharedDesignTimeBuildInputValidValues
245 /*[out,retval]*/ VARIANT_BOOL
* pbIsSharedDesignTimeBuildInput
;
249 STDMETHOD(get_IsSharedDesignTimeBuildInput
)(
250 /*[out,retval]*/ VARIANT_BOOL
* pbIsSharedDesignTimeBuildInput
)
252 VSL_DEFINE_MOCK_METHOD(get_IsSharedDesignTimeBuildInput
)
254 VSL_SET_VALIDVALUE(pbIsSharedDesignTimeBuildInput
);
256 VSL_RETURN_VALIDVALUES();
258 struct get___idValidValues
260 /*[out,retval]*/ BSTR
* pbstrName
;
265 /*[out,retval]*/ BSTR
* pbstrName
)
267 VSL_DEFINE_MOCK_METHOD(get___id
)
269 VSL_SET_VALIDVALUE_BSTR(pbstrName
);
271 VSL_RETURN_VALIDVALUES();
273 struct get_FileNameValidValues
275 /*[out,retval]*/ BSTR
* pbstrName
;
279 STDMETHOD(get_FileName
)(
280 /*[out,retval]*/ BSTR
* pbstrName
)
282 VSL_DEFINE_MOCK_METHOD(get_FileName
)
284 VSL_SET_VALIDVALUE_BSTR(pbstrName
);
286 VSL_RETURN_VALIDVALUES();
288 struct put_FileNameValidValues
290 /*[in]*/ BSTR bstrName
;
294 STDMETHOD(put_FileName
)(
295 /*[in]*/ BSTR bstrName
)
297 VSL_DEFINE_MOCK_METHOD(put_FileName
)
299 VSL_CHECK_VALIDVALUE_BSTR(bstrName
);
301 VSL_RETURN_VALIDVALUES();
303 struct get_ExtensionValidValues
305 /*[out,retval]*/ BSTR
* pbstrExtension
;
309 STDMETHOD(get_Extension
)(
310 /*[out,retval]*/ BSTR
* pbstrExtension
)
312 VSL_DEFINE_MOCK_METHOD(get_Extension
)
314 VSL_SET_VALIDVALUE_BSTR(pbstrExtension
);
316 VSL_RETURN_VALIDVALUES();
318 struct get_FilesizeValidValues
320 /*[out,retval]*/ unsigned long* pdwSize
;
324 STDMETHOD(get_Filesize
)(
325 /*[out,retval]*/ unsigned long* pdwSize
)
327 VSL_DEFINE_MOCK_METHOD(get_Filesize
)
329 VSL_SET_VALIDVALUE(pdwSize
);
331 VSL_RETURN_VALIDVALUES();
333 struct get_LocalPathValidValues
335 /*[out,retval]*/ BSTR
* pbstrLocalPath
;
339 STDMETHOD(get_LocalPath
)(
340 /*[out,retval]*/ BSTR
* pbstrLocalPath
)
342 VSL_DEFINE_MOCK_METHOD(get_LocalPath
)
344 VSL_SET_VALIDVALUE_BSTR(pbstrLocalPath
);
346 VSL_RETURN_VALIDVALUES();
348 struct get_FullPathValidValues
350 /*[out,retval]*/ BSTR
* pbstrFullPath
;
354 STDMETHOD(get_FullPath
)(
355 /*[out,retval]*/ BSTR
* pbstrFullPath
)
357 VSL_DEFINE_MOCK_METHOD(get_FullPath
)
359 VSL_SET_VALIDVALUE_BSTR(pbstrFullPath
);
361 VSL_RETURN_VALIDVALUES();
363 struct get_URLValidValues
365 /*[out,retval]*/ BSTR
* pbstrURL
;
370 /*[out,retval]*/ BSTR
* pbstrURL
)
372 VSL_DEFINE_MOCK_METHOD(get_URL
)
374 VSL_SET_VALIDVALUE_BSTR(pbstrURL
);
376 VSL_RETURN_VALIDVALUES();
378 struct get_HTMLTitleValidValues
380 /*[out,retval]*/ BSTR
* pbstrTitle
;
384 STDMETHOD(get_HTMLTitle
)(
385 /*[out,retval]*/ BSTR
* pbstrTitle
)
387 VSL_DEFINE_MOCK_METHOD(get_HTMLTitle
)
389 VSL_SET_VALIDVALUE_BSTR(pbstrTitle
);
391 VSL_RETURN_VALIDVALUES();
393 struct get_AuthorValidValues
395 /*[out,retval]*/ BSTR
* pbstrTitle
;
399 STDMETHOD(get_Author
)(
400 /*[out,retval]*/ BSTR
* pbstrTitle
)
402 VSL_DEFINE_MOCK_METHOD(get_Author
)
404 VSL_SET_VALIDVALUE_BSTR(pbstrTitle
);
406 VSL_RETURN_VALIDVALUES();
408 struct get_DateCreatedValidValues
410 /*[out,retval]*/ BSTR
* pbstrDateCreated
;
414 STDMETHOD(get_DateCreated
)(
415 /*[out,retval]*/ BSTR
* pbstrDateCreated
)
417 VSL_DEFINE_MOCK_METHOD(get_DateCreated
)
419 VSL_SET_VALIDVALUE_BSTR(pbstrDateCreated
);
421 VSL_RETURN_VALIDVALUES();
423 struct get_DateModifiedValidValues
425 /*[out,retval]*/ BSTR
* pbstrDateCreated
;
429 STDMETHOD(get_DateModified
)(
430 /*[out,retval]*/ BSTR
* pbstrDateCreated
)
432 VSL_DEFINE_MOCK_METHOD(get_DateModified
)
434 VSL_SET_VALIDVALUE_BSTR(pbstrDateCreated
);
436 VSL_RETURN_VALIDVALUES();
438 struct get_ModifiedByValidValues
440 /*[out,retval]*/ BSTR
* pbstrDateCreated
;
444 STDMETHOD(get_ModifiedBy
)(
445 /*[out,retval]*/ BSTR
* pbstrDateCreated
)
447 VSL_DEFINE_MOCK_METHOD(get_ModifiedBy
)
449 VSL_SET_VALIDVALUE_BSTR(pbstrDateCreated
);
451 VSL_RETURN_VALIDVALUES();
453 struct get_SubTypeValidValues
455 /*[out,retval]*/ BSTR
* pbstrSubType
;
459 STDMETHOD(get_SubType
)(
460 /*[out,retval]*/ BSTR
* pbstrSubType
)
462 VSL_DEFINE_MOCK_METHOD(get_SubType
)
464 VSL_SET_VALIDVALUE_BSTR(pbstrSubType
);
466 VSL_RETURN_VALIDVALUES();
468 struct put_SubTypeValidValues
470 /*[in]*/ BSTR bstrSubType
;
474 STDMETHOD(put_SubType
)(
475 /*[in]*/ BSTR bstrSubType
)
477 VSL_DEFINE_MOCK_METHOD(put_SubType
)
479 VSL_CHECK_VALIDVALUE_BSTR(bstrSubType
);
481 VSL_RETURN_VALIDVALUES();
483 struct get_ExtenderValidValues
485 /*[in]*/ BSTR ExtenderName
;
486 /*[out,retval]*/ IDispatch
** Extender
;
490 STDMETHOD(get_Extender
)(
491 /*[in]*/ BSTR ExtenderName
,
492 /*[out,retval]*/ IDispatch
** Extender
)
494 VSL_DEFINE_MOCK_METHOD(get_Extender
)
496 VSL_CHECK_VALIDVALUE_BSTR(ExtenderName
);
498 VSL_SET_VALIDVALUE_INTERFACE(Extender
);
500 VSL_RETURN_VALIDVALUES();
502 struct get_ExtenderNamesValidValues
504 /*[out,retval]*/ VARIANT
* ExtenderNames
;
508 STDMETHOD(get_ExtenderNames
)(
509 /*[out,retval]*/ VARIANT
* ExtenderNames
)
511 VSL_DEFINE_MOCK_METHOD(get_ExtenderNames
)
513 VSL_SET_VALIDVALUE_VARIANT(ExtenderNames
);
515 VSL_RETURN_VALIDVALUES();
517 struct get_ExtenderCATIDValidValues
519 /*[out,retval]*/ BSTR
* pRetval
;
523 STDMETHOD(get_ExtenderCATID
)(
524 /*[out,retval]*/ BSTR
* pRetval
)
526 VSL_DEFINE_MOCK_METHOD(get_ExtenderCATID
)
528 VSL_SET_VALIDVALUE_BSTR(pRetval
);
530 VSL_RETURN_VALIDVALUES();
532 struct get_BuildActionValidValues
534 /*[out,retval]*/ prjBuildAction
* pbuildAction
;
538 STDMETHOD(get_BuildAction
)(
539 /*[out,retval]*/ prjBuildAction
* pbuildAction
)
541 VSL_DEFINE_MOCK_METHOD(get_BuildAction
)
543 VSL_SET_VALIDVALUE(pbuildAction
);
545 VSL_RETURN_VALIDVALUES();
547 struct put_BuildActionValidValues
549 /*[in]*/ prjBuildAction buildAction
;
553 STDMETHOD(put_BuildAction
)(
554 /*[in]*/ prjBuildAction buildAction
)
556 VSL_DEFINE_MOCK_METHOD(put_BuildAction
)
558 VSL_CHECK_VALIDVALUE(buildAction
);
560 VSL_RETURN_VALIDVALUES();
562 struct get_CustomToolValidValues
564 /*[out,retval]*/ BSTR
* pbstrCustomTool
;
568 STDMETHOD(get_CustomTool
)(
569 /*[out,retval]*/ BSTR
* pbstrCustomTool
)
571 VSL_DEFINE_MOCK_METHOD(get_CustomTool
)
573 VSL_SET_VALIDVALUE_BSTR(pbstrCustomTool
);
575 VSL_RETURN_VALIDVALUES();
577 struct put_CustomToolValidValues
579 /*[in]*/ BSTR bstrCustomTool
;
583 STDMETHOD(put_CustomTool
)(
584 /*[in]*/ BSTR bstrCustomTool
)
586 VSL_DEFINE_MOCK_METHOD(put_CustomTool
)
588 VSL_CHECK_VALIDVALUE_BSTR(bstrCustomTool
);
590 VSL_RETURN_VALIDVALUES();
592 struct get_CustomToolNamespaceValidValues
594 /*[out,retval]*/ BSTR
* pbstrCustomToolNamespace
;
598 STDMETHOD(get_CustomToolNamespace
)(
599 /*[out,retval]*/ BSTR
* pbstrCustomToolNamespace
)
601 VSL_DEFINE_MOCK_METHOD(get_CustomToolNamespace
)
603 VSL_SET_VALIDVALUE_BSTR(pbstrCustomToolNamespace
);
605 VSL_RETURN_VALIDVALUES();
607 struct put_CustomToolNamespaceValidValues
609 /*[in]*/ BSTR bstrCustomToolNamespace
;
613 STDMETHOD(put_CustomToolNamespace
)(
614 /*[in]*/ BSTR bstrCustomToolNamespace
)
616 VSL_DEFINE_MOCK_METHOD(put_CustomToolNamespace
)
618 VSL_CHECK_VALIDVALUE_BSTR(bstrCustomToolNamespace
);
620 VSL_RETURN_VALIDVALUES();
622 struct get_CustomToolOutputValidValues
624 /*[out,retval]*/ BSTR
* pbstrCustomToolOutput
;
628 STDMETHOD(get_CustomToolOutput
)(
629 /*[out,retval]*/ BSTR
* pbstrCustomToolOutput
)
631 VSL_DEFINE_MOCK_METHOD(get_CustomToolOutput
)
633 VSL_SET_VALIDVALUE_BSTR(pbstrCustomToolOutput
);
635 VSL_RETURN_VALIDVALUES();
637 struct get_IsCustomToolOutputValidValues
639 /*[out,retval]*/ VARIANT_BOOL
* pbIsCustomToolOutput
;
643 STDMETHOD(get_IsCustomToolOutput
)(
644 /*[out,retval]*/ VARIANT_BOOL
* pbIsCustomToolOutput
)
646 VSL_DEFINE_MOCK_METHOD(get_IsCustomToolOutput
)
648 VSL_SET_VALIDVALUE(pbIsCustomToolOutput
);
650 VSL_RETURN_VALIDVALUES();
652 struct get_IsDependentFileValidValues
654 /*[out,retval]*/ VARIANT_BOOL
* pbIsDepedentFile
;
658 STDMETHOD(get_IsDependentFile
)(
659 /*[out,retval]*/ VARIANT_BOOL
* pbIsDepedentFile
)
661 VSL_DEFINE_MOCK_METHOD(get_IsDependentFile
)
663 VSL_SET_VALIDVALUE(pbIsDepedentFile
);
665 VSL_RETURN_VALIDVALUES();
667 struct get_IsLinkValidValues
669 /*[out,retval]*/ VARIANT_BOOL
* pbIsLinkFile
;
673 STDMETHOD(get_IsLink
)(
674 /*[out,retval]*/ VARIANT_BOOL
* pbIsLinkFile
)
676 VSL_DEFINE_MOCK_METHOD(get_IsLink
)
678 VSL_SET_VALIDVALUE(pbIsLinkFile
);
680 VSL_RETURN_VALIDVALUES();
682 struct get_IsDesignTimeBuildInputValidValues
684 /*[out,retval]*/ VARIANT_BOOL
* pbIsDesignTimeBuildInput
;
688 STDMETHOD(get_IsDesignTimeBuildInput
)(
689 /*[out,retval]*/ VARIANT_BOOL
* pbIsDesignTimeBuildInput
)
691 VSL_DEFINE_MOCK_METHOD(get_IsDesignTimeBuildInput
)
693 VSL_SET_VALIDVALUE(pbIsDesignTimeBuildInput
);
695 VSL_RETURN_VALIDVALUES();
697 struct GetTypeInfoCountValidValues
699 /*[out]*/ UINT
* pctinfo
;
703 STDMETHOD(GetTypeInfoCount
)(
704 /*[out]*/ UINT
* pctinfo
)
706 VSL_DEFINE_MOCK_METHOD(GetTypeInfoCount
)
708 VSL_SET_VALIDVALUE(pctinfo
);
710 VSL_RETURN_VALIDVALUES();
712 struct GetTypeInfoValidValues
714 /*[in]*/ UINT iTInfo
;
716 /*[out]*/ ITypeInfo
** ppTInfo
;
720 STDMETHOD(GetTypeInfo
)(
721 /*[in]*/ UINT iTInfo
,
723 /*[out]*/ ITypeInfo
** ppTInfo
)
725 VSL_DEFINE_MOCK_METHOD(GetTypeInfo
)
727 VSL_CHECK_VALIDVALUE(iTInfo
);
729 VSL_CHECK_VALIDVALUE(lcid
);
731 VSL_SET_VALIDVALUE_INTERFACE(ppTInfo
);
733 VSL_RETURN_VALIDVALUES();
735 struct GetIDsOfNamesValidValues
737 /*[in]*/ REFIID riid
;
738 /*[in,size_is(cNames)]*/ LPOLESTR
* rgszNames
;
739 /*[in]*/ UINT cNames
;
741 /*[out,size_is(cNames)]*/ DISPID
* rgDispId
;
745 STDMETHOD(GetIDsOfNames
)(
746 /*[in]*/ REFIID riid
,
747 /*[in,size_is(cNames)]*/ LPOLESTR
* rgszNames
,
748 /*[in]*/ UINT cNames
,
750 /*[out,size_is(cNames)]*/ DISPID
* rgDispId
)
752 VSL_DEFINE_MOCK_METHOD(GetIDsOfNames
)
754 VSL_CHECK_VALIDVALUE(riid
);
756 VSL_CHECK_VALIDVALUE_MEMCMP(rgszNames
, cNames
*sizeof(rgszNames
[0]), validValues
.cNames
*sizeof(validValues
.rgszNames
[0]));
758 VSL_CHECK_VALIDVALUE(cNames
);
760 VSL_CHECK_VALIDVALUE(lcid
);
762 VSL_SET_VALIDVALUE_MEMCPY(rgDispId
, cNames
*sizeof(rgDispId
[0]), validValues
.cNames
*sizeof(validValues
.rgDispId
[0]));
764 VSL_RETURN_VALIDVALUES();
766 struct InvokeValidValues
768 /*[in]*/ DISPID dispIdMember
;
769 /*[in]*/ REFIID riid
;
771 /*[in]*/ WORD wFlags
;
772 /*[in,out]*/ DISPPARAMS
* pDispParams
;
773 /*[out]*/ VARIANT
* pVarResult
;
774 /*[out]*/ EXCEPINFO
* pExcepInfo
;
775 /*[out]*/ UINT
* puArgErr
;
780 /*[in]*/ DISPID dispIdMember
,
781 /*[in]*/ REFIID riid
,
783 /*[in]*/ WORD wFlags
,
784 /*[in,out]*/ DISPPARAMS
* pDispParams
,
785 /*[out]*/ VARIANT
* pVarResult
,
786 /*[out]*/ EXCEPINFO
* pExcepInfo
,
787 /*[out]*/ UINT
* puArgErr
)
789 VSL_DEFINE_MOCK_METHOD(Invoke
)
791 VSL_CHECK_VALIDVALUE(dispIdMember
);
793 VSL_CHECK_VALIDVALUE(riid
);
795 VSL_CHECK_VALIDVALUE(lcid
);
797 VSL_CHECK_VALIDVALUE(wFlags
);
799 VSL_SET_VALIDVALUE(pDispParams
);
801 VSL_SET_VALIDVALUE_VARIANT(pVarResult
);
803 VSL_SET_VALIDVALUE(pExcepInfo
);
805 VSL_SET_VALIDVALUE(puArgErr
);
807 VSL_RETURN_VALIDVALUES();
816 #endif // FILEPROPERTIES2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5