469,280 Members | 2,450 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,280 developers. It's quick & easy.

unresolved external symbol ___security_cookie

I am converting some projects from VS 6.0 to VS .NET 2003 and I get a linker
error
error LNK2001: unresolved external symbol ___security_cookie or

error LNK2001: unresolved external symbol ___security_cookie

Does anybody knows where does this symbol comes from? Is it because I am
using a wrong library or have some bad compiler/linker options?

Thanks for any help

Olivier Lechenne

Logitech Inc.
Nov 16 '05 #1
6 25640
Hello Olivier,

Thanks for posting in the group.

When getting the errors:

error LNK2001: unresolved external symbol ___security_cookie
error LNK2001: unresolved external symbol @__security_check_cookie@4

in Visual Studio .NET, it is likely that another library is being pulled
into the project. Add the /verbose:lib switch to the Linker command line
and do a rebuild all. This will output all of the libraries that are being
searched. If you see any libs that live in folders that are not part of
the Microsoft Visual Studio .NET install folder and you are not sure why
they are there, then that is probably the cause of this problem.

Go to Tools | Options | Projects | VC++ Directories and in the Include
Files and Library Files directories check for additional paths that should
not be there.

Also, the "unresolved external symbol ____security_cookie" problem has also
been seen when building DLLs in Visual Studio .NET with the /GS ("buffer
security check") flag. This problem is lightly discussed in the MSDN:

http://msdn.microsoft.com/library/de...us/vccore/html
/vclrfGSBufferSecurity.asp

The workarounds given are:

* Not use arrays in any functions that call (or end up calling) CRT_INIT,
for example, use _alloca instead.
* Let the CRT initialize normally. Don't specify your own entry point, use
DllMain instead (and don't call CRT_INIT).

Does that answer your question?

Best regards,
Yanhong Huang
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
!From: "Olivier Lechenne" <ol**************@logitech.com>
!Subject: unresolved external symbol ___security_cookie
!Date: Tue, 16 Sep 2003 10:56:04 -0700
!Lines: 20
!X-Priority: 3
!X-MSMail-Priority: Normal
!X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
!X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
!Message-ID: <eZ*************@TK2MSFTNGP12.phx.gbl>
!Newsgroups: microsoft.public.dotnet.languages.vc
!NNTP-Posting-Host: amreg.logitech.com 67.17.144.2
!Path:
cpmsftngxa07.phx.gbl!cpmsftngxa10.phx.gbl!cpmsftng xa06.phx.gbl!TK2MSFTNGP08.
phx.gbl!TK2MSFTNGP12.phx.gbl
!Xref: cpmsftngxa07.phx.gbl microsoft.public.dotnet.languages.vc:28278
!X-Tomcat-NG: microsoft.public.dotnet.languages.vc
!
!I am converting some projects from VS 6.0 to VS .NET 2003 and I get a
linker
!error
!error LNK2001: unresolved external symbol ___security_cookie or
!
!error LNK2001: unresolved external symbol ___security_cookie
!
!Does anybody knows where does this symbol comes from? Is it because I am
!using a wrong library or have some bad compiler/linker options?
!
!
!
!Thanks for any help
!
!
!
!Olivier Lechenne
!
!Logitech Inc.
!
!
!

Nov 16 '05 #2
Thanks for your help.
The /GS flag was the culprit since I am building DLLs and SYS files.

Olivier Lechenne
Logitech Inc.
"Yan-Hong Huang[MSFT]" <yh*****@online.microsoft.com> wrote in message
news:Oz**************@cpmsftngxa06.phx.gbl...
Hello Olivier,

Thanks for posting in the group.

When getting the errors:

error LNK2001: unresolved external symbol ___security_cookie
error LNK2001: unresolved external symbol @__security_check_cookie@4

in Visual Studio .NET, it is likely that another library is being pulled
into the project. Add the /verbose:lib switch to the Linker command line
and do a rebuild all. This will output all of the libraries that are being searched. If you see any libs that live in folders that are not part of
the Microsoft Visual Studio .NET install folder and you are not sure why
they are there, then that is probably the cause of this problem.

Go to Tools | Options | Projects | VC++ Directories and in the Include
Files and Library Files directories check for additional paths that should
not be there.

Also, the "unresolved external symbol ____security_cookie" problem has also been seen when building DLLs in Visual Studio .NET with the /GS ("buffer
security check") flag. This problem is lightly discussed in the MSDN:

http://msdn.microsoft.com/library/de...us/vccore/html /vclrfGSBufferSecurity.asp

The workarounds given are:

* Not use arrays in any functions that call (or end up calling) CRT_INIT,
for example, use _alloca instead.
* Let the CRT initialize normally. Don't specify your own entry point, use DllMain instead (and don't call CRT_INIT).

Does that answer your question?

Best regards,
Yanhong Huang
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "AS IS" with no warranties, and confers no rights.
--------------------
!From: "Olivier Lechenne" <ol**************@logitech.com>
!Subject: unresolved external symbol ___security_cookie
!Date: Tue, 16 Sep 2003 10:56:04 -0700
!Lines: 20
!X-Priority: 3
!X-MSMail-Priority: Normal
!X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
!X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
!Message-ID: <eZ*************@TK2MSFTNGP12.phx.gbl>
!Newsgroups: microsoft.public.dotnet.languages.vc
!NNTP-Posting-Host: amreg.logitech.com 67.17.144.2
!Path:
cpmsftngxa07.phx.gbl!cpmsftngxa10.phx.gbl!cpmsftng xa06.phx.gbl!TK2MSFTNGP08. phx.gbl!TK2MSFTNGP12.phx.gbl
!Xref: cpmsftngxa07.phx.gbl microsoft.public.dotnet.languages.vc:28278
!X-Tomcat-NG: microsoft.public.dotnet.languages.vc
!
!I am converting some projects from VS 6.0 to VS .NET 2003 and I get a
linker
!error
!error LNK2001: unresolved external symbol ___security_cookie or
!
!error LNK2001: unresolved external symbol ___security_cookie
!
!Does anybody knows where does this symbol comes from? Is it because I am
!using a wrong library or have some bad compiler/linker options?
!
!
!
!Thanks for any help
!
!
!
!Olivier Lechenne
!
!Logitech Inc.
!
!
!

Nov 16 '05 #3
Hi Olivier,

I am glad to hear that the problem is resolved.

Thanks for participating the community.

Best regards,
Yanhong Huang
Microsoft Online Partner Support

Get Secure! - www.microsoft.com/security
This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
!From: "Olivier Lechenne" <ol**************@logitech.com>
!References: <eZ*************@TK2MSFTNGP12.phx.gbl>
<Oz**************@cpmsftngxa06.phx.gbl>
!Subject: Re: unresolved external symbol ___security_cookie
!Date: Wed, 17 Sep 2003 14:22:39 -0700
!Lines: 99
!X-Priority: 3
!X-MSMail-Priority: Normal
!X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
!X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
!Message-ID: <O7*************@tk2msftngp13.phx.gbl>
!Newsgroups: microsoft.public.dotnet.languages.vc
!NNTP-Posting-Host: amreg.logitech.com 67.17.144.2
!Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msftn gp13.phx.gbl
!Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.vc:28408
!X-Tomcat-NG: microsoft.public.dotnet.languages.vc
!
!Thanks for your help.
!The /GS flag was the culprit since I am building DLLs and SYS files.
!
!Olivier Lechenne
!Logitech Inc.
!"Yan-Hong Huang[MSFT]" <yh*****@online.microsoft.com> wrote in message
!news:Oz**************@cpmsftngxa06.phx.gbl...
!> Hello Olivier,
!>
!> Thanks for posting in the group.
!>
!> When getting the errors:
!>
!> error LNK2001: unresolved external symbol ___security_cookie
!> error LNK2001: unresolved external symbol @__security_check_cookie@4
!>
!> in Visual Studio .NET, it is likely that another library is being pulled
!> into the project. Add the /verbose:lib switch to the Linker command line
!> and do a rebuild all. This will output all of the libraries that are
!being
!> searched. If you see any libs that live in folders that are not part of
!> the Microsoft Visual Studio .NET install folder and you are not sure why
!> they are there, then that is probably the cause of this problem.
!>
!> Go to Tools | Options | Projects | VC++ Directories and in the Include
!> Files and Library Files directories check for additional paths that
should
!> not be there.
!>
!> Also, the "unresolved external symbol ____security_cookie" problem has
!also
!> been seen when building DLLs in Visual Studio .NET with the /GS ("buffer
!> security check") flag. This problem is lightly discussed in the MSDN:
!>
!>
!http://msdn.microsoft.com/library/de...-us/vccore/htm
l
!> /vclrfGSBufferSecurity.asp
!>
!> The workarounds given are:
!>
!> * Not use arrays in any functions that call (or end up calling)
CRT_INIT,
!> for example, use _alloca instead.
!> * Let the CRT initialize normally. Don't specify your own entry point,
!use
!> DllMain instead (and don't call CRT_INIT).
!>
!> Does that answer your question?
!>
!> Best regards,
!> Yanhong Huang
!> Microsoft Online Partner Support
!>
!> Get Secure! - www.microsoft.com/security
!> This posting is provided "AS IS" with no warranties, and confers no
!rights.
!>
!> --------------------
!> !From: "Olivier Lechenne" <ol**************@logitech.com>
!> !Subject: unresolved external symbol ___security_cookie
!> !Date: Tue, 16 Sep 2003 10:56:04 -0700
!> !Lines: 20
!> !X-Priority: 3
!> !X-MSMail-Priority: Normal
!> !X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
!> !X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
!> !Message-ID: <eZ*************@TK2MSFTNGP12.phx.gbl>
!> !Newsgroups: microsoft.public.dotnet.languages.vc
!> !NNTP-Posting-Host: amreg.logitech.com 67.17.144.2
!> !Path:
!>
!cpmsftngxa07.phx.gbl!cpmsftngxa10.phx.gbl!cpmsftn gxa06.phx.gbl!TK2MSFTNGP08
Nov 16 '05 #4
How do I figure out how to link to the CRT? I thought that by having the /MT
option defined it would link with the corresponding CRT library
automatically.

Any help is welcome.

Olivier
"Brandon Bray [MSFT]" <br******@online.microsoft.com> wrote in message
news:OP**************@TK2MSFTNGP09.phx.gbl...
Olivier Lechenne wrote:
The /GS flag was the culprit since I am building DLLs and SYS files.
Hi Olivier,
The problem was that the C run-time was not being linked into the DLLs,
and so the security routines were not found by the linker. Using /GS is
certainly worthwhile, so if you can figure out how to link in the right

part of the CRT, I'd recommend doing so.

Cheerio!

--
Brandon Bray Visual C++ Compiler
This posting is provided AS IS with no warranties, and confers no rights.

Nov 16 '05 #5
Olivier Lechenne wrote:
How do I figure out how to link to the CRT? I thought that by having the
/MT option defined it would link with the corresponding CRT library
automatically.


Are you using a different libcmt.lib to link with? The ones installed with
the Visual Studio are in the Vc7\lib directory. If the LIB path is
different, you could be linking with a different CRT.

Cheerio!

--
Brandon Bray Visual C++ Compiler
This posting is provided AS IS with no warranties, and confers no rights.
Nov 16 '05 #6
You're probably mixing debug and release. That's a no-no.

"Brandon Bray [MSFT]" <br******@online.microsoft.com> wrote in message
news:Oa**************@TK2MSFTNGP12.phx.gbl...
Olivier Lechenne wrote:
How do I figure out how to link to the CRT? I thought that by having the
/MT option defined it would link with the corresponding CRT library
automatically.


Are you using a different libcmt.lib to link with? The ones installed with
the Visual Studio are in the Vc7\lib directory. If the LIB path is
different, you could be linking with a different CRT.

Cheerio!

--
Brandon Bray Visual C++ Compiler
This posting is provided AS IS with no warranties, and confers no rights.

Nov 16 '05 #7

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

4 posts views Thread by Rodolphe | last post: by
5 posts views Thread by cschettle | last post: by
6 posts views Thread by sadegh | last post: by
reply views Thread by Ryan Gaffuri | last post: by
2 posts views Thread by =?Utf-8?B?YmFzaA==?= | last post: by
1 post views Thread by CARIGAR | last post: by
reply views Thread by zhoujie | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.