I'm writing an application for the Peachtree API and it needs to work with any version of the API. Unfortunately the dll from Peachtree 2011 can't interact with Peachtree 2010, and vice versa, even though the two dlls are stored in the same location and run with exactly the same code.
I thought I should be able to refer to the dll by it's file path, leave specific version at false, embed interop types at false, and copy local at false and it would just use whatever version the machine had, but I get an error when I do that - "Exception has been thrown by the target of an invocation."
Is there a way to late-bind the dll even though it's COM?
I can provide code samples of whatever you think would be helpful, but it's more of a project setup issue than anything.
EDIT: Thank you all very much for your help. I found my solution on a different person's question and posted it here.