1997-11-30 18:45:40 +01:00
|
|
|
/*
|
|
|
|
* OLESVR library
|
|
|
|
*
|
|
|
|
* Copyright 1995 Martin von Loewis
|
2002-03-10 00:29:33 +01:00
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
/* At the moment, these are only empty stubs.
|
|
|
|
*/
|
|
|
|
|
2001-07-24 01:50:18 +02:00
|
|
|
#include "config.h"
|
|
|
|
|
2003-09-06 01:08:26 +02:00
|
|
|
#include <stdarg.h>
|
|
|
|
|
2002-12-23 02:46:34 +01:00
|
|
|
#include "windef.h"
|
2003-09-06 01:08:26 +02:00
|
|
|
#include "winbase.h"
|
2002-12-23 02:46:34 +01:00
|
|
|
#include "wine/windef16.h"
|
|
|
|
#include "objbase.h"
|
2002-03-10 00:29:33 +01:00
|
|
|
#include "wine/debug.h"
|
1997-11-30 18:45:40 +01:00
|
|
|
|
2002-03-10 00:29:33 +01:00
|
|
|
WINE_DEFAULT_DEBUG_CHANNEL(ole);
|
1999-04-19 16:56:29 +02:00
|
|
|
|
2002-12-23 02:46:34 +01:00
|
|
|
typedef enum
|
|
|
|
{
|
|
|
|
OLE_OK,
|
|
|
|
OLE_WAIT_FOR_RELEASE,
|
|
|
|
OLE_BUSY,
|
|
|
|
OLE_ERROR_PROTECT_ONLY,
|
|
|
|
OLE_ERROR_MEMORY,
|
|
|
|
OLE_ERROR_STREAM,
|
|
|
|
OLE_ERROR_STATIC,
|
|
|
|
OLE_ERROR_BLANK,
|
|
|
|
OLE_ERROR_DRAW,
|
|
|
|
OLE_ERROR_METAFILE,
|
|
|
|
OLE_ERROR_ABORT,
|
|
|
|
OLE_ERROR_CLIPBOARD,
|
|
|
|
OLE_ERROR_FORMAT,
|
|
|
|
OLE_ERROR_OBJECT,
|
|
|
|
OLE_ERROR_OPTION,
|
|
|
|
OLE_ERROR_PROTOCOL,
|
|
|
|
OLE_ERROR_ADDRESS,
|
|
|
|
OLE_ERROR_NOT_EQUAL,
|
|
|
|
OLE_ERROR_HANDLE,
|
|
|
|
OLE_ERROR_GENERIC,
|
|
|
|
OLE_ERROR_CLASS,
|
|
|
|
OLE_ERROR_SYNTAX,
|
|
|
|
OLE_ERROR_DATATYPE,
|
|
|
|
OLE_ERROR_PALETTE,
|
|
|
|
OLE_ERROR_NOT_LINK,
|
|
|
|
OLE_ERROR_NOT_EMPTY,
|
|
|
|
OLE_ERROR_SIZE,
|
|
|
|
OLE_ERROR_DRIVE,
|
|
|
|
OLE_ERROR_NETWORK,
|
|
|
|
OLE_ERROR_NAME,
|
|
|
|
OLE_ERROR_TEMPLATE,
|
|
|
|
OLE_ERROR_NEW,
|
|
|
|
OLE_ERROR_EDIT,
|
|
|
|
OLE_ERROR_OPEN,
|
|
|
|
OLE_ERROR_NOT_OPEN,
|
|
|
|
OLE_ERROR_LAUNCH,
|
|
|
|
OLE_ERROR_COMM,
|
|
|
|
OLE_ERROR_TERMINATE,
|
|
|
|
OLE_ERROR_COMMAND,
|
|
|
|
OLE_ERROR_SHOW,
|
|
|
|
OLE_ERROR_DOVERB,
|
|
|
|
OLE_ERROR_ADVISE_NATIVE,
|
|
|
|
OLE_ERROR_ADVISE_PICT,
|
|
|
|
OLE_ERROR_ADVISE_RENAME,
|
|
|
|
OLE_ERROR_POKE_NATIVE,
|
|
|
|
OLE_ERROR_REQUEST_NATIVE,
|
|
|
|
OLE_ERROR_REQUEST_PICT,
|
|
|
|
OLE_ERROR_SERVER_BLOCKED,
|
|
|
|
OLE_ERROR_REGISTRATION,
|
|
|
|
OLE_ERROR_ALREADY_REGISTERED,
|
|
|
|
OLE_ERROR_TASK,
|
|
|
|
OLE_ERROR_OUTOFDATE,
|
|
|
|
OLE_ERROR_CANT_UPDATE_CLIENT,
|
|
|
|
OLE_ERROR_UPDATE,
|
|
|
|
OLE_ERROR_SETDATA_FORMAT,
|
|
|
|
OLE_ERROR_STATIC_FROM_OTHER_OS,
|
|
|
|
OLE_WARN_DELETE_DATA = 1000
|
|
|
|
} OLESTATUS;
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
OLE_SERVER_MULTI,
|
|
|
|
OLE_SERVER_SINGLE
|
|
|
|
} OLE_SERVER_USE;
|
|
|
|
|
|
|
|
typedef LONG LHSERVER;
|
|
|
|
typedef LONG LHSERVERDOC;
|
|
|
|
|
|
|
|
typedef struct _OLESERVERDOC *LPOLESERVERDOC;
|
|
|
|
|
|
|
|
struct _OLESERVERDOCVTBL;
|
|
|
|
typedef struct _OLESERVERDOC
|
|
|
|
{
|
|
|
|
struct _OLESERVERDOCVTBL *lpvtbl;
|
|
|
|
/* server provided state info */
|
|
|
|
} OLESERVERDOC;
|
|
|
|
|
|
|
|
typedef struct _OLESERVER *LPOLESERVER;
|
|
|
|
typedef struct _OLESERVERVTBL
|
|
|
|
{
|
|
|
|
OLESTATUS (CALLBACK *Open)(LPOLESERVER,LHSERVERDOC,LPCOLESTR16,LPOLESERVERDOC *);
|
|
|
|
OLESTATUS (CALLBACK *Create)(LPOLESERVER,LHSERVERDOC,LPCOLESTR16,LPCOLESTR16,LPOLESERVERDOC*);
|
|
|
|
OLESTATUS (CALLBACK *CreateFromTemplate)(LPOLESERVER,LHSERVERDOC,LPCOLESTR16,LPCOLESTR16,LPCOLESTR16,LPOLESERVERDOC *);
|
|
|
|
OLESTATUS (CALLBACK *Edit)(LPOLESERVER,LHSERVERDOC,LPCOLESTR16,LPCOLESTR16,LPOLESERVERDOC *);
|
|
|
|
OLESTATUS (CALLBACK *Exit)(LPOLESERVER);
|
|
|
|
OLESTATUS (CALLBACK *Release)(LPOLESERVER);
|
|
|
|
OLESTATUS (CALLBACK *Execute)(LPOLESERVER);
|
|
|
|
} OLESERVERVTBL, *LPOLESERVERVTBL;
|
|
|
|
|
|
|
|
typedef struct _OLESERVER
|
|
|
|
{
|
|
|
|
LPOLESERVERVTBL lpvtbl;
|
|
|
|
/* server specific data */
|
|
|
|
} OLESERVER;
|
|
|
|
|
2000-06-20 22:59:27 +02:00
|
|
|
static LONG OLE_current_handle;
|
1997-11-30 18:45:40 +01:00
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2001-07-02 21:59:40 +02:00
|
|
|
* OleRegisterServer [OLESVR.2]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
OLESTATUS WINAPI OleRegisterServer16( LPCSTR name, LPOLESERVER serverStruct,
|
|
|
|
LHSERVER *hRet, HINSTANCE16 hServer,
|
|
|
|
OLE_SERVER_USE use )
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%s,...): stub\n",name);
|
1997-11-30 18:45:40 +01:00
|
|
|
*hRet=++OLE_current_handle;
|
|
|
|
/* return OLE_ERROR_MEMORY, OLE_ERROR_PROTECT_ONLY if you want it fail*/
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2001-07-02 21:59:40 +02:00
|
|
|
* OleBlockServer [OLESVR.4]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
OLESTATUS WINAPI OleBlockServer16(LHSERVER hServer)
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld): stub\n",hServer);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleBlockServer [OLESVR32.4]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleBlockServer(LHSERVER hServer)
|
1997-11-30 18:45:40 +01:00
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld): stub\n",hServer);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2001-07-02 21:59:40 +02:00
|
|
|
* OleUnblockServer [OLESVR.5]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
OLESTATUS WINAPI OleUnblockServer16(LHSERVER hServer, BOOL16 *block)
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld): stub\n",hServer);
|
1997-11-30 18:45:40 +01:00
|
|
|
/* no more blocked messages :) */
|
|
|
|
*block=FALSE;
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleUnblockServer [OLESVR32.5]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleUnblockServer(LHSERVER hServer, BOOL *block)
|
1997-11-30 18:45:40 +01:00
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld): stub\n",hServer);
|
1997-11-30 18:45:40 +01:00
|
|
|
/* no more blocked messages :) */
|
|
|
|
*block=FALSE;
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
|
|
|
/***********************************************************************
|
2001-07-02 21:59:40 +02:00
|
|
|
* OleRegisterServerDoc [OLESVR.6]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
OLESTATUS WINAPI OleRegisterServerDoc16( LHSERVER hServer, LPCSTR docname,
|
|
|
|
LPOLESERVERDOC document,
|
|
|
|
LHSERVERDOC *hRet)
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld,%s): stub\n",hServer, docname);
|
1997-11-30 18:45:40 +01:00
|
|
|
*hRet=++OLE_current_handle;
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2001-07-02 21:59:40 +02:00
|
|
|
* OleRevokeServerDoc [OLESVR.7]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
|
|
|
OLESTATUS WINAPI OleRevokeServerDoc16(LHSERVERDOC hServerDoc)
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("%ld - stub\n",hServerDoc);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleRevokeServerDoc [OLESVR32.7]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleRevokeServerDoc(LHSERVERDOC hServerDoc)
|
1997-11-30 18:45:40 +01:00
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld): stub\n",hServerDoc);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
|
|
|
* OleRevokeServer [OLESVR.3]
|
1997-11-30 18:45:40 +01:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleRevokeServer16(LHSERVER hServer)
|
1997-11-30 18:45:40 +01:00
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("%ld - stub\n",hServer);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-18 16:39:06 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleRegisterServer [OLESVR32.2]
|
1998-10-18 16:39:06 +02:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleRegisterServer(LPCSTR svrname,LPOLESERVER olesvr,LHSERVER* hRet,HINSTANCE hinst,OLE_SERVER_USE osu) {
|
2002-10-19 01:48:57 +02:00
|
|
|
FIXME("(%s,%p,%p,%p,%d): stub!\n",svrname,olesvr,hRet,hinst,osu);
|
1997-11-30 18:45:40 +01:00
|
|
|
*hRet=++OLE_current_handle;
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-18 16:39:06 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleRegisterServerDoc [OLESVR32.6]
|
1998-10-18 16:39:06 +02:00
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleRegisterServerDoc( LHSERVER hServer, LPCSTR docname,
|
1997-11-30 18:45:40 +01:00
|
|
|
LPOLESERVERDOC document,
|
|
|
|
LHSERVERDOC *hRet)
|
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld,%s): stub\n", hServer, docname);
|
1997-11-30 18:45:40 +01:00
|
|
|
*hRet=++OLE_current_handle;
|
|
|
|
return OLE_OK;
|
|
|
|
}
|
|
|
|
|
1998-10-11 16:21:42 +02:00
|
|
|
/******************************************************************************
|
2000-03-28 22:22:59 +02:00
|
|
|
* OleRenameServerDoc [OLESVR32.8]
|
1997-11-30 18:45:40 +01:00
|
|
|
*
|
|
|
|
*/
|
1999-02-26 12:11:13 +01:00
|
|
|
OLESTATUS WINAPI OleRenameServerDoc(LHSERVERDOC hDoc, LPCSTR newName)
|
1997-11-30 18:45:40 +01:00
|
|
|
{
|
1999-07-04 18:02:24 +02:00
|
|
|
FIXME("(%ld,%s): stub.\n",hDoc, newName);
|
1997-11-30 18:45:40 +01:00
|
|
|
return OLE_OK;
|
|
|
|
}
|