Re: identifier not found error, undeclared identifier
* aarthi28@gmail.com:
Hi,
Hi.
PLEASE DON'T CROSSPOST TO ENVIRONMENT-SPECIFIC GROUPS AND CLC++.
Follow-ups set for pure C++ responses.
I have this code that I am trying to compile, but I am getting the
following errors
'CoInitializeSecurity': identifier not found
This means you haven't declared that identifier, most probably you've
forgotten to include some header.
'EOAC_NONE' : undeclared identifier
Ditto.
I have pasted the code below
// Using_WMI1.cpp : Defines the entry point for the console
application.
//
#include "stdafx.h"
#include "wbemidl.h"
#include <comdef.h>
None of these are standard C++ headers. Most probably the intention is
that "stdafx.h" should drag in the headers you're missing. Update that
file to include the relevant headers (it's also a good idea to turn off
precompiled header support for your project -- the vendor-specific
variant you're using confuses novices endlessly, allows incorrect code
to compile, and sometimes means correct code doesn't compile).
#ifdef _DEBUG
#define new DEBUG_NEW
Redefining a C++ keyword means your code has undefined behavior if it
uses anything from the standard library. And since it apparently uses
'new'...
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
void OnButtonGetinfo()
{
// TODO: Add your control notification handler code here
CoInitialize(NULL);
Although environment-specific, this is a library initialization call.
It's generally unsafe to initialize libraries later than the start of
'main'. In particular, experience with this library is that late
initialization is extremely unsafe -- don't do it.
[snip]
int _tmain(int argc, _TCHAR* argv[])
This is not a standard C++ startup function.
Moreover it's braindead even for this program's intended environment.
Use standard 'main'.
Any help I can get will be appreciated. Thanks
You're welcome.
Cheers,
- Alf
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?