Ejemplo n.º 1
0
        private static IWICBitmapDecoder *createDecoder(IStream *pStream)
        {
            if (Thread.CurrentThread.GetApartmentState() == ApartmentState.STA)
            {
                throw new NotSupportedException("WIC integration is not supported on an STA thread, such as the UI thread in a WinForms or WPF application. Use a background thread (e.g. using Task.Run()) instead.");
            }

            using var decoder = default(ComPtr <IWICBitmapDecoder>);
            int hr = Wic.Factory->CreateDecoderFromStream(pStream, null, WICDecodeOptions.WICDecodeMetadataCacheOnDemand, decoder.GetAddressOf());

            if (hr == WINCODEC_ERR_COMPONENTNOTFOUND)
            {
                throw new InvalidDataException("Image format not supported.  Please ensure the input file is an image and that a WIC codec capable of reading the image is installed.", Marshal.GetExceptionForHR(hr));
            }

            HRESULT.Check(hr);
            return(decoder.Detach());
        }
Ejemplo n.º 2
0
 public int CreateEncryptedBundleReader(IStream *inputStream, [NativeTypeName("const APPX_KEY_INFO *")] APPX_KEY_INFO *keyInfo, IAppxBundleReader **bundleReader)
 {
     return(((delegate * unmanaged <IAppxEncryptionFactory *, IStream *, APPX_KEY_INFO *, IAppxBundleReader **, int>)(lpVtbl[10]))((IAppxEncryptionFactory *)Unsafe.AsPointer(ref this), inputStream, keyInfo, bundleReader));
 }
 public int Save([NativeTypeName("LPSTREAM")] IStream *pStm, [NativeTypeName("BOOL")] int fClearDirty)
 {
     return(((delegate * stdcall <IPersistStreamInit *, IStream *, int, int>)(lpVtbl[6]))((IPersistStreamInit *)Unsafe.AsPointer(ref this), pStm, fClearDirty));
 }
Ejemplo n.º 4
0
 public int InitializeFromIStreamRegion([NativeTypeName("IStream *")] IStream *pIStream, ULARGE_INTEGER ulOffset, ULARGE_INTEGER ulMaxSize)
 {
     return(((delegate * unmanaged <IWICStream *, IStream *, ULARGE_INTEGER, ULARGE_INTEGER, int>)(lpVtbl[17]))((IWICStream *)Unsafe.AsPointer(ref this), pIStream, ulOffset, ulMaxSize));
 }
 public int ReleaseMarshalData(IStream *pStm)
 {
     return(((delegate * unmanaged <IMarshal2 *, IStream *, int>)(lpVtbl[7]))((IMarshal2 *)Unsafe.AsPointer(ref this), pStm));
 }
 public int MarshalInterface(IStream *pStm, [NativeTypeName("const IID &")] Guid *riid, void *pv, [NativeTypeName("DWORD")] uint dwDestContext, void *pvDestContext, [NativeTypeName("DWORD")] uint mshlflags)
 {
     return(((delegate * unmanaged <IMarshal2 *, IStream *, Guid *, void *, uint, void *, uint, int>)(lpVtbl[5]))((IMarshal2 *)Unsafe.AsPointer(ref this), pStm, riid, pv, dwDestContext, pvDestContext, mshlflags));
 }
 public HRESULT CreateBundleWriter(IStream *outputStream, [NativeTypeName("UINT64")] ulong bundleVersion, IAppxBundleWriter **bundleWriter)
 {
     return(((delegate * unmanaged <IAppxBundleFactory *, IStream *, ulong, IAppxBundleWriter **, int>)(lpVtbl[3]))((IAppxBundleFactory *)Unsafe.AsPointer(ref this), outputStream, bundleVersion, bundleWriter));
 }
Ejemplo n.º 8
0
 public int CreateDecoderFromStream([NativeTypeName("IStream *")] IStream *pIStream, [NativeTypeName("const GUID *")] Guid *pguidVendor, WICDecodeOptions metadataOptions, [NativeTypeName("IWICBitmapDecoder **")] IWICBitmapDecoder **ppIDecoder)
 {
     return(((delegate * unmanaged[Stdcall] < IWICImagingFactory2 *, IStream *, Guid *, WICDecodeOptions, IWICBitmapDecoder **, int >)(lpVtbl[4]))((IWICImagingFactory2 *)Unsafe.AsPointer(ref this), pIStream, pguidVendor, metadataOptions, ppIDecoder));
 }
Ejemplo n.º 9
0
 public int ActivateClassById([NativeTypeName("LPCWSTR")] ushort *id, IStream *pStream, [NativeTypeName("const IID &")] Guid *riid, void **ppv)
 {
     return(((delegate * unmanaged <IMFPMPHostApp *, ushort *, IStream *, Guid *, void **, int>)(lpVtbl[5]))((IMFPMPHostApp *)Unsafe.AsPointer(ref this), id, pStream, riid, ppv));
 }
