Excel I have a .Net object compiled as a tlb but cant not access any methods apart from Dispose.

Posted by Mark O'Grady on Stack Overflow See other posts from Stack Overflow or by Mark O'Grady
Published on 2010-06-09T10:02:05Z Indexed on 2010/06/09 10:52 UTC
Read the original article Hit count: 180

Filed under:
|
|

Hi

This is ongoing issue to something I posted yesterday.

I have a .net object that I want to use in Excel. I have an existing VBA script that i need to alter to call this the object from. I have then converted the object to a TLB. I've not really touched on this area before so any help will be appreciated.

I have created an interface

[Guid("0F700B48-E0CA-446b-B87E-555BCC317D74"),InterfaceType(ComInterfaceType.InterfaceIsDual)]
[ComVisible(true)]
public interface IOfficeCOMInterface
{

    [DispId(1)]
    void ResetOrder();
    [DispId(2)]
    void SetDeliveryAddress(string PostalName, string AddressLine1, string AddressLine2, string AddressLine3, string AddressLine4, string PostCode, string CountryCode, string TelephoneNo, string FaxNo, string EmailAddress);
}

I have also created an class that inherits that object.

[ClassInterface(ClassInterfaceType.None), ProgId("NAMESPACE.OfficeCOMInterface"), Guid("9D9723F9-8CF1-4834-BE69-C3FEAAAAB530"), ComVisible(true)]
public class OfficeCOMInterface : IOfficeCOMInterface, IDisposable
{
 public void ResetSOPOrder()
    {

    }
public void SetDeliveryAddress(string PostalName, string AddressLine1, string AddressLine2, string AddressLine3, string AddressLine4, string PostCode, string CountryCode, string TelephoneNo, string FaxNo, string EmailAddress)
    {

        try
        {
            SalesOrder.AmendDeliveryAddress(PostalName, AddressLine1, AddressLine2, AddressLine3, AddressLine4, PostCode);

            MessageBox.Show("Delivery address set");
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
}

I can't access the object methods apart from dispose, I guess IDisposable is working fine. Is there anything I need to my Interface?

© Stack Overflow or respective owner

Related posts about c#

Related posts about interface