Subversion Repositories filter_foundry

Rev

Rev 171 | Rev 194 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
159 dmarschall 1
/*
2
    This file is part of "Filter Foundry", a filter plugin for Adobe Photoshop
192 daniel-mar 3
    Copyright (C) 2003-2009 Toby Thain, toby@telegraphics.com.au
4
    Copyright (C) 2018-2019 Daniel Marschall, ViaThinkSoft
159 dmarschall 5
 
6
    This program is free software; you can redistribute it and/or modify
7
    it under the terms of the GNU General Public License as published by
8
    the Free Software Foundation; either version 2 of the License, or
9
    (at your option) any later version.
10
 
11
    This program is distributed in the hope that it will be useful,
12
    but WITHOUT ANY WARRANTY; without even the implied warranty of
13
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
    GNU General Public License for more details.
15
 
16
    You should have received a copy of the GNU General Public License
17
    along with this program; if not, write to the Free Software
18
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19
*/
20
 
21
#include <windows.h>
22
 
23
#ifndef ACTCTX_FLAG_RESOURCE_NAME_VALID
24
#define ACTCTX_FLAG_RESOURCE_NAME_VALID 8
25
#endif
26
#ifndef ACTCTX_FLAG_HMODULE_VALID
27
#define ACTCTX_FLAG_HMODULE_VALID 128
28
#endif
29
 
30
typedef struct _tagACTCTXA {
31
        ULONG   cbSize;
32
        DWORD   dwFlags;
33
        LPCSTR  lpSource;
34
        USHORT  wProcessorArchitecture;
35
        LANGID  wLangId;
36
        LPCSTR  lpAssemblyDirectory;
37
        LPCSTR  lpResourceName;
38
        LPCSTR  lpApplicationName;
39
        HMODULE hModule;
40
} _ACTCTXA, *_PACTCTXA;
41
 
42
typedef BOOL(__stdcall *f_ActivateActCtx)(HANDLE hActCtx, ULONG_PTR *lpCookie);
43
typedef HANDLE(__stdcall *f_CreateActCtxA)(_PACTCTXA pActCtx);
44
typedef BOOL(__stdcall *f_DeactivateActCtx)(DWORD dwFlags, ULONG_PTR ulCookie);
45
typedef void(__stdcall *f_ReleaseActCtx)(HANDLE hActCtx);
46
 
47
typedef struct _tagManifestActivationCtx {
48
        HANDLE hActCtx;
49
        _ACTCTXA actCtx;
50
        ULONG_PTR cookie;
51
        HINSTANCE hKernel32;
52
} ManifestActivationCtx, *PManifestActivationCtx;
53
 
54
extern BOOL ActivateManifest(HMODULE hModule, int manifestResourceID, PManifestActivationCtx vars);
55
 
56
extern BOOL DeactivateManifest(PManifestActivationCtx vars);