Ejemplo n.º 10
0
 public int RegisterEffectFromStream([NativeTypeName("const IID &")] Guid *classId, IStream *propertyXml, [NativeTypeName("const D2D1_PROPERTY_BINDING *")] D2D1_PROPERTY_BINDING *bindings, [NativeTypeName("UINT32")] uint bindingsCount, [NativeTypeName("const PD2D1_EFFECT_FACTORY")] delegate *unmanaged <IUnknown **, int> effectFactory)
Ejemplo n.º 11
0
 public int CreateGdiMetafile(IStream *metafileStream, ID2D1GdiMetafile **metafile)
 {
     return(((delegate * unmanaged <ID2D1Factory5 *, IStream *, ID2D1GdiMetafile **, int>)(lpVtbl[21]))((ID2D1Factory5 *)Unsafe.AsPointer(ref this), metafileStream, metafile));
 }
Ejemplo n.º 12
0
 public HRESULT WriteSection(IStream *data, [NativeTypeName("LONG")] int startingBlockAddress, [NativeTypeName("LONG")] int numberOfBlocks)
 {
     return(((delegate * unmanaged <IWriteEngine2 *, IStream *, int, int, int>)(lpVtbl[7]))((IWriteEngine2 *)Unsafe.AsPointer(ref this), data, startingBlockAddress, numberOfBlocks));
 }
Ejemplo n.º 13
0
 public HRESULT AddSpecialPregap(IStream *data)
 {
     return(((delegate * unmanaged <IRawCDImageCreator *, IStream *, int>)(lpVtbl[9]))((IRawCDImageCreator *)Unsafe.AsPointer(ref this), data));
 }
Ejemplo n.º 14
0
 public HRESULT AddTrack(IMAPI_CD_SECTOR_TYPE dataType, IStream *data, [NativeTypeName("LONG *")] int *trackIndex)
 {
     return(((delegate * unmanaged <IRawCDImageCreator *, IMAPI_CD_SECTOR_TYPE, IStream *, int *, int>)(lpVtbl[8]))((IRawCDImageCreator *)Unsafe.AsPointer(ref this), dataType, data, trackIndex));
 }
Ejemplo n.º 15
0
 public HRESULT AddSubcodeRWGenerator(IStream *subcode)
 {
     return(((delegate * unmanaged <IRawCDImageCreator *, IStream *, int>)(lpVtbl[10]))((IRawCDImageCreator *)Unsafe.AsPointer(ref this), subcode));
 }
 public int Initialize(IStream *pIStream, WICDecodeOptions cacheOptions)
 {
     return(((delegate * unmanaged <IWICBitmapDecoder *, IStream *, WICDecodeOptions, int>)(lpVtbl[4]))((IWICBitmapDecoder *)Unsafe.AsPointer(ref this), pIStream, cacheOptions));
 }
 public HRESULT AddExternalPackageReference([NativeTypeName("LPCWSTR")] ushort *fileName, IStream *inputStream)
 {
     return(((delegate * unmanaged <IAppxEncryptedBundleWriter2 *, ushort *, IStream *, int>)(lpVtbl[3]))((IAppxEncryptedBundleWriter2 *)Unsafe.AsPointer(ref this), fileName, inputStream));
 }
Ejemplo n.º 18
0
 public HRESULT CreateMetadataReaderFromContainer([NativeTypeName("const GUID &")] Guid *guidContainerFormat, [NativeTypeName("const GUID *")] Guid *pguidVendor, [NativeTypeName("DWORD")] uint dwOptions, IStream *pIStream, IWICMetadataReader **ppIReader)
 {
     return(((delegate * unmanaged <IWICComponentFactory *, Guid *, Guid *, uint, IStream *, IWICMetadataReader **, int>)(lpVtbl[29]))((IWICComponentFactory *)Unsafe.AsPointer(ref this), guidContainerFormat, pguidVendor, dwOptions, pIStream, ppIReader));
 }
 public int CopyTo([NativeTypeName("IStream *")] IStream *pstm, ULARGE_INTEGER cb, [NativeTypeName("ULARGE_INTEGER *")] ULARGE_INTEGER *pcbRead, [NativeTypeName("ULARGE_INTEGER *")] ULARGE_INTEGER *pcbWritten)
 {
     return(((delegate * stdcall <IMarshalingStream *, IStream *, ULARGE_INTEGER, ULARGE_INTEGER *, ULARGE_INTEGER *, int>)(lpVtbl[7]))((IMarshalingStream *)Unsafe.AsPointer(ref this), pstm, cb, pcbRead, pcbWritten));
 }
Ejemplo n.º 20
0
 public HRESULT CreateDecoderFromStream(IStream *pIStream, [NativeTypeName("const GUID *")] Guid *pguidVendor, WICDecodeOptions metadataOptions, IWICBitmapDecoder **ppIDecoder)
 {
     return(((delegate * unmanaged <IWICComponentFactory *, IStream *, Guid *, WICDecodeOptions, IWICBitmapDecoder **, int>)(lpVtbl[4]))((IWICComponentFactory *)Unsafe.AsPointer(ref this), pIStream, pguidVendor, metadataOptions, ppIDecoder));
 }
 public HRESULT CreateBundleManifestReader(IStream *inputStream, IAppxBundleManifestReader **manifestReader)
 {
     return(((delegate * unmanaged <IAppxBundleFactory *, IStream *, IAppxBundleManifestReader **, int>)(lpVtbl[5]))((IAppxBundleFactory *)Unsafe.AsPointer(ref this), inputStream, manifestReader));
 }
