473,605 Members | 2,602 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

managed C++ link error

I'm getting the following error when attempting to link a
managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are defined, it
appears that the template type
itga::order_col lection::iterat or is causing the trouble.

Gary.

Compiling...
OrderEnumerator .cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdotn etd.exp
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ; methods: .ctor):
(0x06000001).
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm"
ITGAdotnet - 3 error(s), 0 warning(s)

---------------------------------------------------------

public __gc class OrderEnumerator : public
System::Collect ions::IEnumerat or
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_col lection::iterat or& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};

Nov 16 '05 #1
10 9503
I've had this before and was never able to narrow down the exact cause, but
is seemed to have to do with the order of #using<> statements (esp. when
you're including header files that also have #using<> statements). Make
sure you're not #using anything twice if you don't need to or at all if you
don't need it.

Brian

"Gary Hughes" <ge*@itga.com.a u> wrote in message
news:08******** *************** *****@phx.gbl.. .
I'm getting the following error when attempting to link a
managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are defined, it
appears that the template type
itga::order_col lection::iterat or is causing the trouble.

Gary.

Compiling...
OrderEnumerator .cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdotn etd.exp
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ; methods: .ctor):
(0x06000001).
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm"
ITGAdotnet - 3 error(s), 0 warning(s)

---------------------------------------------------------

public __gc class OrderEnumerator : public
System::Collect ions::IEnumerat or
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_col lection::iterat or& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};


Nov 16 '05 #2
Thanks for the clues Brian but no joy. I have stripped
things down so that I have four files.

OrderEnumerator .h
OrderEnumerator .cpp
OrderCollection .h
OrderCollection .cpp

These files are not included in any other project files.
Adding #include "OrderEnumerato r.h" to OrderCollection .cpp
causes the error in question. I don't actually use
anything from OrderEnumerator .h I just include the file.
There are no #using statements in these files. I include
the definitions of the itga:: stuff via stdafx.h, I have
tried including them directly in both the header and cpp
files in question as well.
Furthermore if I comment out the use of
itga::order_col lection::iterat or then the problem goes
away. Everything compiles fine and I use the
itga::order_col lection::iterat or elsewhere (in a plain cpp
library and a COM wrapper library) with no problems both
with VC++ and G++ on solaris.

All the unerlying cpp files have include guards and the
managed header files all have #pragma once.

It appears VC++ is generating some kind of symbol
information and getting it wrong, maybe involving forward
declarations?

btw, I'm using visual studio 2003.

Does anyone have any clues?
-----Original Message-----
I've had this before and was never able to narrow down the exact cause, butis seemed to have to do with the order of #using<> statements (esp. whenyou're including header files that also have #using<> statements). Makesure you're not #using anything twice if you don't need to or at all if youdon't need it.

Brian

"Gary Hughes" <ge*@itga.com.a u> wrote in message
news:08******* *************** ******@phx.gbl. ..
I'm getting the following error when attempting to link a managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are defined, it appears that the template type
itga::order_col lection::iterat or is causing the trouble.

Gary.

Compiling...
OrderEnumerator .cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdotn etd.exp
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ; methods: .ctor): (0x06000001).
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm"
ITGAdotnet - 3 error(s), 0 warning(s)

-------------------------------------------------------- -
public __gc class OrderEnumerator : public
System::Collect ions::IEnumerat or
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_col lection::iterat or& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};


.

Nov 16 '05 #3
Furthermore if I simply put all the code from
OrderEnumerator .[h|cpp] into OrderCollection .cpp it
compiles and links without a problem.
-----Original Message-----
Thanks for the clues Brian but no joy. I have stripped
things down so that I have four files.

OrderEnumerato r.h
OrderEnumerato r.cpp
OrderCollectio n.h
OrderCollectio n.cpp

These files are not included in any other project files.
Adding #include "OrderEnumerato r.h" to OrderCollection .cppcauses the error in question. I don't actually use
anything from OrderEnumerator .h I just include the file.
There are no #using statements in these files. I include
the definitions of the itga:: stuff via stdafx.h, I have
tried including them directly in both the header and cpp
files in question as well.
Furthermore if I comment out the use of
itga::order_co llection::itera tor then the problem goes
away. Everything compiles fine and I use the
itga::order_co llection::itera tor elsewhere (in a plain cpplibrary and a COM wrapper library) with no problems both
with VC++ and G++ on solaris.

All the unerlying cpp files have include guards and the
managed header files all have #pragma once.

It appears VC++ is generating some kind of symbol
information and getting it wrong, maybe involving forward
declarations ?

btw, I'm using visual studio 2003.

