Is it possible to debug COM DLLs in VS2008?

This can be a very stupid question.
Is it possible to debug COM-dll in VS2008, for which I do not have source code?

The reason I want to do this is to pass the array to the COM method, and I expect this array to be populated by the method.
However, the array is not populated. So I want to go to the COM method to see what happens. Is it possible?

Below is an example of the code I'm using:

Array binaryArray = Array.CreateInstance(typeof(sbyte), 896);
bool success = photo.GetBinaryData(binaryArray);

IDL for the method GetBinaryData:

[id(0x000000c9)]
HRESULT GetBinaryData(
                [in] SAFEARRAY(char) buffer, 
                [out, retval] VARIANT_BOOL* retval);

A method GetBinaryDatais a COM method that I would like to log into.

EDIT: adding a Delphi script test that works

procedure TComTestForm.TestUserBtnClick(Sender: TObject);
var
  nCnt :integer;
  User :IUser;
  Persona :IUserPersona;
  ArrayBounds :TSafeArrayBound;
  ArrayData :Pointer;
  TagList :PSafeArray;
  nSize :integer;
begin
  User := Session.GetUser;

  ArrayBounds.lLbound   := 0;
  ArrayBounds.cElements := 0;

  TagList := SafeArrayCreate( varInteger, 1, ArrayBounds );
  User.GetTags( TagList );
  if SafeArrayAccessData( TagList, ArrayData ) = S_OK then
    begin
      nSize := TagList.rgsabound[0].cElements;
      OutLine( '----Available Tags, ' + IntToStr(nSize) + ' tags' );
  for nCnt := 0 to nSize - 1 do
    begin
  OutLine( IntToStr( IntegerArray(ArrayData)[nCnt] ) );
end;

OutLine ('----');

SafeArrayUnAccessData (TagList); SafeArrayDestroy (TagList); end;

end;

+3
1

, , COM.

, , , , , .

, , , .

COM , , , (, ++), COM Interop COM-.

+3

All Articles