Ejemplo n.º 22
0
 public int SaveAsFile([NativeTypeName("LPSTREAM")] IStream *pStream, [NativeTypeName("BOOL")] int fSaveMemCopy, [NativeTypeName("LONG *")] int *pCbSize)
 {
     return(((delegate * stdcall <IPicture2 *, IStream *, int, int *, int>)(lpVtbl[15]))((IPicture2 *)Unsafe.AsPointer(ref this), pStream, fSaveMemCopy, pCbSize));
 }
 public int UnmarshalInterface(IStream *pStm, [NativeTypeName("const IID &")] Guid *riid, void **ppv)
 {
     return(((delegate * unmanaged <IMarshal2 *, IStream *, Guid *, void **, int>)(lpVtbl[6]))((IMarshal2 *)Unsafe.AsPointer(ref this), pStm, riid, ppv));
 }
 public HRESULT AddExternalPackageReference([NativeTypeName("LPCWSTR")] ushort *fileName, IStream *inputStream, BOOL isDefaultApplicablePackage)
 {
     return(((delegate * unmanaged <IAppxBundleWriter4 *, ushort *, IStream *, BOOL, int>)(lpVtbl[5]))((IAppxBundleWriter4 *)Unsafe.AsPointer(ref this), fileName, inputStream, isDefaultApplicablePackage));
 }
Ejemplo n.º 25
0
 public int InitializeFromIStream([NativeTypeName("IStream *")] IStream *pIStream)
 {
     return(((delegate * unmanaged <IWICStream *, IStream *, int>)(lpVtbl[14]))((IWICStream *)Unsafe.AsPointer(ref this), pIStream));
 }
 public int Serialize([NativeTypeName("ITfProperty *")] ITfProperty *pProp, [NativeTypeName("ITfRange *")] ITfRange *pRange, [NativeTypeName("TF_PERSISTENT_PROPERTY_HEADER_ACP *")] TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr, [NativeTypeName("IStream *")] IStream *pStream)
 {
     return(((delegate * unmanaged <ITextStoreACPServices *, ITfProperty *, ITfRange *, TF_PERSISTENT_PROPERTY_HEADER_ACP *, IStream *, int>)(lpVtbl[3]))((ITextStoreACPServices *)Unsafe.AsPointer(ref this), pProp, pRange, pHdr, pStream));
 }
 public int Load([NativeTypeName("LPSTREAM")] IStream *pStm)
 {
     return(((delegate * stdcall <IPersistStreamInit *, IStream *, int>)(lpVtbl[5]))((IPersistStreamInit *)Unsafe.AsPointer(ref this), pStm));
 }
 public int Unserialize([NativeTypeName("ITfProperty *")] ITfProperty *pProp, [NativeTypeName("const TF_PERSISTENT_PROPERTY_HEADER_ACP *")] TF_PERSISTENT_PROPERTY_HEADER_ACP *pHdr, [NativeTypeName("IStream *")] IStream *pStream, [NativeTypeName("ITfPersistentPropertyLoaderACP *")] ITfPersistentPropertyLoaderACP *pLoader)
 {
     return(((delegate * unmanaged <ITextStoreACPServices *, ITfProperty *, TF_PERSISTENT_PROPERTY_HEADER_ACP *, IStream *, ITfPersistentPropertyLoaderACP *, int>)(lpVtbl[4]))((ITextStoreACPServices *)Unsafe.AsPointer(ref this), pProp, pHdr, pStream, pLoader));
 }
Ejemplo n.º 29
0
 public int CopyTo([NativeTypeName("IStream *")] IStream *pstm, ULARGE_INTEGER cb, [NativeTypeName("ULARGE_INTEGER *")] ULARGE_INTEGER *pcbRead, [NativeTypeName("ULARGE_INTEGER *")] ULARGE_INTEGER *pcbWritten)
 {
     return(((delegate * unmanaged <ISpStreamFormatConverter *, IStream *, ULARGE_INTEGER, ULARGE_INTEGER *, ULARGE_INTEGER *, int>)(lpVtbl[7]))((ISpStreamFormatConverter *)Unsafe.AsPointer(ref this), pstm, cb, pcbRead, pcbWritten));
 }
 public int QueryCapability(IStream *pIStream, [NativeTypeName("DWORD *")] uint *pdwCapability)
 {
     return(((delegate * unmanaged <IWICBitmapDecoder *, IStream *, uint *, int>)(lpVtbl[3]))((IWICBitmapDecoder *)Unsafe.AsPointer(ref this), pIStream, pdwCapability));
 }