I am getting an error like
'strcpy' : cannot convert parameter 1 from 'TCHAR ' to 'char *'
use _tcscpy instead
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
There is a boatload of CRT string manipulation functions. You can be kind enough not to add a query here for every single function that is referred to in your code.
Just get to the documentation page[^] and click on the function that you're using. Then, choose the generic text mapping routine version (tchar.h routine) of that function. As an example, choose _tcsdec instead of _strdec. You might want to read about Using Generic Text-Mappings[^].
It is a crappy thing, but it's life -^Carlo Pallini
You are looking for someone to give you an 'instant fix' (not to mention you post a query for every error of the same type) without even understanding your problem properly, which is essentially not going to help you in the longer run. I am wanting you to understand the basics so that you will be able to solve the problem yourself.
Look, people here are willing to help but if you don't want to put any effort yourself, then you can forget about it. The article I linked to you contains a lot of information about unicode and non-unicode builds. Once you have read the article, you will understand that to support both unicode and non-unicode builds, you will need to use TCHAR (and not char) and all the unicode-independant string manipulation routines (instead of strcpy, strlen, strtok, ...). For ALL of those functions, if you look in the MSDN documentation, you have a table that compares the different versions. You always have to use the "TCHAR.h routine" version.