Método ObjectContext::CreateInstance (comsvcs.h)
Cria um objeto usando o contexto do objeto atual.
O objeto terá contexto somente se seu componente for registrado com COM+.
Sintaxe
HRESULT CreateInstance(
[in] BSTR bstrProgID,
[out] VARIANT *pObject
);
Parâmetros
[in] bstrProgID
O ProgID do tipo de objeto a ser instanciado.
[out] pObject
Uma referência ao novo objeto .
Retornar valor
Esse método pode retornar os valores de retorno padrão E_INVALIDARG, E_OUTOFMEMORY e E_FAIL, bem como os valores a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi concluído com sucesso. |
|
Erro inesperado. Isso pode acontecer se um objeto passar seu ponteiro ObjectContext para outro objeto e o outro objeto chamar CreateInstance usando esse ponteiro. Um ponteiro ObjectContext não é válido fora do contexto do objeto que o obteve originalmente. |
Comentários
Quando você cria um objeto usando CreateInstance, o contexto do novo objeto é derivado de ObjectContext do objeto atual e das propriedades declarativas do componente do novo objeto. O novo objeto sempre é executado dentro da mesma atividade que o objeto que o criou. Se o objeto atual tiver uma transação, o atributo de transação do componente do novo objeto determinará se o novo objeto é executado dentro do escopo dessa transação.
Se a configuração do atributo de transação do componente exigir uma transação ou oferecer suporte a transações, o novo objeto herdará a transação do criador. Se o atributo de transação do componente exigir uma nova transação, COM+ iniciará uma nova transação para o novo objeto. Se o atributo de transação do componente não der suporte a transações, o novo objeto não será executado em nenhuma transação.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | comsvcs.h |