source: trunk/DirectShowSpy/stdafx.h @ 359

Last change on this file since 359 was 312, checked in by roman, 10 years ago

Proper code sharing between Spy and external dependencies

  • Property svn:keywords set to Id
File size: 3.7 KB
Line 
1////////////////////////////////////////////////////////////
2// Copyright (C) Roman Ryltsov, 2008-2014
3// Created by Roman Ryltsov roman@alax.info, http://alax.info
4//
5// This source code is published to complement DirectShowSpy developer powertoy
6// and demonstrate the internal use of APIs and tricks powering the tool. It is
7// allowed to freely re-use the portions of the code in other projects, commercial
8// or otherwise (provided that you don’t pretend that you wrote the original tool).
9//
10// Please keep in mind that DirectShowSpy is a developer tool, it is strongly recommended
11// that it is not shipped with release grade software. It is allowed to distribute
12// DirectShowSpy if only it is not registered with Windows by default and either
13// used privately, or registered on specific throubleshooting request. The advice applies
14// to hooking methods used by DirectShowSpy in general as well.
15
16#pragma once
17
18////////////////////////////////////////////////////////////
19// Windows
20
21#define STRICT
22#define INLINE_HRESULT_FROM_WIN32
23#define _INC_WINDOWSX
24
25#include "targetver.h"
26
27////////////////////////////////////////////////////////////
28// ATL
29
30#define _ATL_APARTMENT_THREADED
31#define _ATL_NO_AUTOMATIC_NAMESPACE
32#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS
33#define _ATL_ALL_WARNINGS
34//#define _ATL_ATTRIBUTES
35
36#include "roatltrace.h" // Replacement for <atltrace.h>
37#include <atlbase.h>
38#include <atlcom.h>
39#include <atlwin.h>
40#include <atltypes.h>
41#include <atlsync.h>
42#include <atlfile.h>
43#include <atlpath.h>
44#include <atlcoll.h>
45#include <atlrx.h>
46#include <atlctl.h>
47//#include <atlhost.h>
48
49using namespace ATL;
50using namespace ATL::ATLPath;
51
52////////////////////////////////////////////////////////////
53// WTL
54
55#define _SECURE_ATL     TRUE
56#define _WTL_NO_CSTRING
57#define _WTL_NO_WTYPES
58#define _WTL_NO_UNION_CLASSES
59#define _WTL_NEW_PAGE_NOTIFY_HANDLERS
60
61#undef _SYSINFOAPI_H_
62#include <atlapp.h>
63#define _SYSINFOAPI_H_
64
65#include <atlgdi.h>
66#include <atluser.h>
67#include <atlcrack.h>
68#include <atlctrls.h>
69#include <shellapi.h>
70#include <atlctrlx.h>
71#include <atlmisc.h>
72#include <atlframe.h>
73#include <atldlgs.h>
74
75using namespace WTL;
76
77////////////////////////////////////////////////////////////
78// Alax.Info ATL/WTL
79
80#define DIRECTSHOWSPY
81
82#define REGISTRY_PRODUCTROOT    _T("SOFTWARE\\Alax.Info\\Utility")
83#define REGISTRY_FILEROOT               REGISTRY_PRODUCTROOT _T("\\DirectShowSpy")
84#define REGISTRY_ROOT                   REGISTRY_FILEROOT
85
86#include "roatlbase.h"
87#include "roatlvariants.h"
88#include "roatlcollections.h"
89#include "roatlcom.h"
90#include "roatlpersist.h"
91#include "roatlmisc.h"
92#include "roatlexceptionfilter.h"
93#include "rowtlapp.h"
94#include "rowtlcrack.h"
95#include "rodialogs.h"
96#include "rocontrols.h"
97
98////////////////////////////////////////////////////////////
99// Common Controls
100
101#if defined _M_IX86
102  #pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
103#elif defined _M_IA64
104  #pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
105#elif defined _M_X64
106  #pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
107#else
108  #pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
109#endif
Note: See TracBrowser for help on using the repository browser.