|
I have a function that will be called for all sorts of windows (it gets the HWND), and I want it to process only static icons, but not other types of controls like buttons, combos, etc. There is sufficient light for those who desire to see, and there is sufficient darkness for those of a contrary disposition.
Blaise Pascal
|
|
|
|
|
|
can i convert unicode string to multibyte?
|
|
|
|
|
I like to use WideCharToMultiByte[^] Величие не Бога может быть недооценена.
|
|
|
|
|
or
WideCharToMultiByte[^] ... txtspeak is the realm of 9 year old children, not developers. Christian Graus
|
|
|
|
|
|
|
or use like this:
#include "StringA.h"
#include "StringW.h"
CStringW sTestW( L"Test" );
CStringA sTestA( "Test" );
CStringW sConvertW = sTestA;
CStringA sConvertA = sTestW;
</pre>
|
|
|
|
|
I have displayed a bitmap on the screen.Now i want to save it in the harddisk after performing some painting operations on it.How do i achieve this?Please help.
Thanking you in advance,
Ashwath.
|
|
|
|
|
Try it :
CImage::Attach(HBITMAP);
CImage::Save(LPCTSTR);
CImage::Detach(); virtual void BeHappy() = 0;
|
|
|
|
|
Please let me know if we can use CImage code in VS2008.
Thanks,
Ashwath.
|
|
|
|
|
Yes, just include <atlimage.h> virtual void BeHappy() = 0;
|
|
|
|
|
|
Hi all,
I was trying to make self deleting executable. I found a article on code project []
my problem is i am stucked at one place my folder is not getting deleted.
CString templ =
"del \"%s\"\r\n"
"taskkill /im selfdelete.exe\r\n"
"del \"%s\"\r\n"
"rmdir /S /Q \"%s\"\r\n"
"del \"%s\"" ;
CString tempstr;
CString modulename;
LPTSTR pPath = tempstr.GetBufferSetLength(MAX_PATH);
GetTempPath ( MAX_PATH, pPath );
tempstr.ReleaseBuffer();
tempstr = tempstr + tempbatname;
LPTSTR modulenm = modulename.GetBufferSetLength(MAX_PATH);
GetModuleFileName(NULL,modulenm,MAX_PATH) ;
modulename.ReleaseBuffer();
CString str = modulename;
int k = str.Find('\\');
while(k >= 0)
{
str = str.Right(str.GetLength()-k-1);
k = str.Find('\\');
}
CString folder = modulename.Left(modulename.GetLength()-str.GetLength());
CString iniFile = folder;
CString file = "\\selfdeletepath.txt";
iniFile = iniFile + file;
HANDLE hf ;
hf = CreateFile(tempstr, GENERIC_WRITE, 0, NULL,CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL) ;
if (hf != INVALID_HANDLE_VALUE)
{
DWORD len ;
CString bat ;
LPTSTR bBat = bat.GetBufferSetLength(MAX_PATH);
bat = (char*)alloca(strlen(templ) + strlen(modulename) * 2 + strlen(tempstr) + 20) ;
wsprintf(bBat, templ,iniFile, modulename, folder, tempstr) ;
WriteFile(hf, bat, strlen(bat), &len, NULL) ;
CloseHandle(hf) ;
ShellExecute(NULL, "open", tempstr, NULL, NULL, SW_HIDE);
}
}
can anybody please tell me what i am doing wrong.
thanks in advance
|
|
|
|
|
You can try SHFILEOPSTRUCT Structure
|
|
|
|
|
I smell this exe itself to be like a virus
Well i think you are doing something which is weird
ShellExecute itself, check the argument.
Well i am doubted about your logic of deletion.
I believe you can achieve the deletion in XP with a different logic.
Create a remote thread and attach to some other process before exiting your native executable, and then delete from that remote thread.
Just try that Величие не Бога может быть недооценена.
|
|
|
|
|
Dear all,
I have made a DLL using VS - 6. But it does not display any information when i go through by right click on it and goes to property. In case of other Microsoft DLL, that shows many info. So how can I set like author, version info etc.
Thanks to all
|
|
|
|
|
You have to modify you version section of the app resources:
Solution View -> app.rc -> ContextMenu ->
Open With -> Resource Editor -> ContextMenu ->
Add resource -> Version virtual void BeHappy() = 0;
|
|
|
|
|
Thanks for replying
I am not using VS 2003 or 05. I am using VS6. I have added a resource file. I already edit version info. but it does not display when i right click on it
|
|
|
|
|
Hi,
In my VC++ MFC applcaiton,i have different views.And in each view,when i maximize it,i changed the size and position to new thing(Normally it fully get maximixed to screen size).But i dont want tht.So in OnSize() i coded like this.
void CChildFrame::OnSize(UINT nType, int cx, int cy)
{
CMDIChildWnd::OnSize(nType, cx, cy);
int XBorder = GetSystemMetrics(SM_CXMAXIMIZED);
int YBorder = GetSystemMetrics(SM_CYMAXIMIZED);
switch (nType)
{
case SIZE_MAXIMIZED:
SetWindowPos(NULL,0,60,XBorder-45,YBorder-60,SWP_NOZORDER );
break;
}
}
But what happened is?When i maximize the view,its get maximized to above mention size only.But in that blue bar,there si no minimize,maximize,close button.
When i double click in the blue bar,its get to resumed to previous postion with all buttons.
How can i get that?Anu
|
|
|
|
|
Try AfxGetMainWnd()->SetWindowPos(..)
Better - you implement this (OnSize(..) ) reaction
for your MainFrame only virtual void BeHappy() = 0;
|
|
|
|
|
Always my mainframe is in maximized position only.So i want to set this for childframe only. Anu
|
|
|
|
|
Can you get the button by border-resizing after the action ? virtual void BeHappy() = 0;
|
|
|
|
|
All button are getting added to mainframe.At the right side end of meubar,
File Edit View.....(here 3 buttos)
I dont know why the buttons obly get added to Mainframe.Anu
|
|
|
|
|
Can you see the button at the child blue bar after
case SIZE_MAXIMIZED:
SetWindowPos(NULL,0,60,XBorder-45,YBorder-60,SWP_NOZORDER );
break;
when you just resize the child frame at its border ? virtual void BeHappy() = 0;
|
|
|
|