Indirect reference is being made to assembly Interop

I am getting an error on one of my development machines when I try to "run" my project in debug mode. It compiles without errors, but when I try to run it in debug mode the error comes up. This SAME EXACT code on two other development machines does not give this error. What could be missing on the one development machine that might cause this error.

"Indirect reference is being made to assembly Interop.WESTrafficServer version 1.3.0.0, which contains 'WESEvaluationObjects._clsEvaluation.TrafficPattern'. This Project references a prior version of Interop.WESTrafficServer version 1.2.0.0. To use 'WESEvaluationObjects._clsEvaluation.TrafficPattern', you must replace the reference to Interop.WESTrafficServer with version 1.3.0.0 or higher."

I know FOR A FACT that the COM object and the .NET project are referencing the exact same COM DLL and there is no version descrepancy. The COM DLL's are VB6 dlls. The computer that gives the error does NOT have the VB6 runtime installed, but the other two machines do. Do you have to have the VB6 runtime installed to use COM in .NET apps?Surely not.
LVL 3
emailrobertwalkerAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
Fernando SotoConnect With a Mentor RetiredCommented:
Hi Bob;

I would like to see a resolution to this question seeming Microsoft states that all program written in VB 6 needs the VB 6 runtime loaded on that machine and that is what is missing on the machine that does not work and the authors last statement was that he was downloading the VB 6 runtime and loading it to that machine.

Happy New Year. ;=)

Fernando
0
 
newyuppieCommented:
very ballpark: (of course you tried to remove and add the reference again)

in your solution explorer, mark to show all files. then under references, find this reference and check its SpecificVersion property, if its true, try setting it to false to see if this error goes away
0
 
Fernando SotoRetiredCommented:
Hi emailrobertwalker;

The Microsoft Visual Basic run-time files are required by all applications that are created with Visual Basic 6.0. I would start by downloading the VB6 run-time and loading it to the box that is not working with your code.

Fernando
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
Jayadev NairApplication DeveloperCommented:
Hi

Let me try to point out a possible scenario of this error.

Assume you have 3 projects referring AnotherdllVersion2.dll. All f your projects had Anotherdll.dll(Version1) referred and now you replaced with Anotherdll.dll(Version2)

Your 3 projects are:
1.dll
2.dll
and 3.exe

3.exe referrs to all 1.dll,2.dll and Anotherdll.dll(Version2)

But when you replaced with new, you didnt rebuild all of the three projects. Just compiled 2.dll and 3.dll. and so 1.dll is still referred with Anotherdll.dll(Version1) and will show such an error or possibly another error(ambigous namespace found.)

Check any of your existing dependencies are built with prior version. If so, rebuild those with the new one

Thanks.
0
 
emailrobertwalkerAuthor Commented:
I know that seems obvious and I promise you I first recompiled ALL dll files. Like I said, it works on two development machines, but not the third. Something is missing on that third machine. We are currently installing VB6 Runtime on the machine that does not work to see if that solves the problem.
0
 
Jayadev NairApplication DeveloperCommented:
I dont think VB6 runtime will help you. please Find:

http://msdn2.microsoft.com/en-US/library/ms184598.aspx

Thanks.
0
All Courses

From novice to tech pro — start learning today.