Search found 30 matches

by JanDoggen
Tue Nov 23, 2010 10:38 am
Forum: madCodeHook
Topic: Creating IPC Channel in Hook Dlls
Replies: 6
Views: 5809

Re: Creating IPC Channel in Hook Dlls

The warning does not apply in my case, I was dealing with an executable (tray icon app) that receives the data.
I'll remember the warning for DLLs ;-)

Thanks
Jan
by JanDoggen
Fri Oct 22, 2010 12:36 pm
Forum: madCodeHook
Topic: Spam in this forum?
Replies: 1
Views: 2502

Spam in this forum?

Matthias
did you notice the spams here?

Anything you can do about it before its overwhelms us?

BTW If you notice a spammer from the Netherlands, I'm willing to go visit him with a baseball club.
by JanDoggen
Fri Oct 22, 2010 12:33 pm
Forum: madCodeHook
Topic: Creating IPC Channel in Hook Dlls
Replies: 6
Views: 5809

Who has to create the channels, anyway?

Does the exe/dll that receives/handles communication have to create the IPC channnel, or could the sending app do that as well?
by JanDoggen
Fri Jun 25, 2010 7:32 am
Forum: madCodeHook
Topic: How to postpone passing on data from hook procedure?
Replies: 2
Views: 3173

I was afraid of that

I will now be investigating Layered Service Providers, that goed one level deeper, I believe.
by JanDoggen
Thu Jun 24, 2010 8:53 am
Forum: madCodeHook
Topic: How to postpone passing on data from hook procedure?
Replies: 2
Views: 3173

How to postpone passing on data from hook procedure?

I currently do 'the usual' hooking process (see code outline below). Doing it this way means that the incoming/outgoing data is processsed immediately, per packet. I now have the situation where I need more than one consecutive block of incoming data to base decisions on (how to modify the data). [I...
by JanDoggen
Tue Feb 09, 2010 12:59 pm
Forum: madBasic
Topic: E2251 Ambiguous overloaded call 'CompareText'
Replies: 1
Views: 13439

E2251 Ambiguous overloaded call 'CompareText'

Hi, my Delphi 2007 refuses to compile because of this error. My code: with List do begin for i := 0 to Items.Count-1 do begin if CompareText(Items .Caption, SomeStr) = 0 then so there's not much I can do there. The help says: Based on the current overload list for the specified function, and the pro...
by JanDoggen
Thu Jan 14, 2010 10:45 am
Forum: madCodeHook
Topic: CreateIPCQueueEx parameter questions
Replies: 4
Views: 3657

I already tried 0 - it seems to do 'unlimited'.

You mighty want to update your docs, because it specifies a default parameter of 16.

And thanks for all the feedback!
Jan
by JanDoggen
Thu Jan 14, 2010 7:59 am
Forum: madCodeHook
Topic: CreateIPCQueueEx parameter questions
Replies: 4
Views: 3657

Please let em ask my question more precisely:
In those cases <> 1: Unlimited or 16?

Bye
Jan
by JanDoggen
Mon Jan 11, 2010 3:17 pm
Forum: madCodeHook
Topic: CreateIPCQueueEx parameter questions
Replies: 4
Views: 3657

CreateIPCQueueEx parameter questions

According to the online help: // if the order of the messages is crucial for you, set "maxThreadCount" to "1" // in its current implementation "maxThreadCount" only supports "1" or unlimited // the parameter "maxQueueLen" is not yet implemented at al...
by JanDoggen
Wed Jan 06, 2010 1:33 pm
Forum: madCodeHook
Topic: Slow service handling IPC calls - Q about profiling results
Replies: 1
Views: 2471

Slow service handling IPC calls - Q about profiling results

Hi all

I used the ASMSamplingProfiler
http://code.google.com/p/asmprofiler/
to try and find out what is making my service slow.
I notice 99% samples falling in madCodeHook/PipedIPCThread1
(madCodeHook/handlePipedIPCMessage takes only 0.5%)

What does this mean?

Thanks
Jan
by JanDoggen
Wed Jan 06, 2010 1:28 pm
Forum: madCodeHook
Topic: How can I find executable name calling a hooked function?
Replies: 4
Views: 3933

The name of the executable that your DLL is hooked into can still be retrieved with ParamStr(0) The location where your DLL was loaded from can be retrievd with function GetModulePath: string; // Returns the path where the DLL is loaded from var Buf : PChar; i : Integer; begin Result := ''; GetMem(B...
by JanDoggen
Thu Dec 31, 2009 8:14 am
Forum: madCodeHook
Topic: When UninjectLibrary fails, any more info?
Replies: 9
Views: 10265

Hi Matthias

(1) But is the FALSE result of UninjectLibrary reliable?
(2) Any ideas how I could find out what is going on if it fails?

Thanks
Jan
by JanDoggen
Tue Dec 29, 2009 1:40 pm
Forum: madCodeHook
Topic: Is handling IPC messages threaded and queued?
Replies: 3
Views: 3633

I found out that different IPC handlers can run concurrently, as long as I make sure they 'have' their 'own' data. This does not answer if they are threaded though ;-) Also I have not seen 'nested calls' i.e. an IPC handler getting called while it is processing (and one of them is called *frequently...
by JanDoggen
Thu Dec 24, 2009 11:28 am
Forum: madCodeHook
Topic: Detect SendIPCMessage timeout?
Replies: 1
Views: 2495

Detect SendIPCMessage timeout?

Hi all

1)
Is there a way to detect that the timeout happened?

2)
I assume that the 'responding' process (which is handling the IPC message) has no idea that the sender gave up after the timeout. What happens if the responder stuffs data into the AnswerBuf after the timeout.

TIA
Jan
by JanDoggen
Thu Dec 24, 2009 10:50 am
Forum: madCodeHook
Topic: When UninjectLibrary fails, any more info?
Replies: 9
Views: 10265

When UninjectLibrary fails, any more info?

This code returns an error message with GetLastError 0 That is not much info :? Is there a way to get more info on what failed? procedure UnInjectCoreDll; var Res: Boolean; begin Res := UninjectLibrary((ALL_SESSIONS{ or SYSTEM_PROCESSES}) and (not CURRENT_PROCESS), 'CORE.DLL'); if not Res then LogEr...