Does anyone have any clues?
-----Original Message-----
I've had this before and was never able to narrow downthe exact cause, but
is seemed to have to do with the order of #using<>

statements (esp. when
you're including header files that also have #using<>

statements). Make
sure you're not #using anything twice if you don't need

to or at all if you
don't need it.

Brian

"Gary Hughes" <ge*@itga.com.a u> wrote in message
news:08****** *************** *******@phx.gbl ...
I'm getting the following error when attempting to linka
managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are
defined,
it appears that the template type
itga::order_col lection::iterat or is causing the
trouble.
Gary.

Compiling...
OrderEnumerator .cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdotn etd.exp
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ;
methods: .ctor): (0x06000001).
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm" ITGAdotnet - 3 error(s), 0 warning(s)

-------------------------------------------------------
--
public __gc class OrderEnumerator : public
System::Collect ions::IEnumerat or
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_col lection::iterat or& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};


.

.

Nov 16 '05 #4
-----Original Message-----

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Subject: managed C++ link error
Date: Tue, 5 Aug 2003 21:43:37 -0700
Message-ID: <08************ *************** *@phx.gbl>

I'm getting the following error when attempting to link amanaged C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are defined, itappears that the template type
itga::order_c ollection::iter ator is causing the trouble.

Gary.

Compiling.. .
OrderEnumerat or.cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdo tnetd.exp
OrderEnumerat or.obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ; methods: .ctor):(0x06000001 ).
OrderEnumerat or.obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm"
ITGAdotnet - 3 error(s), 0 warning(s)

---------------------------------------------------------

public __gc class OrderEnumerator : public
System::Colle ctions::IEnumer ator
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_c ollection::iter ator& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};


This usually happens because somehow the compiler puts

slightly differentmetadata in two modules for the same type. At link time, when the metadatais merged, this error is emitted because the name for the type is the same,but there is some descrepancy in the rest of the metadata describing thattype. The first thing I would look at are the command line options used tocompile the two modules, and then I would look at the includes leading upto the definition of the type for the two modules. Both of these things cansometimes affect the metadata for a type. If these don't yield any clues,then I would use metainfo to dump the metadata for the two object files,and look for the differences that way. Often this will lead you back to theincludes or the command line options.

I hope this helps. Good luck!

--
Daniel Tomko, Visual C++ Team
This posting is provided AS IS with no warranties, and confers no rights.


Hi Daniel,

No luck still, the two files in question
OrderCollection .cpp and OrderEnumerator .cpp have exactly
the same build options. They each include the unmanaged
code through a single header which is included in stdafx.h.

I used metainfo to dump the .obj files and I can't see any
differences in the type in question
itga::order_col lection::iterat or, although I am admittedly
inexperienced with this and could be missing something.

I had initially thought it must be something along the
lines of what you mentioned with include order causing the
problem however I don't see how this can be the case as
the type is included from one point only.

I've tried creating a simple test case but have been
unable to do so.

Gary.
Nov 16 '05 #5

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Sender: "Gary Hughes" <ge*@itga.com.a u>
Subject: RE: managed C++ link error
Date: Thu, 7 Aug 2003 22:36:22 -0700
Message-ID: <05************ *************** *@phx.gbl>

-----Original Message-----

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Subject: managed C++ link error
Date: Tue, 5 Aug 2003 21:43:37 -0700
Message-ID: <08************ *************** *@phx.gbl>

I'm getting the following error when attempting to linkamanaged C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are defined,itappears that the template type
itga::order_ collection::ite rator is causing the trouble.

Gary.

Compiling. ..
OrderEnumera tor.cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAd otnetd.exp
OrderEnumera tor.obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ;methods: .ctor):(0x06000001) .
OrderEnumera tor.obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current) : (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm"
ITGAdotnet - 3 error(s), 0 warning(s)

---------------------------------------------------------

public __gc class OrderEnumerator : public
System::Coll ections::IEnume rator
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection ,
const
itga::order_ collection::ite rator& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};



This usually happens because somehow the compiler puts

slightly different
metadata in two modules for the same type. At link time,

when the metadata
is merged, this error is emitted because the name for the

type is the same,
but there is some descrepancy in the rest of the metadata

describing that
type. The first thing I would look at are the command

line options used to
compile the two modules, and then I would look at the

includes leading up
to the definition of the type for the two modules. Both

of these things can
sometimes affect the metadata for a type. If these don't

yield any clues,
then I would use metainfo to dump the metadata for the

two object files,
and look for the differences that way. Often this will

lead you back to the
includes or the command line options.

I hope this helps. Good luck!

--
Daniel Tomko, Visual C++ Team
This posting is provided AS IS with no warranties, and

