For Programmers: Free Programming Magazines  


Home > Archive > Visual Basic > March 2006 > Duplicate definition on Interface declaration









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Duplicate definition on Interface declaration
Marc Friedman

2006-03-24, 6:57 pm

In my application I have an interface class which is implemented in a half
dozen other classes. Occasionally (and every time, at the moment) when I
start the application in the IDE, it does the JIT compile and then highlights
one declaration in the Interface class (for a routine called Init), with the
error "Duplicate definition". I've checked the declaration, and it is
correct, and it is consistent with the implementation in the other classes
that implement this interface, and there is no other Init routine in the
Interface class. The help file indicates that this is a problem with
duplicate compiler constants (#Const), but I do not have any of these in my
application. Sometimes it will start without this error, and it always
builds without error. I've searched the Microsoft site, the MSDN site, and
the Internet in general, and can't find any related information. Does anyone
have any insights into this problem? Any help would be most appreciated.
And if there is a better discussion board to post this on, please let me
know. Thanks.

Marc Friedman
Ken Halter

2006-03-24, 6:57 pm

"Marc Friedman" <MarcFriedman@discussions.microsoft.com> wrote in message
news:F241F15F-8AD4-4AD8-B999-3223B5AAD2BB@microsoft.com...
> In my application I have an interface class which is implemented in a half
> dozen other classes. Occasionally (and every time, at the moment) when I
> start the application in the IDE, it does the JIT compile and then
> highlights


No JIT compile in VB Classic....

You'll want to post that question in a .Net group.
They all contain "dotnet" or "vsnet" in their names.
This and all other groups on the MS server that start with
"microsoft.public.vb"
are for VB Classic (mostly VB5/6) and were in existance long before any .Net
products were released. While some of the code looks the same, they are very
different products and require a different set of groups.

Try one of these:
news://news.microsoft.com/microsoft....dotnet.general
news://news.microsoft.com/microsoft...et.languages.vb
news://news.microsoft.com/microsoft...ges.vb.controls
news://news.microsoft.com/microsoft...amework.interop

--
Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm


Marc Friedman

2006-03-24, 6:57 pm

This is a VB6 application. When I say "JIT Compile", I mean the compilation
that the VB IDE does when you start the application. Sorry if there was any
confusion.

"Ken Halter" wrote:

> "Marc Friedman" <MarcFriedman@discussions.microsoft.com> wrote in message
> news:F241F15F-8AD4-4AD8-B999-3223B5AAD2BB@microsoft.com...
>
> No JIT compile in VB Classic....
>
> You'll want to post that question in a .Net group.
> They all contain "dotnet" or "vsnet" in their names.
> This and all other groups on the MS server that start with
> "microsoft.public.vb"
> are for VB Classic (mostly VB5/6) and were in existance long before any .Net
> products were released. While some of the code looks the same, they are very
> different products and require a different set of groups.
>
> Try one of these:
> news://news.microsoft.com/microsoft....dotnet.general
> news://news.microsoft.com/microsoft...et.languages.vb
> news://news.microsoft.com/microsoft...ges.vb.controls
> news://news.microsoft.com/microsoft...amework.interop
>
> --
> Ken Halter - MS-MVP-VB - Please keep all discussions in the groups..
> DLL Hell problems? Try ComGuard - http://www.vbsight.com/ComGuard.htm
>
>
>

Mike D Sutton

2006-03-24, 6:57 pm

> In my application I have an interface class which is implemented in a half
> dozen other classes. Occasionally (and every time, at the moment) when I
> start the application in the IDE, it does the JIT compile and then

highlights
> one declaration in the Interface class (for a routine called Init), with

the
> error "Duplicate definition". I've checked the declaration, and it is
> correct, and it is consistent with the implementation in the other classes
> that implement this interface, and there is no other Init routine in the
> Interface class. The help file indicates that this is a problem with
> duplicate compiler constants (#Const), but I do not have any of these in

my
> application. Sometimes it will start without this error, and it always
> builds without error. I've searched the Microsoft site, the MSDN site,

and
> the Internet in general, and can't find any related information. Does

anyone
> have any insights into this problem? Any help would be most appreciated.
> And if there is a better discussion board to post this on, please let me
> know.


Does one of your classes that implement the interface also expose a local
Init() method perhaps?
Are there any other variables / constants / objects / structures /
enumerators etc with the name "Init" in your project?
Do you have an "Init" conditional compile argument set (Project -> [Project
name] Properties -> Make -> Conditional compilation arguments)?

Mike


- Microsoft Visual Basic MVP -
E-Mail: EDais@mvps.org
WWW: Http://EDais.mvps.org/


Marc Friedman

2006-03-27, 6:55 pm



"Mike D Sutton" wrote:

> highlights
> the
> my
> and
> anyone
>
> Does one of your classes that implement the interface also expose a local
> Init() method perhaps?
> Are there any other variables / constants / objects / structures /
> enumerators etc with the name "Init" in your project?
> Do you have an "Init" conditional compile argument set (Project -> [Project
> name] Properties -> Make -> Conditional compilation arguments)?
>
> Mike
>
>
> - Microsoft Visual Basic MVP -
> E-Mail: EDais@mvps.org
> WWW: Http://EDais.mvps.org/
>


I've checked and none of the classes that implement this interface have a
local Init routine. There are no conditional compile arguments named "Init".
There is only one conditional compile argument in one project of the
application, and that is named "STARTUP_MODE". I don't believe there are any
variables / constants / objects / structures / enums / etc. named Init, but
it will take a while to search all the projects in the entire application.
There are some local routines named Init, in classes that do not implement
this interface, but there are classes that don't implement this interface
that also have local routines named Load and Save which are on this interface
too, but have never generated this "Duplicate definition" error.

And now, to make matters even more challenging, I'm getting this Duplicate
definition error when I try to display some forms and/or controls in the IDE
by either double clicking on them, or right clicking and selecting "View
Object". Not all forms and controls, just some of them. I'm going to check
all the references in all the projects, just to make sure one of those hasn't
gotten corrupted.

The other members of my team are also occasionally getting this error, but
we cannot define any rhyme or reason to it.

Marc
Marc Friedman

2006-03-28, 6:56 pm



"Mike D Sutton" wrote:

> highlights
> the
> my
> and
> anyone
>
> Does one of your classes that implement the interface also expose a local
> Init() method perhaps?
> Are there any other variables / constants / objects / structures /
> enumerators etc with the name "Init" in your project?
> Do you have an "Init" conditional compile argument set (Project -> [Project
> name] Properties -> Make -> Conditional compilation arguments)?
>
> Mike
>
>
> - Microsoft Visual Basic MVP -
> E-Mail: EDais@mvps.org
> WWW: Http://EDais.mvps.org/
>
>


To make sure that there was no conflict, I changed the name of the interface
routine "Init" to "ASDF". I still get the "Duplicate definition" error.

Marc Friedman
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com