stdcall_api & troubles
-
Hello, Being a very noob at c++, i managed to screw it up completely with this little piece of code
#define stdcall_api __stdcall
Now, at the time, i did not know this would hurt me in so many ways that would make the Spanish Inquisition proud, but apparently this had the effect of generating me 272 errors , all located in winnt.h and winbase.h, in all my Visual c++ 2008 projects that i have and need to build. My question is: can i get my projects building again? Thank you very very much, A noob @ c++
-
Hello, Being a very noob at c++, i managed to screw it up completely with this little piece of code
#define stdcall_api __stdcall
Now, at the time, i did not know this would hurt me in so many ways that would make the Spanish Inquisition proud, but apparently this had the effect of generating me 272 errors , all located in winnt.h and winbase.h, in all my Visual c++ 2008 projects that i have and need to build. My question is: can i get my projects building again? Thank you very very much, A noob @ c++
what kind of errors are you getting (show the first ones) ?
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
what kind of errors are you getting (show the first ones) ?
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
Error 1 error C2146: syntax error : missing ';' before identifier 'Int64ShllMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 654 Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 657 Error 3 error C2146: syntax error : missing ';' before identifier 'Int64ShraMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 661 Error 4 error C2371: 'stdcall_api' : redefinition; different basic types c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 661 Error 5 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 664 Error 6 error C2146: syntax error : missing ';' before identifier 'Int64ShrlMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 668 Error 7 error C2086: 'ULONGLONG stdcall_api' : redefinition c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 668 OSPI Error 8 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 671 This kind of errors:D
-
Hello, Being a very noob at c++, i managed to screw it up completely with this little piece of code
#define stdcall_api __stdcall
Now, at the time, i did not know this would hurt me in so many ways that would make the Spanish Inquisition proud, but apparently this had the effect of generating me 272 errors , all located in winnt.h and winbase.h, in all my Visual c++ 2008 projects that i have and need to build. My question is: can i get my projects building again? Thank you very very much, A noob @ c++
thoru wrote:
#define stdcall_api __stdcall
You probably meant the other way around since
__stdcall
is a reserved word, i.e. you want the identifierstdcall_api
to be substituted with__stdcall
during the preprocessing phase, right? The errors you got are from the windows header files wherever__stdcall
is substituted bystdcall_api
which is an unknown identifier. Do it like this:#define __stdcall stdcall_api
Forget that the above ever existed, it's embarrassing.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknownmodified on Wednesday, October 8, 2008 8:56 AM
-
thoru wrote:
#define stdcall_api __stdcall
You probably meant the other way around since
__stdcall
is a reserved word, i.e. you want the identifierstdcall_api
to be substituted with__stdcall
during the preprocessing phase, right? The errors you got are from the windows header files wherever__stdcall
is substituted bystdcall_api
which is an unknown identifier. Do it like this:#define __stdcall stdcall_api
Forget that the above ever existed, it's embarrassing.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknownmodified on Wednesday, October 8, 2008 8:56 AM
-
thoru wrote:
#define stdcall_api __stdcall
You probably meant the other way around since
__stdcall
is a reserved word, i.e. you want the identifierstdcall_api
to be substituted with__stdcall
during the preprocessing phase, right? The errors you got are from the windows header files wherever__stdcall
is substituted bystdcall_api
which is an unknown identifier. Do it like this:#define __stdcall stdcall_api
Forget that the above ever existed, it's embarrassing.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknownmodified on Wednesday, October 8, 2008 8:56 AM
Roger Stoltz wrote:
Do it like this: #define __stdcall stdcall_api
no Roger, you're going to replace every occurence of __stdcall with stdcall_api (which is not defined, so leading to errors). what the OP wants is the opposite, and remember #define works "the opposite" as typedef ;) so he wrote it well ; the error is elsewhere.
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
Error 1 error C2146: syntax error : missing ';' before identifier 'Int64ShllMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 654 Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 657 Error 3 error C2146: syntax error : missing ';' before identifier 'Int64ShraMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 661 Error 4 error C2371: 'stdcall_api' : redefinition; different basic types c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 661 Error 5 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 664 Error 6 error C2146: syntax error : missing ';' before identifier 'Int64ShrlMod32' c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 668 Error 7 error C2086: 'ULONGLONG stdcall_api' : redefinition c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 668 OSPI Error 8 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h 671 This kind of errors:D
just a guess, in what order are you #including your headers, and where do you #define you stdcall_api ?
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
Roger Stoltz wrote:
Do it like this: #define __stdcall stdcall_api
no Roger, you're going to replace every occurence of __stdcall with stdcall_api (which is not defined, so leading to errors). what the OP wants is the opposite, and remember #define works "the opposite" as typedef ;) so he wrote it well ; the error is elsewhere.
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
Roger Stoltz wrote:
Do it like this: #define __stdcall stdcall_api
no Roger, you're going to replace every occurence of __stdcall with stdcall_api (which is not defined, so leading to errors). what the OP wants is the opposite, and remember #define works "the opposite" as typedef ;) so he wrote it well ; the error is elsewhere.
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
:omg: How embarrassing, it's inexcusable and I'm truly sorry. :-\ Just made myself look like a newbie. If I could I would vote my previous reply as "unhelpful".... *Geeee....*
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknown -
Sorry thoru, disregard from my previous post, I must have been delirious when I wrote it.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknown -
Yeah, plus, i do not see why it would affect my other builds or this one, if i take the #define out. I think i have stumbled upon something very strange with this stdcall_api.
hum, also, why are you defining such stdcall_api macro ?
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
:omg: How embarrassing, it's inexcusable and I'm truly sorry. :-\ Just made myself look like a newbie. If I could I would vote my previous reply as "unhelpful".... *Geeee....*
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknown;) Nevermind, I know you're a strong member here. :cool::rose:
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
:omg: How embarrassing, it's inexcusable and I'm truly sorry. :-\ Just made myself look like a newbie. If I could I would vote my previous reply as "unhelpful".... *Geeee....*
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknownRoger, believe me or not, your post actually helped me, so it wasn't a complete loss of a post. First of all, thanks to Roger and toxxct for your posts. So this is my fix: I did a compare in the sdk between v5 and v6 in the include folder and looked at winnt.h Where the stdcall_api was mentioned in v6, i changed it back to v5 which strange enough was __stdcall. I have no clue as to how that was changed in there (i mean __stdcall being replaced bye stdcall_api) but this fixed it. They should have a #ifdef NEWBIE_IN_C {code for restricting access to this super sensitive keywords} #endif. -Thoru, a newbie in C++
-
;) Nevermind, I know you're a strong member here. :cool::rose:
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
Thanks tox'. :rose:
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknown -
Roger, believe me or not, your post actually helped me, so it wasn't a complete loss of a post. First of all, thanks to Roger and toxxct for your posts. So this is my fix: I did a compare in the sdk between v5 and v6 in the include folder and looked at winnt.h Where the stdcall_api was mentioned in v6, i changed it back to v5 which strange enough was __stdcall. I have no clue as to how that was changed in there (i mean __stdcall being replaced bye stdcall_api) but this fixed it. They should have a #ifdef NEWBIE_IN_C {code for restricting access to this super sensitive keywords} #endif. -Thoru, a newbie in C++
thoru wrote:
Roger, believe me or not, your post actually helped me, so it wasn't a complete loss of a post.
I'm glad that it helped you in some strange way. However, right now I feel like I'm standing in the town square with my pants down... :-O Like Al Pacino says in the movie "Donnie Brasco": forget about it.....
"It's supposed to be hard, otherwise anybody could do it!" - selfquote
"High speed never compensates for wrong direction!" - unknown