|
Did you put include guards on top of your header files ?
Something like this:
#ifndef MYFILE_H
#define MYFILE_H
#endif
(with MYFILE_H being something unique for each file). You can achieve the same result by putting a #pragma once at the top of the file.
|
|
|
|
|
#ifndef SVC_INFC_H
#define SVC_INFC_H
// This is the problem. If I would comment this one,
// WTSGetActiveConsoleSessionId() will go undeclared identifier.
// Otherwise, those errors I've posted a while ago.
#define _WIN32_WINNT 0x0501 // A0001
#include <windows.h>
#include <wtsapi32.h>
#include <iostream>
#include <tchar.h>
#include <winsvc.h>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#define SERVICE_NAME "MirrorMonitor"
#define MSGSENDER_FILENAME "appmsgsender.exe" // A0001
// default status check time interval: 60 seconds
#define DEFAULT_INTERVAL 60000
VOID WINAPI ServiceMain( DWORD argc, LPTSTR *argv);
VOID WINAPI ServiceCtrlHandler( DWORD Opcode);
BOOL InstallService();
BOOL DeleteService();
VOID ServiceInit( DWORD dwArgc, LPTSTR *lpszArgv);
VOID ReportServiceStatus( DWORD dwCurrentState,
DWORD dwWin32ExitCode,
DWORD dwWaitHint);
VOID ServiceReportEvent( LPTSTR szFunction, DWORD eventType);
VOID OnStartStatusCheck();
VOID PeriodicStatusCheck();
DWORD ReadIntervalConfigValue();
VOID WriteIntervalConfigValue(DWORD Data);
VOID WriteServiceRunValue(DWORD Data);
VOID WriteMirrorStatusValue(DWORD MirrorStatData);
BOOL LaunchUserImpersonatedMessageSender(void); // A0001
#endif
Thanks Cédric Moonen
|
|
|
|
|
Please put your code into "code block" because it is hardly readable.
|
|
|
|
|
And put a empty space between the < > symbols and the content.
#include <example.h> //without spaces
#include < Example.h > //with spaces
#include <example.h>
#include < Example.h >
</example.h>
Have a nice day
Greetings.
--------
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
“The First Rule of Program Optimization: Don't do it. The Second Rule of Program Optimization (for experts only!): Don't do it yet.” - Michael A. Jackson
|
|
|
|
|
#ifndef SVC_INFC_H
#define SVC_INFC_H
#define _WIN32_WINNT 0x0501
#include "windows.h"
#include "wtsapi32.h"
#include "iostream"
#include "tchar.h"
#include "winsvc.h"
#include "time.h"
#include "stdlib.h"
#include "stdio.h"
#include "ctype.h"
#define SERVICE_NAME "MirrorMonitor"
#define MSGSENDER_FILENAME "appmsgsender.exe"
#define DEFAULT_INTERVAL 60000
// Function prototypes
// ...
// ...
#endif
Sorry for that messed up code.
Thanks.
|
|
|
|
|
Thanks for the desire to help. I just removed the #define _WIN32_WINNT 0x0501 and so with the WTSGetActiveConsoleSessionId(). I just used the WTSEnumerateProcesses to obtain the SessionId of the process I'm looking for. Works fine with me. Didn't come across with that terminal API so I really did have a hard time. Also, I included in the Project Settings-Link the WtsApi32.lib.
Thanks anyway. It's nice to have brilliant minds across the world that are willing to help. May the force be with this forum always.
|
|
|
|
|
How to change the interval of timer dynamically which is created already using SetTimer() ?
Thanks,
Suman
--
"Programming is an art that fights back!"
|
|
|
|
|
you may need to destroy the previous timer event using KillTimer and assign the updated timer event again using SetTimer
|
|
|
|
|
ID should be constant!
SetTimer(ID,...);
KillTimer(ID)
SetTimer(ID,...)
"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
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|
|
There's no need to call KillTimer . Just call SetTimer again with the same ID and the new interval.
DoEvents: Generating unexpected recursion since 1991
|
|
|
|
|
guys,
i get some porblem. i degine a graph region and i have drawn some grids with the following codes.
BOOL CUserInterfaceDlg::PlotGrid(void)
{
int i;
GraphRegion->
SelectObject(Brush);
GraphRegion->SelectObject(PenGrid);
GraphRegion->
FillRect(&GraphRect,&Brush);
for (i=1;i<(GraphRect.Width()/2);i++)
{
GraphRegion->MoveTo(i*((double)GraphRect.Width()/30),0);
GraphRegion->LineTo(i*((double)GraphRect.Width()/30),GraphRect.Height());
}
for (i = 1;i<(GraphRect.Height()/2);i++)
{
GraphRegion->MoveTo(0,GraphRect.Height()-i*((double)GraphRect.Height()/30)); GraphRegion->LineTo(GraphRect.Width(),GraphRect.Height()-i*((double)GraphRect.Height()/30));
}
return 0;
}
then i tried to draw another line on the grid by the following codes:
BOOL CUserInterfaceDlg::PlotRunWay(void)
{ UpdateData(TRUE);
GraphRegion->SelectObject(PenRunWay);
RXArray[0]=m_AirXPisition;
RYArray[0]=m_AirYPosition;
RPoints[0].x=RXArray[0];
RPoints[0].y=RYArray[0];
RPoints[1].x=RPoints[0].x+30000;
RPoints[1].y=RPoints[0].y+200;
GraphRegion->MoveTo(RPoints[0]);
GraphRegion->LineTo(RPoints[1]);
return 0;
}
but this is not working. it just drawing the grid lines. can anyone tell me why it happening.
thanking you all,
shohel
|
|
|
|
|
Please don't repost your message twice !
Where are you calling that code ? All drawing routines should be called from within the OnPaint handler.
Also, it is better to create a custom control instead of drawing directly on your dialog (this way, you can resize it or put it on another dialog).
Anyway, if you want to make a kind of 2D chart, I suggest you take a look at my signature: I developped a charting control and maybe you could find it usefull...
|
|
|
|
|
How can I access individual elements of linked lists? Can you show me a code example? Thanks.
|
|
|
|
|
can you explain a bit more on the following?
1.how did you start to create a linked list application.
2.what is the structure of your node.
please be clear.
--------------------------------------------
Suggestion to the members:
Please prefix your main thread subject with [SOLVED] if it is solved.
thanks.
chandu.
|
|
|
|
|
What list ?? You mean a std::list ?
Please be precise when asking your question.
|
|
|
|
|
nawal_bo wrote: How can I access individual elements of linked lists? Can you show me a code example? Thanks.
you have to traverse each and every element of linked list for individual element
"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
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|
|
Do you have code for adding to this list?
"Love people and use things, not love things and use people." - Unknown
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
i want to load japanese string from the string table.
can any body tell me the encoding format of .rc file (in Gereral) in Visual Studio 2005.
|
|
|
|
|
sumit.durg wrote: .rc file (in Gereral) in Visual Studio 2005.
Look at the solution part, which is at the end of this page:
Internationalization Cook book - Unicode .RC in VS 2005[^]
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Can you tell me how to read japanese string from string table
|
|
|
|
|
Try CString::LoadString(IDS_STRING);
Nobody can give you wiser advice than yourself. - Cicero
.·´¯`·->Rajesh<-·´¯`·.
Codeproject.com: Visual C++ MVP
|
|
|
|
|
Does it work for other languages?
|
|
|
|
|
How i should i use CString::LoadString(IDS_STRING);
|
|
|
|
|
|
in continuation with try CStringW::LoadString!
"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
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/codeProject$$>
|
|
|
|