|
Check out the IShellLink interface.
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
thanks, but my compiler is vc6.0, can it use the interface
|
|
|
|
|
Certainly.
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
As David said, you can use the IShellLink::GetPath .
|
|
|
|
|
can you give me some example code of vc6.0, thank you very much
|
|
|
|
|
thank you a lot, i have got it!
|
|
|
|
|
As i was created multiple threads.When iam start thread, it calls a document class to store some information using structure and then update the structure values to view by using update all views fuction..values also updated to view while using release mode but if iam using debug mode to run application,,if the debug pointer moves to update all views function--.error message "debug assertion failed" occurs in wincrore.cpp(with line no:888)..what's the solution for these types of error causing?
mail:t.r.yuva@gmail.com
|
|
|
|
|
ram84 wrote: "debug assertion failed" occurs in wincrore.cpp(with line no:888)
Open that file and check which assertion fails (hint: line no. 888).
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
Rajesh R Subramanian wrote: ram84 wrote:
"debug assertion failed" occurs in wincrore.cpp(with line no:888)
Open that file and check which assertion fails (hint: line no. 888).
Ah, your marvellous hints...
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Me? marvelous hint?
Ah, these monkeys! They attend to it when I'm away.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
i want to get the pixel values of character drawn inside rectangle present on dialog which is created by following code in OnPaint() function
CPaintDC dc(this);
CPoint pt;
//for showing image
dc.BitBlt(offsetx,offsety,m_size.cx,m_size.cy,
&m_dcMem, sourcex, sourcey,SRCCOPY);
erase=false;
//Code for showing rectangle
dc.Rectangle(100,200,200,300);
RectBackground.SetRect(100,200,200,300);
CBrush brush;
brush.CreateSolidBrush(RGB(255,255,255));
dc.FillRect(RectBackground,&brush);
dc.DrawFocusRect(&RectBackground);
anyone can tell me how i can get pixel values of character drawn inside rectangle so that i can recognise what is drwn inside rectangle on button click event.
|
|
|
|
|
I need to compare two XMLs,
1st XML returned by a program, the 2nd XML contain the XML path and values.
the 1st XML wight/will be larger than the 2nd and it is ok.
the program expect to go over the 2nd XML and make sure that the path exists in the 1st and also the attribute exists.
the program expected to throw/write error massages in case of XML path ot attribute/valueus do not appear in the 1st XML. That program expected to run on Unix.
Thanks,
Josepe
|
|
|
|
|
Hi All
In windows TaskManager Application show currently open application name.can i check windows TaskManager?Plz help me
|
|
|
|
|
MsmVc wrote: can i check windows TaskManager?
As best I can tell, you are wanting a list of running applications like Task Manager shows. Is that correct?
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
how can i do it?Plz help me
|
|
|
|
|
Have you tried EnumProcesses() or the Process32First() /Process32Next() pair?
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
Hi guys I have a simple question for your.
Let say that I have CreateFile function that takes as a first argument a LPCTSTR pointer.
Also there is a declared buffer as char* szBuffer . I' ve seen a lot of guys using a typecasting
for calling CreateFile like this CreateFile((LPCTSTR)szBuffer,....). I simply use
CreateFile(szBuffer,....) with no problems
Is that typecasting needed, given that both char* and LPCTSTR are pointers. Are there any true gains by
using typecasting?
Thanx
|
|
|
|
|
FotisSs wrote: I' ve seen a lot of guys using a typecasting
Well, they were wrong... LPCTSTR is an array of TCHAR and the definition of a TCHAR depends if UNICODE is enabled or not. So, the code will work fine if UNICODE is not defined but it will not work if UNICODE is defined. In which case, if you have the typecast, it will simply be plain wrong (the string will be corrupted), but if you don't have the cast, then it will not compile (which is way better, because at least you don't have a nasty bug in your code). Typecasts should be avoided at maximum: using them too much means probably that you don't understand what you are doing.
I suggest that you read this article[^], it explains a lot about character encoding (and about TCHAR).
|
|
|
|
|
Usage of things like char is what scaring me more than the typecasts. One should ideally use TCHAR instead, which is neutral to builds (and is defined as char in an ANSI build and as a wchar_t in an Unicode build).
If an API expects an LPCTSTR , that means that it has both an ANSI and an Unicode implementation and the appropriate version will be called based on the build (for Unicode build, CreateFileW and for an ANSI build, CreateFileA will be called).
There is no excuse to use char unless you're *sure* that you are always going to do an ANSI only build. Even then, I won't recommend it.
Typecasting a char* to an LPCTSTR in an Unicode build is an invitation to disaster, because the wide version of the API will be called, which is going to expect a wchar_t* .
There is no excuse to write such crap code.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
ok my fault I always tend to use specifically CreateFileA so it is LPSTR!
And the question remains is typecasting needed?
|
|
|
|
|
FotisSs wrote: And the question remains is typecasting needed?
I haven't answered it?
Take CreateFile for example, which expects an LPCTSTR
If you have a TCHAR* , no typecasting is needed, or typecasting has no effect.
If you have a char* , passing that to this function by casting it to an LPCTSTR will cause trouble in Unicode Build.
If you have a wchar_t* , passing that to this function by casting it to an LPCTSTR will cause trouble in ANSI build.
If you use TCHAR* , no casting will be needed at all, and the correct data type will be automatically used.
I will also highly recommend that you read the article that the other poster gave you a link for! It's well worth the time you'll spend on it.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
FotisSs wrote: Is that typecasting needed, given that both char* and LPCTSTR are pointers.
Unicode issues aside, no, and not because they are both pointers. It's because the function's signature will treat the pointer argument as a const and not change it.
On the other hand, if you had a function that was expecting a LPTSTR and you were passing it a const pointer, then casting would be an issue.
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
I have a dll whose name conflicts with that of a system dll.
Mydll was created by me and although I have the code with me I do have other projects that link to this dll.
Now I need to modify the code in the exe that links to this dll.
However I can't run the exe since now the application tries to link to the dll and connects to the system dll instead of mydll.
The dll is in a specific folder and not the application's home directory; along with the other dlls that are rerferred to in the application.
How do I specify to the exe to link to mydll instead of the system dll.
The Build goes fine but the during Run; it stops at the startup since it can't find teh functions in the system dll.
I am using the Visual Studio 6.0 IDE.
|
|
|
|
|
Can't you just rename the DLL so that it doesn't conflict with a system DLL?! That would be the ideal solution.
Alternatively, you could explicitly load your DLL (lookup LoadLibrary[^] and GetProcAddress[^] ) instead of using the .lib file.
But I strongly suggest that you do not have DLL names that conflict with the system DLLs.
“Follow your bliss.” – Joseph Campbell
|
|
|
|
|
Yes I agree that renaming the dll to something other than the system dll will be the ideal solution and that's what I have implemented as a workaround but that is not something that is recommended since the rest of the applications in my project do link to the same dll.
So changing the name of the dll won't quite be the accepted solution across the teams.
Is there any waay to override the system directory path for linking to the dlls.
Like in my case all the dlls are placed in a particular folder on the drive other than the system directory.
If that could be done the issue should be resolved.
|
|
|
|