Compartilhar via


StgOpenStorageOnILockBytes

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função abre um objeto armazenamento existente que não residir em um arquivo em disco, mas em vez disso, possui um subjacente matriz de bytes fornecido pelo chamador.

Syntax

WINOLEAPI StgOpenStorageOnILockBytes( 
  ILockBytes* plkbyt, 
  IStorage* pStgPriority, 
  DWORD grfMode, 
  SNB snbExclude, 
  DWORD reserved, 
  IStorage** ppstgOpen 
); 

Parameters

  • plkbyt
    [no] ILockBytes ponteiro para o subjacente objeto matriz byte que contém o objeto armazenamento a ser aberto.
  • pStgPriority
    [no] Com mais freqüência NULL. Se não for NULL, este parâmetro é usado em vez das plkbyt parâmetro para especificar o objeto armazenamento para aberto. Neste maiúsculas e minúsculas, ela aponta para o IStorage interface em um objeto armazenamento raiz anteriormente abertos, geralmente um que foi aberto no modo prioridade.

    Após a StgOpenStorageOnILockBytes função retorna, o objeto armazenamento especificado na pStgPriority parâmetro na função entrada é inválido e pode não ser usado; Use o especificado na ppStgOpen parâmetro em vez disso.

  • grfMode
    [no] Especifica o modo de acesso usar para o objeto armazenamento aberto.
  • snbExclude
    [no] Pode ser NULL. Se não for NULL, este parâmetro aponta para um bloco de elementos nesse armazenamento que devem ser excluídos como o objeto armazenamento é aberto. Essa exclusão ocorre independentemente se copiar um instantâneo acontece no aberto.
  • Reservado
    [no] Reservado para uso futuro; definido como zero.
  • ppstgOpen
    [out] Ponteiro para a localidade de um IStorage ponteiro para o armazenamento aberto em bem-sucedido retornar.

Return Value

Um dos valores descritos a seguinte tabela é retornada.

Valor Descrição

S_OK

Indica que o objeto armazenamento foi aberto com êxito.

STG_E_FILENOTFOUND

Indica que a matriz byte especificado não existe.

STG_E_ACCESSDENIED

Indica que acessar foi negado porque o chamador tem permissão insuficiente, ou outro chamador tem o arquivo aberto e bloqueado.

STG_E_LOCKVIOLATION

Indica que acessar foi negado porque outro chamador tem o arquivo aberto e bloqueado.

STG_E_SHAREVIOLATION

Indica que acessar foi negado porque outro chamador tem o arquivo aberto e bloqueado.

STG_E_FILEALREADYEXISTS

Indica que a matriz byte existe mas não é um objeto armazenamento.

STG_E_TOOMANYOPENFILES

Indica que o objeto armazenamento não foi aberto porque há muitos aberto arquivos.

STG_E_INSUFFICIENTMEMORY

Indica que o objeto armazenamento não foi aberto devido a uma falta de memória.

STG_E_INVALIDNAME

Indica que seja pwcsName Ou snbExclude Contém um inválido Nome.

STG_E_INVALIDPOINTER

Indica que snbExclude, pwcsName, pstgPriority, ou ppStgOpen Contém um inválido ponteiro.

STG_E_INVALIDFLAG

Indica que o grfMode parâmetro contém um incorreto combinação sinalizador.

STG_E_INVALIDFUNCTION

Indica que a modo de acesso STGM_DELETEONRELEASE foi especificado na grfMode parâmetro.

STG_E_OLDDLL

Indica que o DLL que está sendo usado para este objeto armazenamento é uma versão prior to aquele usado para criá-lo aberto.

STG_E_OLDFORMAT

Indica que o objeto armazenamento sendo aberto foi criado pelo provedor de armazenamento Beta 1. Esse formato é Não com suporte mais.

Essa função também pode retornar qualquer erros sistema de arquivos ou Win32 erros ajustada em um HRESULT, ou ILockBytes valores de retorno de erro interface.

Remarks

O StgCreateDocfileOnILockBytes e StgOpenStorageOnILockBytes funções não estiverem disponível para o non-Desktop compatível implementação by means of CESYSGEN.

StgOpenStorageOnILockBytes Abre o objeto armazenamento raiz especificada. O objeto armazenamento é aberto de acordo com o modo de acesso in a grfMode parâmetro. Um ponteiro para o IStorage interface no objeto de armazenamento aberto é fornecido através de ppstgOpen parâmetro.

O objeto armazenamento deve ter sido criado por anteriormente o StgCreateDocfileOnILockBytes função.

Exceto para especificar um objeto matriz programador - fornecido byte -, StgOpenStorageOnILockBytes é semelhante de StgOpenStorage função. Para obter mais informações, consulte StgOpenStorage.

Passando para esta função qualquer inválido e, em algumas circunstâncias, NULL ponteiros resulta em terminação inesperada do aplicativo.

Para determinar se a plataforma oferece suporte a essa função, consulte Determinando suporte COM APIs.

Requirements

Header objbase.h
Library ole32.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

ILockBytes
IStorage
StgCreateDocfileOnILockBytes
StgOpenStorage