09 Apr
Posted by: Christian Wimmer in: Common, JEDI Windows API Headers, JEDI Windows Security Code Lib
This is the road map of JWA and JWSCL for the year 2008.
Add and test Rudy Velthuis headers for Delphi to JWA (done but needs review)
Implement COM interfaces and classes for JWSCL
Implement new Winsta (Terminal Service) declarations for JWA and JWSCL
Convert embedded source documentation to Doc-o-Matic (of course buy that nice software) (JWSCL)
Create tons of [...]
Since Windows Vista, a new API called Windows Contacts (WC) was born. It replaces the Windows Address BookAPI.
You can get your personal properties by using the Windows Address Book Editor. It can be opened using “wab” in command line.
Send post as PDF to convert this post to pdf.
05 Apr
Posted by: Christian Wimmer in: JEDI Windows API Headers
Unfortunately Borland didn’t implement a public register and start function into the class TServiceApplication. So we have to do it ourselves.
First we publish the protected RegisterServices function to allow (un-)install our service(s) programmatically.
Send post as PDF to convert this post to pdf.
03 Apr
Posted by: Christian Wimmer in: JEDI Windows API Headers
The BlockInput function blocks the user’s input. However this worked in Windows XP and older but not more in Windows Vista. Now the process must run with Administrator privileges or be in the SYSTEM account.
Additionally JwaWinAble.pas reports about this function:
This returns FALSE if the caller doesn’t have permissions to do this esp. if someone else [...]
We are proud to announce the conversion of StrSafe.h header: JwaStrSafe.pas conversion is now available through the JEDI API Lib subversion repository. You can also get the header here (only temporary).
What is JwaStrSafe.pas ?
StrSafe defines safer C library string routine replacements. These are meant to make C a bit more safe in reference to security [...]
24 Mar
Posted by: Christian Wimmer in: JEDI Windows API Headers, JWA Downloads
There are many error messages in a Windows System. Actually a MSDN article describes them - or better: part of them. However they weren’t enough for me, so I decided to get all of them.
Send post as PDF to convert this post to pdf.
19 Mar
Posted by: Christian Wimmer in: JEDI Windows API Headers
Yesterday, I described how to get the process of a window. Today I show you how to obtain the threads of a process.
There are two ways to retrieve all the threads of a foreign process.
Use the Tool Help Library. There is also a sample about enumerating threads. So I am not going to to show [...]
19 Mar
Posted by: Christian Wimmer in: JEDI Windows API Headers, JEDI Windows Security Code Lib
It is impossible to use SetThreadDesktop and the VCL at the same time because a thread can only show windows on one desktop at a time. However VCL is not written for the use with multiple threads, so there is no way to show Delphi forms of same process on two different desktops. SetThreadDesktop [...]
This answer is very easy - just use GetWindowThreadProcessId
JWA declares it as followed:
function GetWindowThreadProcessId(hWnd: HWND; lpdwProcessId: LPDWORD): DWORD; stdcall;
The function returns an identifier (not a handle) and also may set lpdwProcessId to the identifier (again not a handle!) if it is not nil. Be aware that identifiers aren’t handles, so you must not close them [...]
17 Mar
Posted by: Christian Wimmer in: JEDI Windows API Headers
The people from Microsoft decided that the user has to be in full control over the computer. So there is no assured way to make a program user resistant. She can always use TerminateProcess to forcibly kill the process.
Send post as PDF to convert this post to pdf.
| M | T | W | T | F | S | S |
|---|---|---|---|---|---|---|
| « Sep | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | ||