|
Hi, is it possible to get process IDs for the current user only... or alternatively from a process ID (PID) get the owner?
I tried using CreateToolhelp32Snapshot, this gives back processes from all users. When two different users have started an executable "test.exe" at the same time I'd like to find the PID of the "test.exe" from the current user.
Thanks!
|
|
|
|
|
Could this[^] help?
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> Life: great graphics, but the gameplay sux. <
|
|
|
|
|
I couldn't make it to compile, but it helped to find other examples! Thanks
Surprising that it is that much work, my implementation takes a PID and uses: OpenProcess() -> OpenProcessToken() -> GetTokenInformation() -> LookupAccountSid() . It converts the SID into a string of the format "domain\user". To filter processes of the current user I first I get the owner with help of GetCurrentProcessId() and then compare it with process information from CreateToolhelp32Snapshot() . WinAPI doesn't make it too easy.
|
|
|
|
|
Well, you know what they say, "The easy road is not worth taking" (Whoever said that was not a coder for sure...).
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> Life: great graphics, but the gameplay sux. <
|
|
|
|
|
Hello! I'm writing a driver, which should start an application from ring0.
It is very important, that the app runs as SYSTEM account.
Finally i read alot of process creation, but I still have one problem:
After I have created section, process and thread I see my process in the taskmanager list, running as SYSTEM; but even though I Resume the thread I get following error:
0xc0000142 (STATUS_DLL_INIT_FAILURE)
But the process found the dll's, because if I renamed for e.g. msvcr80.dll I got the message that the dll, couldn't be found in my dll paths.
I read something about the kernel32.dll failing if it isn't able to access the desktop (winsta0\default).
My question now: Does anyone know what I could have made wrong, or does anyone has an idea how to solve my problem?
Greetz
Biosstar
|
|
|
|
|
Is it possible to make a standard messagebox in c++ Full screen? If so, how would I do such a thing. I'm currently including "MB_SYSTEMMODAL".
|
|
|
|
|
gamefreak2291 wrote: Is it possible to make a standard messagebox in c++ Full screen?
Nope.
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]
|
|
|
|
|
gamefreak2291 wrote: I'm currently including "MB_SYSTEMMODAL".
In an attempt to make it full screen?
"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
|
|
|
|
|
No, that was just additional information. What I'm attempting to make is a series of messageboxes none of which are able to be moved from their centered spot and they need to be very large in size.
|
|
|
|
|
gamefreak2291 wrote: What I'm attempting to make is a series of messageboxes none of which are able to be moved from their centered spot and they need to be very large in size.
You can do that with your own, not the built-in variety.
"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
|
|
|
|
|
can you possibly help me start this process, I haven't taken a programming class yet and I won't for around another year now so I'm trying to get a very large headstart..
|
|
|
|
|
Do you know how to create a dialog-based application?
"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
|
|
|
|
|
Possibly, but the terminology doesn't ring any bells
|
|
|
|
|
See here.
"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
|
|
|
|
|
you're not by any chance just turned 18 in february?
|
|
|
|
|
I don't know what that has to do with anything, but yes i did just turn 18 in february.
|
|
|
|
|
Greetings fellows!
I once again ask for you help:
I have some .dat files, which are sequences of bits (files are around 15 MBs in size). Every 10 bits there is a 0 (separator). Before anything else, I would like to make a text file out of the dat one, and every bit in the original file to have a character correspondent in the text file (so I can actually read the bits with , say, notepad).
What I`ve tried so far (without success):
BYTE buffer[100];
char buffer2[5000];
long index;
DWORD dwRead;
do {
dwRead = readFile.Read(buffer, 100);
for (index=0;index<dwread;index++)>
buffer2[index]= buffer[index]
writeFile.Write(buffer2, dwRead);
}
while (dwRead > 0);
I know it`s goofy and that formatting these bits should be done easily using some unknown (to me) function. Could u please point me the direction?
Thanks again
shpid3r
|
|
|
|
|
shpid3r wrote: so I can actually read the bits
It seems very possible you think a "bit" is a "byte". It isn't. If you want to see the bytes I suggest you use an already existing application that can display the raw byte values. There are several free ones and of course Visual Studio does this as well.
good luck
|
|
|
|
|
I am not thinking of bits as bytes, though it might sound like that.
I would rather transform every bit into a byte (in order to observe them easier).
The next step will be to format data (eliminate the 0 - separator and use the remaining bits to form values. If the first bit after the 0 - separator is 1, the value will be negative, and all the 2 complement policy. Therefore I need to be able to manipulate data at the bit-level.
Thanks for you insight!
|
|
|
|
|
shpid3r wrote: I am not thinking of bits as bytes, though it might sound like that.
I would rather transform every bit into a byte (in order to observe them easier).
shpid3r wrote: Could u please point me the direction?
I don't know what you mean since you gave no indication what you don't know how to do.
Each bit is only a 1 or 0 so all you have to do is determine which then write the character to the file. Of course there are other ways like using a C++ function to generate a string using a radix of 2 and then write the string to the file but that will only work on byte boundaries.
|
|
|
|
|
ok let me zoom out a little:
I have the sequence of bits:
0 101010101 0 101010101 0 101010101 0 10101010 0 ...
First I have to strip the lone 0's.
With the remainder bits I have to form numbers, and then write them (the obtained values) into a file.
As there are 9 bits used for every value, I will have to format these numbers on 16 bits (so to meet the byte boundaries). The first bit is important, as it gives the sign information (positive or negative).
It is obvious that the suggestion to test bits and write characters of 0 or 1 is the simplest approach, but it won`t help me further ahead... Sorry for not providing a complete explanation (so far)
|
|
|
|
|
What do you mean with sequence of bits (is your record size 10 bits, i.e. leading '0' plus 9 data bits, so that 8 of your records fit in 10 bytes?)?
And if you record has fixed size, what is the purpose of the leading '0' (the 'delimiter')?
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]
|
|
|
|
|
Greetings Pallini (and thanks again for your interest, you seem invaluable to this community)
Uhm... the hypothesis with one 0 every 10 bits was given to me by my superiors. I raised the question that you`ve raised (why one 0 every 10 bits if we know that every value is encoded in 10 bits) but they didn`t know the answer, just that "this is how it is".
I have tried observing the sequence of bits, but every editor I come across interprets and displays values in Hex format (I know the basics but I am not comfortable working with it, it takes me lots of more time than binary, especially on this data set)
Though, at a first glance, at least the beginning of the file does not follow this rule. I have uploaded a file for you if you have time to check it for yourself.
http://www.dump.ro/fisiere/100-dat/104015/o5tzJNoMT65asCMx
before going ahead working on this, I wish I see the bits and from there to decide what to do next. I am going to take the "test bit by bit and write chars into a file" and come back when going to conversion
10x for you help
|
|
|
|
|
The following silly program represents the first N bytes of your file as a binary string. I can't find the patterns you've described, anyway... I good luck!
#define N 80
void main()
{
int i;
int k;
int count;
char c;
FILE * fp = fopen("100.dat", "rb");
if ( !fp) return;
i=0;
for (i=0; i<N; i++)
{
unsigned char b = fgetc(fp);
for (k=0; k<8; k++)
{
c = b & 0x80 ? '1' : '0';
b <<= 1;
printf("%c",c);
}
i++;
}
fclose(fp);
}
BTW with such a 'detailed specification' of the file format what is expected from you? I would throw to your superiors a big chunk of random data...
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]
|
|
|
|
|
Hi There.
I am trying to get a caption of a windows control using below code... But its fatching only a set of square boxes (Carriage return).
TCHAR buf[512];
::SendMessage(pWaitingProcessCompleteWnd6, WM_GETTEXT, 0 , (LPARAM)buf);
I have checked the address of pWaitingProcessCompleteWnd6 using spy++, its pointing to the right control.
Please help.
Thanks
PanB
|
|
|
|