• Advertisement
Sign in to follow this  

Having a problem with an error. VS2005

This topic is 4289 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hiyas all. Recently ive been wanting to play with the SDK of a program called the RPG Toolkit. Too see what I can do with it. But it seams it was created in VS 6.0 and I have 2005(8.0). So when I try to compile it I get plenty of warrnings and a error. Could anyone please help me get rid of them so it will work properly in 2005? Here is the location of the Plugin SDK as its called. Toolkit Plugin Also here are the warrnings and errors.
c:\documents and settings\jesse\desktop\rpgcode\pluginman\libraries\sdk\tkpluginbase.cpp(90) : warning C4018: '>' : signed/unsigned mismatch
c:\documents and settings\jesse\desktop\rpgcode\pluginman\libraries\sdk\tkpluginbase.cpp(94) : warning C4996: 'strcpy' was declared deprecated
        c:\program files\microsoft visual studio 8\vc\include\string.h(73) : see declaration of 'strcpy'
        Message: 'This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
tkpluglocalfns.cpp
c:\documents and settings\jesse\desktop\rpgcode\pluginman\libraries\sdk\tkpluglocalfns.cpp(79) : warning C4996: 'strcpy' was declared deprecated
        c:\program files\microsoft visual studio 8\vc\include\string.h(73) : see declaration of 'strcpy'
        Message: 'This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
c:\documents and settings\jesse\desktop\rpgcode\pluginman\libraries\sdk\tkpluglocalfns.cpp(115) : error C2440: 'return' : cannot convert from 'unsigned short *' to 'BSTR'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast



And a bit of code that seams to causing the error.
///////////////////////////////////////////////////////
//
// Function: CharToBSTR
//
// Parameters: x- a char* string
//
// Action: converts a ascii string to a BSTR string
//
// Returns: BSTR- the converted string.
//
///////////////////////////////////////////////////////
BSTR CharToBSTR(char* x)
{
	int len = strlen(x);
	unsigned short* bstrRet = new unsigned short[len+1];
	for (int i=0; i<len; i++)
	{
		char part = x;
		bstrRet = part;
		bstrRet[i+1] = '\0';
	}
	if ( len == 0 ) 
	{
		bstrRet[0] = 0;
	}
	return bstrRet;
}



Share this post


Link to post
Share on other sites
Advertisement
You should be able to make the compiler ignore the warnings like this:

Project -> <myprog> Properties -> Configuration properties -> C/C++ -> Command line -> Additional options.

Add to the list:
/D _CRT_SECURE_NO_DEPRECATE

[Edited by - pulpfist on May 29, 2006 11:47:32 PM]

Share this post


Link to post
Share on other sites
There is a couple of things you can try:
First of all go to
Project -> <myprog> properties -> Configuration properties -> General.
And set Character set = Not Set

Share this post


Link to post
Share on other sites
Thanks for the help so far. The /D _CRT_SECURE_NO_DEPRECATE sollution worked. But I still get a error and one warrning. Though the warning doesn't seam to be horrible.

Share this post


Link to post
Share on other sites
Okeverything compiles fine now. But the dll file it creates doesn't show any visible output once I add a few calls too CBDebugMessage(). I still get warrnings so something tells me that might be the problem. Once there gone things might work right.

I still have the Signed/Unsigned mismatch one plus these new ones.


tkpluglocalfns.cpp(174) : warning C4996: 'itoa' was declared deprecated

stdlib.h(820) : see declaration of 'itoa'
Message: 'The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _itoa. See online help for details.'

.\tkplugin.def(4) : warning LNK4017: DESCRIPTION statement not supported for the target platform; ignored

tkplugin.exp : warning LNK4070: /OUT:tk3fight.dll directive in .EXP differs from output filename '.\Debug/tkplugin.dll'; ignoring directive


What should I do to fix these? And will it even fix the problem of the plugin not seamingly working right in rpg toolkit?

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement