944,025 Members | Top Members by Rank

Ad:
  • C++ Discussion Thread
  • Unsolved
  • Views: 12949
  • C++ RSS
Jul 9th, 2005
0

Having trouble calling certain functions

Expand Post »
Im making this program. But im having trouble calling certain functions. Im having trouble calling ShellExecute, RemoveDirectory, CreateDirectory, FindFirstFile, & DeleteFile.

I get the following errors when trying to compile...

C++ Syntax (Toggle Plain Text)
  1. c:\documents and settings\george\my documents\visual studio 2005\projects\mmpc v1.0\mmpc v1.0\prog.cpp(42) : error C2664: 'ShellExecuteW' : cannot convert parameter 2 from 'const char [5]' to 'LPCWSTR'
  2. Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
  3. c:\documents and settings\george\my documents\visual studio 2005\projects\mmpc v1.0\mmpc v1.0\prog.cpp(116) : error C2664: 'ShellExecuteW' : cannot convert parameter 2 from 'const char [5]' to 'LPCWSTR'
  4. Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
  5. c:\documents and settings\george\my documents\visual studio 2005\projects\mmpc v1.0\mmpc v1.0\prog.cpp(168) : error C2664: 'CreateDirectoryW' : cannot convert parameter 1 from 'const char [8]' to 'LPCWSTR'
  6. Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
  7. c:\documents and settings\george\my documents\visual studio 2005\projects\mmpc v1.0\mmpc v1.0\prog.cpp(214) : error C2664: 'FindFirstFileW' : cannot convert parameter 1 from 'const char [13]' to 'LPCWSTR'
  8. Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
  9. c:\documents and settings\george\my documents\visual studio 2005\projects\mmpc v1.0\mmpc v1.0\prog.cpp(226) : error C2664: 'DeleteFileW' : cannot convert parameter 1 from 'const char [14]' to 'LPCWSTR'
  10. Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

I never had this problen when working with DevC++. But ever since I moved to Microsoft Visual C++ 2005, I cant compile this program. Im calling the functions correctly. For example with the ShellExecute function

C++ Syntax (Toggle Plain Text)
  1. ShellExecute(0, "open", "MMPC.html", 0, 0, SW_SHOWNORMAL)

But it still gives me an error.

Please Help! Thanks in advance.
Similar Threads
Reputation Points: 10
Solved Threads: 0
Newbie Poster
3nCrypti0n is offline Offline
6 posts
since Jul 2005
Jul 9th, 2005
0

Re: Having trouble calling certain functions

C++ Syntax (Toggle Plain Text)
  1. ShellExecute(0, "open", TEXT("MMPC.html"), 0, 0, SW_SHOWNORMAL)
The TEXT macro either does nothing to the string literal, or prepends L to make it a wide string literal. The errors suggest, that in your setup, a wide string literal is expected. Now, you could just explicitly make the literal wide:
C++ Syntax (Toggle Plain Text)
  1. ShellExecute(0, "open", L"MMPC.html", 0, 0, SW_SHOWNORMAL)
But then it would fail for a setup where a narrow string literal is expected.
Administrator
Reputation Points: 6442
Solved Threads: 1393
Bad Cop
Narue is offline Offline
11,807 posts
since Sep 2004
Jul 9th, 2005
0

Re: Having trouble calling certain functions

I already tried both methods and I still get the same error.
Reputation Points: 10
Solved Threads: 0
Newbie Poster
3nCrypti0n is offline Offline
6 posts
since Jul 2005
Jul 9th, 2005
0

Re: Having trouble calling certain functions

It sounds like a configuration issue with Visual Studio 2005. Play around with any settings that suggest wchar_t or Unicode.
Administrator
Reputation Points: 6442
Solved Threads: 1393
Bad Cop
Narue is offline Offline
11,807 posts
since Sep 2004
Dec 4th, 2007
0

Re: Having trouble calling certain functions

C++ Syntax (Toggle Plain Text)
  1. #include <windows.h>
  2.  
  3. int main()
  4. {
  5.  
  6. ....
  7. }
You need to link against the shell32.lib when compiling.

Not familiar with the IDE, but on the command line

c:\> cl /EHs prog.cpp /link shell32.lib
Reputation Points: 49
Solved Threads: 44
Posting Pro in Training
hkdani is offline Offline
426 posts
since Nov 2007
Dec 4th, 2007
0

Re: Having trouble calling certain functions

First off, your response has nothing to do with the OP's problem.

Secondly, don't resurrect two year old threads unless you have something amazingly earthshaking to contribute.
Featured Poster
Reputation Points: 1140
Solved Threads: 229
Postaholic
Duoas is offline Offline
2,039 posts
since Oct 2007
Dec 4th, 2007
0

Re: Having trouble calling certain functions

Click to Expand / Collapse  Quote originally posted by Duoas ...
First off, your response has nothing to do with the OP's problem.
Had the same problem. Same messages. That was my solution offered up on the friendly, Microsoft Managed newsgroup. It's an answer from my humble experience.

Quote ...
Secondly, don't resurrect two year old threads unless you have something amazingly earthshaking to contribute.
If it works, who needs it be earthshaking?
I'm a newb here. And don't exactly appreciate the 'cold' welcome on my first post.

But I do appreciate the fine article on the site about the fellow who enjoyed the forum because of the friendliness of the people on the forum.

Hank
Reputation Points: 49
Solved Threads: 44
Posting Pro in Training
hkdani is offline Offline
426 posts
since Nov 2007
Dec 4th, 2007
0

Re: Having trouble calling certain functions

I'm sorry you took my response that way, but you are the one being arrogantly rude.

Since you are new to the forum you might want to take some time to read the Forum Announcements.

Those of us who like to take the time to help people here don't like it when some newbie shows up and in his second post starts doing things universally considered obnoxious. Please take the kind hint.

Had Narue or WaltP or Salem or someone else like them (who are all very knowledgeable and very helpful) responded, you might have gotten a much less friendly response --as they have dealt with a lot more snot than I have, and have a much lower tolerance for it.

If you plan to behave and be nice, welcome. Remember, words online are easily misinterpreted whereas in direct conversation they wouldn't be. Don't assume the worst.

Also, don't assume the OP and Narue are blindingly stupid. They were both well beyond including <windows.h> and linking errors. The question was answered.

I give you this by way of welcome and advice. Take it as you will.
Featured Poster
Reputation Points: 1140
Solved Threads: 229
Postaholic
Duoas is offline Offline
2,039 posts
since Oct 2007
Dec 4th, 2007
0

Re: Having trouble calling certain functions

Quote ...
I give you this by way of welcome and advice. Take it as you will.
Thanks, for the welcome.

I feel much better now.
Reputation Points: 49
Solved Threads: 44
Posting Pro in Training
hkdani is offline Offline
426 posts
since Nov 2007
Dec 4th, 2007
0

Re: Having trouble calling certain functions

I've had my bad moments too. I'm fairly new myself, and on my second or third post I managed to offend several people who disagreed with me about something...

Alas.
Featured Poster
Reputation Points: 1140
Solved Threads: 229
Postaholic
Duoas is offline Offline
2,039 posts
since Oct 2007

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in C++ Forum Timeline: Multiple definitions of pointers to structs
Next Thread in C++ Forum Timeline: Magic Square - Error Message





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC