Como declaro um IStream em idl, para que o visual studio o mapeie para s.w.interop.comtypes?

Eu tenho um objeto COM que precisa pegar um fluxo de um cliente C # e processá-lo. Parece que eu deveria usar o IStream. Então eu escrevo meu idl como abaixo. Em seguida, uso o MIDL para compilar em um tlb, compile minha solução, registre-a e adicione uma referência à minha biblioteca em um projeto C #.

O Visual Studio cria uma definição IStream na minha própria biblioteca. Como posso impedir que isso seja feito e usar o COMTypes IStream? Parece que haveria uma das 3 respostas: adicione alguma importação

para o idl, para não redefinir o IStream (a importação do MSCOREE faz isso, mas não resolve o problema do C #)de alguma forma, aliás, o IStream no visual studio - mas não vejo como fazer isso.Todo o meu pensamento está completamente errado e eu não deveria estar usando o IStream.

ajuda ... obrigado

[
  uuid(3AC11584-7F6A-493A-9C90-588560DF8769),
  version(1.0),
]
library TestLibrary
{

  importlib("stdole2.tlb");

  [
    uuid(09FF25EC-6A21-423B-A5FD-BCB691F93C0C),
    version(1.0),
    helpstring("Just for testing"),
    dual,
    nonextensible,
    oleautomation
  ]
  interface ITest: IDispatch
  {
    [id(0x00000006),helpstring("Testing stream")]
    HRESULT _stdcall LoadFromStream([in] IStream * stream, [out, retval] IMyTest ** ResultValue);
  };

  [
    uuid(CC2864E4-55BA-4057-8687-29153BE3E046),
    noncreatable,
    version(1.0)
  ]
  coclass HCTest
  {
     [default] interface ITest;
  };

};

questionAnswers(2)

yourAnswerToTheQuestion