confers no rights.


Hi Daniel,

No luck still, the two files in question
OrderCollectio n.cpp and OrderEnumerator .cpp have exactly
the same build options. They each include the unmanaged
code through a single header which is included in stdafx.h.

I used metainfo to dump the .obj files and I can't see any
differences in the type in question
itga::order_co llection::itera tor, although I am admittedly
inexperience d with this and could be missing something.

I had initially thought it must be something along the
lines of what you mentioned with include order causing the
problem however I don't see how this can be the case as
the type is included from one point only.

I've tried creating a simple test case but have been
unable to do so.

Gary.


Would it be possible to try this without precompiled headers? I'm just
thinking of ways to reduce complexity to narrow down the problem.

--
Daniel Tomko, Visual C++ Team
This posting is provided AS IS with no warranties, and confers no rights.

Nov 16 '05 #6
-----Original Message-----

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Sender: "Gary Hughes" <ge*@itga.com.a u>
Subject: RE: managed C++ link error
Date: Thu, 7 Aug 2003 22:36:22 -0700
Message-ID: <05************ *************** *@phx.gbl>

-----Original Message-----

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Subject: managed C++ link error
Date: Tue, 5 Aug 2003 21:43:37 -0700
Message-ID: <08************ *************** *@phx.gbl>

I'm getting the following error when attempting to link
a
managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everythin g compiles fine and all the types are
defined,it
appears that the template type
itga::order _collection::it erator is causing the
trouble.
Gary.

Compiling.. .
OrderEnumer ator.cpp
Linking.. .
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGA dotnetd.exp
OrderEnumer ator.obj : error LNK2022: metadata operationfailed (80131187) : Inconsistent method declarations induplicate d types (types: OrderEnumerator ;methods: .ctor):
(0x06000001 ).
OrderEnumer ator.obj : error LNK2022: metadata operationfailed (80131188) : Inconsistent field declarations in
duplicate d types (types: OrderEnumerator ; fields:
m_current ): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130 ) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm "ITGAdotne t - 3 error(s), 0 warning(s)

------------------------------------------------------- --
public __gc class OrderEnumerator : public
System::Col lections::IEnum erator
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collectio n,
const
itga::order _collection::it erator& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};



This usually happens because somehow the compiler puts

slightly different
metadata in two modules for the same type. At link

time,when the metadata
is merged, this error is emitted because the name for
thetype is the same,
but there is some descrepancy in the rest of the
metadatadescribing that
type. The first thing I would look at are the command

line options used to
compile the two modules, and then I would look at the

includes leading up
to the definition of the type for the two modules. Both

of these things can
sometimes affect the metadata for a type. If these
don'tyield any clues,
then I would use metainfo to dump the metadata for the

two object files,
and look for the differences that way. Often this will

lead you back to the
includes or the command line options.

I hope this helps. Good luck!

--
Daniel Tomko, Visual C++ Team
This posting is provided AS IS with no warranties, and

confers no rights.


Hi Daniel,

No luck still, the two files in question
OrderCollecti on.cpp and OrderEnumerator .cpp have exactly
the same build options. They each include the unmanaged
code through a single header which is included in stdafx.h.
I used metainfo to dump the .obj files and I can't see anydifferences in the type in question
itga::order_c ollection::iter ator, although I am admittedlyinexperienc ed with this and could be missing something.

I had initially thought it must be something along the
lines of what you mentioned with include order causing theproblem however I don't see how this can be the case as
the type is included from one point only.

I've tried creating a simple test case but have been
unable to do so.

Gary.


Would it be possible to try this without precompiled

headers? I'm justthinking of ways to reduce complexity to narrow down the problem.


I've already tried that, I've also tried to create a
separate project with a really simple test case but I
can't get it to fail so somehow the complexity of the real
project is making it break.

Gary.
Nov 16 '05 #7

--------------------
From: "Gary Hughes" <ge*@itga.com.a u>
Sender: "Gary Hughes" <ge*@itga.com.a u>
Subject: Re: managed C++ link error
Date: Wed, 6 Aug 2003 22:25:59 -0700
Message-ID: <09************ *************** *@phx.gbl>

Furthermore if I simply put all the code from
OrderEnumerato r.[h|cpp] into OrderCollection .cpp it
compiles and links without a problem.
-----Original Message-----
Thanks for the clues Brian but no joy. I have stripped
things down so that I have four files.

OrderEnumerat or.h
OrderEnumerat or.cpp
OrderCollecti on.h
OrderCollecti on.cpp

These files are not included in any other project files.
Adding #include "OrderEnumerato r.h" to

