2007-10-21 16:20:14 +00:00
|
|
|
#define COBJMACROS
|
2013-01-24 23:00:42 +00:00
|
|
|
#define WIN32_NO_STATUS
|
|
|
|
#define _INC_WINDOWS
|
|
|
|
#define COM_NO_WINDOWS_H
|
2007-10-08 15:56:31 +00:00
|
|
|
#include <stdarg.h>
|
2013-01-24 23:00:42 +00:00
|
|
|
#include <windef.h>
|
|
|
|
#include <winbase.h>
|
|
|
|
#include <winreg.h>
|
|
|
|
#include <winnls.h>
|
|
|
|
#include <shellapi.h>
|
|
|
|
#include <cpl.h>
|
2007-10-08 15:56:31 +00:00
|
|
|
#include <tchar.h>
|
|
|
|
#include <shlobj.h>
|
|
|
|
|
2013-05-19 21:21:20 +00:00
|
|
|
#include <wine/debug.h>
|
|
|
|
#include <wine/unicode.h>
|
|
|
|
|
2007-10-08 15:56:31 +00:00
|
|
|
#include "resource.h"
|
|
|
|
|
2007-10-04 23:51:10 +00:00
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
WCHAR szTarget[MAX_PATH];
|
|
|
|
WCHAR szWorkingDirectory[MAX_PATH];
|
|
|
|
WCHAR szDescription[MAX_PATH];
|
|
|
|
WCHAR szLinkName[MAX_PATH];
|
2009-08-15 11:14:07 +00:00
|
|
|
} CREATE_LINK_CONTEXT, *PCREATE_LINK_CONTEXT;
|
2007-10-04 23:51:10 +00:00
|
|
|
|
2004-06-18 20:43:44 +00:00
|
|
|
extern HINSTANCE hApplet;
|
|
|
|
|
2007-10-03 17:50:43 +00:00
|
|
|
/* createlink.c */
|
|
|
|
INT_PTR CALLBACK
|
|
|
|
WelcomeDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
|
|
|
|
|
|
INT_PTR CALLBACK
|
|
|
|
FinishDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
|
|
|
|
|
|
LONG CALLBACK
|
|
|
|
NewLinkHere(HWND hwndCPl, UINT uMsg, LPARAM lParam1, LPARAM lParam2);
|
|
|
|
|
2004-06-18 20:43:44 +00:00
|
|
|
void ShowLastWin32Error(HWND hWndOwner);
|
|
|
|
|
2013-05-19 21:21:20 +00:00
|
|
|
typedef enum {
|
|
|
|
ADDON_GECKO,
|
|
|
|
ADDON_MONO
|
|
|
|
} addon_t;
|
|
|
|
|
|
|
|
BOOL install_addon(addon_t) DECLSPEC_HIDDEN;
|
|
|
|
|
|
|
|
extern HINSTANCE hInst DECLSPEC_HIDDEN;
|
|
|
|
|
|
|
|
static inline void *heap_alloc(size_t len)
|
|
|
|
{
|
|
|
|
return HeapAlloc(GetProcessHeap(), 0, len);
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline void *heap_realloc(void *mem, size_t len)
|
|
|
|
{
|
|
|
|
return HeapReAlloc(GetProcessHeap(), 0, mem, len);
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline BOOL heap_free(void *mem)
|
|
|
|
{
|
|
|
|
return HeapFree(GetProcessHeap(), 0, mem);
|
|
|
|
}
|
|
|
|
|
|
|
|
static inline WCHAR *heap_strdupAtoW(const char *str)
|
|
|
|
{
|
|
|
|
WCHAR *ret = NULL;
|
|
|
|
|
|
|
|
if(str) {
|
|
|
|
size_t len;
|
|
|
|
|
|
|
|
len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
|
|
|
|
ret = heap_alloc(len*sizeof(WCHAR));
|
|
|
|
if(ret)
|
|
|
|
MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
|
|
|
|
}
|
|
|
|
|
|
|
|
return ret;
|
|
|
|
}
|
|
|
|
|
2004-06-18 20:43:44 +00:00
|
|
|
/* EOF */
|