|
Nish [BusterBoy] wrote:
This must be a typo, right?
Else it will endlessly call itself!
Well spotted Nish - you're dead right.
Presumably the call would be to CView::OnCmdMsg() , which would route the message through CMyView 's message map, and - if it wasn't handled there - on to the corresponding document.
Andy Metcalfe - Sonardyne International Ltd
Trouble with resource IDs? Try the Resource ID Organiser Add-In for Visual C++
"I would be careful in separating your wierdness, a good quirky weirdness, from the disturbed wierdness of people who take pleasure from PVC sheep with fruit repositories."
- Paul Watson
|
|
|
|
|
Steen Krogsgaard wrote:
To claim that computer games influence children is rediculous
'ridiculous' is spelt wrong. I do not know whether this is as intended. If not, you might want to correct it.
It's seven o'clock
On the dot
I'm in my drop top
Cruisin' the streets - Oh yeah
I got a real pretty, pretty little thing that's waiting for me
|
|
|
|
|
Nish [BusterBoy] wrote:
'ridiculous' is spelt wrong. I do not know whether this is as intended. If not, you might want to correct it.
Jesus Nish...I thought you lived in India...not to say indians can't speak English or anything, but you seem to know English really really well...like maybe you don't live in India...maybe you really do live in Canada somewhere...and your just hiding....
Just jokes...India was part of the British Empire for some time wasn't it...? Kinda like Hong Kong...Canada, Aussie you name it...God damn the queen...nevermind bless her...so greedy!!!(spelling)
Ciao!
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
HockeyDude wrote:
Jesus Nish...I thought you lived in India...
I've had a Jesuit education [which explains why my english is sorta good]; and I kinda love the english language a little more than the average Indian does I guess. Anyway in general educated Indians do speak the language pretty well, though the pronounciation might be quite awkward for foreigners to follow
Nish
It's seven o'clock
On the dot
I'm in my drop top
Cruisin' the streets - Oh yeah
I got a real pretty, pretty little thing that's waiting for me
|
|
|
|
|
Oops! When is Chris going to put a spell checker on CP (just kidding). Thanks Nish.
Cheers
Steen.
"To claim that computer games influence children is ridiculous. If Pacman had influenced children born in the 80'ies we would see a lot of youngsters running around in dark rooms eating pills while listening to monotonous music"
|
|
|
|
|
Hi All,
I try to install a service with specified account as following:
where "testuser" is a valid account (with no password)
in my NT workstation
CreateService() always return error ERROR_INVALID_SERVICE_ACCOUNT
"The account name is invalid or does not exist."
When I change lpszAccount to "HELLO\\testuser" where "HELLO" is my
machine name, error code ERROR_INVALID_PARAMETER will return
"The parameter is incorrect."
LPCTSTR lpszAccount = "testuser"; // "HELLO\\testuser"
LPCTSTR lpszPasswd = "";
SC_HANDLE schService = CreateService(
schSCManager,
"MyService",
"MyService",
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS,
SERVICE_AUTO_START,
SERVICE_ERROR_NORMAL,
"d:\\myservice\\myservice.exe",
NULL,
NULL,
NULL,
lpszAccount,
lpszPasswd);
What's wrong with the above code? Please help me out on this.
Thank you very much in advance!
Regards,
Chris Wang
email: hewang@hotmail.com
|
|
|
|
|
Chris Wang wrote:
LPCTSTR lpszAccount = "testuser";
Th username is specified wrong. It should be specified as domain-name\username or .\username to use the default domain.
Try using this instead
LPCTSTR lpsqAccount =".\testuser";
You might also want to read my article on services.
http://www.codeproject.com/system/serviceskeleton.asp
Thanks
Nish
My most recent CP article :-
A newbie's elementary guide to spawning processes
www.busterboy.org
|
|
|
|
|
Thanks for your message. But if lpszAccount is specified as ".\testuser", there is still invalid account error message. Backslash("\") should be expressed with double backslash("\\").
Chris
|
|
|
|
|
|
Yes, it's Ok now. I forgot one thing. If dwServiceType is specified as SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS instead of SERVICE_WIN32_OWN_PROCESS, it still can not work. Is it possible to set service type as above?
Chris
|
|
|
|
|
|
Does the user account have "log on as a service" rights?
Sorry to dissapoint you all with my lack of a witty or poignant signature.
|
|
|
|
|
Under XP I can use the nice anti-aliased folder icon in my list control by doing something like this to the imagelist...
<br />
HIMAGELIST hImageList = ImageList_Create(16, 16, ILC_COLOR32 | ILC_MASK, 2, 4);<br />
HICON ico = LoadIcon(GetModuleHandle("shell32.dll"), MAKEINTRESOURCE(4));<br />
int x = ImageList_AddIcon(hImageList, ico);<br />
... and using this in my list control is fine. When I use this image list in my tree control the image appears fine at first, but when the mouse is moved over an item, the scary black border begins to appear. In fact, the more times the mouse is moved over the image the blacker we get.
note: This is most noticeable with TVS_TRACKSELECT, it can sometimes be seen without.
This happens with CTreeCtrl and with a plain api WC_TREEVIEW window. Any ideas what's happening here? Explorer doesn't suffer, nor does SysTreeView32.
Thanks in advance,
--
Simon Steele
Programmers Notepad - www.pnotepad.org
|
|
|
|
|
Use ILC_MASK |ILD_TRANSPARENT
|
|
|
|
|
Surely this flag needs to be passed to the drawing function IImageList::Draw which would mean custom drawing the TreeView? I don't think it's a style flag.
I've tried, but it makes no difference. I've also made sure that the background colour is transparent with CLR_NONE, but this also makes no difference.
Any more ideas?
--
Simon Steele
Programmers Notepad - www.pnotepad.org
|
|
|
|
|
Well, obviously the icon is not being erased before it is redrawn. I spent a while playing with it, you can get rid of the effect using custom draw to erase it; seems like there should be a simpler way though.
void CaaTreeTestDlg::OnNMCustomdrawTree1(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMTVCUSTOMDRAW pNMCD = reinterpret_cast<LPNMTVCUSTOMDRAW>(pNMHDR);
*pResult = CDRF_DODEFAULT;
if ( CDDS_PREPAINT == pNMCD->nmcd.dwDrawStage )
{
*pResult = CDRF_NOTIFYITEMDRAW;
return;
}
else if ( CDDS_ITEMPREPAINT == pNMCD->nmcd.dwDrawStage )
{
CDC* pDC = CDC::FromHandle(pNMCD->nmcd.hdc);
pDC->FillSolidRect(&pNMCD->nmcd.rc, pNMCD->clrTextBk);
return;
}
}
farewell goodnight last one out turn out the lights Smashing Pumpkins, Tales of a Scorched Earth
|
|
|
|
|
Thanks for that Shog9 - I was unsure of how to do that and hadn't taken the time to look. I'm assuming the icon is being redrawn as the mouse moves over the text for the items - and the new image is blended with the old. Nasty - bad Microsoft
Any more work-arounds or *fixes* would be gratefully accepted.
Thanks again,
--
Simon Steele
Programmers Notepad - www.pnotepad.org
|
|
|
|
|
Is anybody knows how i can getting some data from memory at addr 0x000F5123 (for example) ? And how i can getting FULL PATH to EXE file in my app ?
---Ranger---
|
|
|
|
|
GetModuleFileName.
Tim Smith
I know what you're thinking punk, you're thinking did he spell check this document? Well, to tell you the truth I kinda forgot myself in all this excitement. But being this here's CodeProject, the most powerful forums in the world and would blow your head clean off, you've got to ask yourself one question, Do I feel lucky? Well do ya punk?
|
|
|
|
|
MyType * pType = x000F5123. Be VERY sure you know what you are doing here.
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
|
|
|
|
|
Hi Christian.
Get BIOS string under Win98 (this string containing motherboard type and bios rev)
In C++
char *pBiosStr = (char *)0xFEC71; - don't work
In Delphi
biosStr = String(PChar(Ptr($FEC71))) - work
---Ranger---
|
|
|
|
|
If I wasn't at work my caveat would have been longer - what I showed you is almost always a bad, bad idea. The question you need to ask is how do I get the bios information and the answer from me is I do not know.
Sorry I cannot help more.
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
|
|
|
|
|
I'm thinking what you want to tinker with isn't process memory, so neither WriteProcessMemory or pointers will work. Your probably gonna have to get at system memory. These bios specs are possibly in the CMOS...but to access CMOS you need to use in/out cpu instructions which cause exceptions I think when running under ring 3(protected mode). Which windows applications run under. You gonna have to use a device driver i'd think.
It works under delphi..??? Is your delphi app compiled into win32 PE..??? Thats weird that it would work...i'm pretty sure your poking system memory, not process...so unless your delphi app is running as a dos/console/win16 type app it shouldn't be able to read system memory.
Cheers
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
Yes in Delphi's Win32 apps works (under Win98). Try:
str = String(PChar(Ptr($FEC71))) under Win98
---Ranger---
|
|
|
|
|
You can use a pointer like Christian pointed out, no pun intended...
However I fail to see why you would need to directly write to memory in the current process. If you want to write to other processes (Change variables in a running game or something) then WriteProcessMemory would serve you well.
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|