OrderCollectio n.cpp
causes the error in question. I don't actually use
anything from OrderEnumerator .h I just include the file.
There are no #using statements in these files. I include
the definitions of the itga:: stuff via stdafx.h, I have
tried including them directly in both the header and cpp
files in question as well.
Furthermore if I comment out the use of
itga::order_c ollection::iter ator then the problem goes
away. Everything compiles fine and I use the
itga::order_c ollection::iter ator elsewhere (in a plain

cpp
library and a COM wrapper library) with no problems both
with VC++ and G++ on solaris.

All the unerlying cpp files have include guards and the
managed header files all have #pragma once.

It appears VC++ is generating some kind of symbol
information and getting it wrong, maybe involving forward
declaration s?

btw, I'm using visual studio 2003.

Does anyone have any clues?
-----Original Message-----
I've had this before and was never able to narrow down

the exact cause, but
is seemed to have to do with the order of #using<>

statements (esp. when
you're including header files that also have #using<>

statements) . Make
sure you're not #using anything twice if you don't need

to or at all if you
don't need it.

Brian

"Gary Hughes" <ge*@itga.com.a u> wrote in message
news:08***** *************** ********@phx.gb l...
I'm getting the following error when attempting tolink
a
managed C++ dll. I can't find any reference to these
errors with google. Can anyone help? I've included the
class definition causing the errors below.

Everything compiles fine and all the types are

defined,
it
appears that the template type
itga::order_col lection::iterat or is causing the

trouble.
Gary.

Compiling...
OrderEnumerator .cpp
Linking...
Creating library z:\bin\ITGAdotn etd.lib and object
z:\bin\ITGAdotn etd.exp
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131187) : Inconsistent method declarations in
duplicated types (types: OrderEnumerator ;

methods: .ctor):
(0x06000001).
OrderEnumerator .obj : error LNK2022: metadata operation
failed (80131188) : Inconsistent field declarations in
duplicated types (types: OrderEnumerator ; fields:
m_current): (0x04000013).
LINK : fatal error LNK1215: metadata operation failed
(80131130) :

Build log was saved
at "file://z:\src\desk\cli ent\dotnet\Debu g\BuildLog.htm" ITGAdotnet - 3 error(s), 0 warning(s)

-------------------------------------------------------

-
-

public __gc class OrderEnumerator : public
System::Collect ions::IEnumerat or
{
public:

OrderEnumerator (const itga::order_col lection_ptr&
collection,
const
itga::order_col lection::iterat or& position);

~OrderEnumerato r();

__property System::Object* get_Current();
bool MoveNext();
void Reset();

private:

itga::order_col lection_ptr* m_orders;
itga::order_col lection::iterat or* m_current;

};



.

.


Is there any way you could send us a small, self contained repro for this.
I've been playing with it a little, and haven't had any luck. I'm curious
enough about this, but really need to play with it and debug it.

If you have such a repro case, please send it directly to me. Just remove
the "online." from my email address.

--
Daniel Tomko, Visual C++ Team
This posting is provided AS IS with no warranties, and confers no rights.

Nov 16 '05 #8
Hi,
I am getting a strange LNK Error 1215 saying

fatal error LNK1215: metadata operation failed (8013110E) : Database file is corrupt and may not be usable.

when I am trying to declare any function in my entire project .. sometimes I reset some events it works fine ... It even happened when I tried to declare variables and used .. When I used the same code in the page load event it worked .. Dont know what is happening ? Pls help me ........ This is a real showstopper for me as I am almost on the delivery stage ..... Please please help me ...

Thanks in advance
Samarpan
From http://developmentnow.com/g/42_2003_...link-error.htm

Posted via DevelopmentNow. com Groups
http://www.developmentnow.com
Nov 17 '05 #9
I think I can solve your problem, same thing happened to me...

Let me guess. Your project started out under one version of the compiler
(say, 2002), and you loaded it up into another one (say, 2003), and it
converted it for you. Well, in my case, this conversion was not perfect, and
2 weeks later I also got random error 1215 errors. The compiling errors you
get will be random and not make sense (e.g., you add a line of code and
something totally unrelated that use to work stops working).

Solution? Create a BRAND NEW project under the new compiler (in the example
above, 2003) of the same type, copy your source over, and it should work
now.

This might also happen converting to 2005, but my experience was conversion
from 2002 to 2003. The weird part is it all worked great until 2 weeks
later, so that really made it tough to figure out what went wrong! The point
being that you might have converted your project a long time ago and this
still could be the cause.

By the way, if you look down lower in this newsgroup, around October 19th at
2:16PM, you'll see a thread I started when this happened to me called
"LINKER ERROR 1215"...

