Bug 694811 - Linking with VC11 fails with an undefined reference error to _IID_IAsyncOperation; r=bbondy

This commit is contained in:
Ehsan Akhgari 2011-10-24 16:08:10 -04:00
Родитель f0a21ac6d4
Коммит 76a8f6a8d8
1 изменённых файлов: 9 добавлений и 0 удалений

Просмотреть файл

@ -44,6 +44,7 @@
#include <objidl.h>
#endif
#include <oleidl.h>
#include <shldisp.h>
#include "nsCOMPtr.h"
#include "nsString.h"
@ -55,6 +56,13 @@
#include "nsCOMArray.h"
#include "nsITimer.h"
// The SDK shipping with VC11 has renamed IAsyncOperation to
// IDataObjectAsyncCapability. We try to detect this, and rename this in our
// code too to make sure that we pick the correct name when building.
#ifdef __IDataObjectAsyncCapability_INTERFACE_DEFINED__
#define IAsyncOperation IDataObjectAsyncCapability
#define IID_IAsyncOperation IID_IDataObjectAsyncCapability
#else
// XXX for older version of PSDK where IAsyncOperation and related stuff is not available
// but thisdefine should be removed when parocles config is updated
#ifndef __IAsyncOperation_INTERFACE_DEFINED__
@ -78,6 +86,7 @@ IAsyncOperation : public IUnknown
#endif
#endif // __IAsyncOperation_INTERFACE_DEFINED__
#endif // __IDataObjectAsyncCapability_INTERFACE_DEFINED__
/*
* CFSTR_SHELLURL is deprecated and doesn't have a Unicode version.