Subversion Repositories filter_foundry

Rev

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