Let me know if that was your problem too... : )

[==P==]

"Samarpan" <sa*********@re diffmail.com> wrote in message
news:90******** *************** ***********@msn ews.microsoft.c om...
Hi,
I am getting a strange LNK Error 1215 saying

fatal error LNK1215: metadata operation failed (8013110E) : Database file
is corrupt and may not be usable.

when I am trying to declare any function in my entire project .. sometimes
I reset some events it works fine ... It even happened when I tried to
declare variables and used .. When I used the same code in the page load
event it worked .. Dont know what is happening ? Pls help me ........ This
is a real showstopper for me as I am almost on the delivery stage .....
Please please help me ...

Thanks in advance
Samarpan
From
http://developmentnow.com/g/42_2003_...link-error.htm

Posted via DevelopmentNow. com Groups
http://www.developmentnow.com

Nov 17 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
7569
by: Jacob Cohen | last post by:
Under VC7.1, I am trying to wrap a native-C++ DLL that contains C++ objects in a Managed-C++ class library for use in a C# project. I created and compiled the native DLL under VC7.1 as a Win32 DLL C++ (unmanaged) project. I found the decorated names of the symbols I wanted to export and created a .def file, so that it generated an import library. I took this import library and had my Managed-C++ class library link against it. The...
4
11335
by: Aaron Queenan | last post by:
When I build a C++ library to .NET using the managed C++ compiler, I get the following error message: Linking... LINK : error LNK2020: unresolved token (0A000005) _CrtDbgReport LINK : error LNK2020: unresolved token (0A000007) memset LINK : error LNK2020: unresolved token (0A000008) free LINK : error LNK2020: unresolved token (0A00000A) atexit LINK : error LNK2020: unresolved token (0A000028) wcscpy LINK : error LNK2020: unresolved...
4
5831
by: Scott | last post by:
We are trying to build a managed C++ static link library containing several classes which are members of a namespace. The build of this library seems to work OK. No errors. We then try to use this library in a managed C++ application and get the following linker error. LINK : error LNK2020: unresolved token (06000002) TestLib.TestClass::GetTemp LINK : fatal error LNK1120: 1 unresolved externals A verbose build listing shows that the...
5
3060
by: Gerhard Menzl | last post by:
When creating a Managed C++ DLL using the Visual Studio 7.1 Solution Explorer (by selecting Add New Project and then either choosing Class Library (.NET) or Windows Control Library (.NET)), the IDE sets the /MT(d) compiler switch (statically linked multithreaded C runtime library) by default. This is fine with me, as it relieves me from having to redistribute MSVCR71(D).DLL with my application. However, as soon as a single runtime...
1
3718
by: Maxwell | last post by:
Hello, I having having oodles of trouble using the std lib in my MC++ (VS.NET 2003) Class library. I figured out a simple sample to reproduce the errors I am having. Create a MC++ (VS.NET 2003) class library and type in the following code below: #include <map> #include<string>
3
1867
by: Ulrich Sprick | last post by:
Hi, I have to write a managed C++ wrapper around an existing, unmanaged C++ class. First tests suggested it should work, but after adding the complete unmanaged code, I get the following linker errors: LINK : error LNK2020: unresolved token (0A00001A) _CxxThrowException LINK : error LNK2020: unresolved token (0A00001C) exception.__ctor LINK : error LNK2020: unresolved token (0A00001E) exception.__dtor LINK : error LNK2020: unresolved...
3
1963
by: Andreas | last post by:
Hi! I'm currently developing a DLL that makes use of C++ and .net (mixed) using Visual Studio 2003. Now, as I wanted to move to the new Visual Studio 2005, I converted this project into the new format (compiling with /clr:OldSyntax): everything works and compiles fine. Unfortunately, I cannot link to the newly created DLL from any other application/DLL: LNK2019: unresolved external symbol. I've checked the DLL
3
2848
by: Pixel.to.life | last post by:
Hi, Gurus, I recently attempted to build a .Net forms application, that links with old style unmanaged C++ static libs. Of course I had to recompile the static lib projects to link properly with the managed application. My questions are two fold: The managed project uses /clr and /MDd (in debug) options. The
0
1217
by: =?Utf-8?B?SmF5?= | last post by:
Hello, I'm running into a linking problem when trying to build a dll like so... step1: native C++ library & managed c++ = managed c++ dll (this one builds fine) step 2: managed c++ dll (the one that built ok) & managed c++ = managed c++ dll step 2 results in this link error...
0
8423
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
8067
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8281
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
6740
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
5885
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
3911
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
3956
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2437
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
1
1530
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.