Yuri,
TerminateProcess sounds to be the way to go. Callback functions are not supported in VFP so probably you'd do it in a FLL. Check Q216638.
Cetin
>John and Mark,
>
>Thank you both of you for your replay. Sure in my applications I can control it. But my question is related to the Excel/Word applications which are created by another developers. I do not know what programming technic/language they use. I have the window handle only (oWordHandle from my code). So, how to close Excel Application unconditionally having oWordHandle?
>
>
>>>>>>>>>>>>>>previous messages below
>>Sometimes I need to close unconditionally all running Excel or Word applications on the remote server. I do it as described in
http://support.microsoft.com/support/kb/articles/Q246/0/21.ASP, like:
>>*------------------------
>>DECLARE LONG FindWindowA IN WIN32API STRING class, STRING title
>>DECLARE INTEGER SendMessage IN Win32API ;
>> INTEGER HWND,INTEGER Msg, Short WParam, INTEGER LPARAM
>>
>>* Pass the class name for Excel - "XLMain" to FindWindowA
>>lcMSClassName="XLMain"
>>
>>oWordHandle = FindWindowA(lcMSClassName,NULL)
>>do while oWordHandle>0
>> =SendMessage(oWordHandle,16,0,0)
>> oWordHandle = FindWindowA(lcMSClassName,NULL)
>>enddo
>>*----------------------------
>>The problem is when changes were made on particular file, the messagebox appears asking for "do you want to save..." and waiting for response.
>>In all my applications I use objExcel.DisplayAlerts=.f. to avoid it, but I can not figure out how to control others.
>>I will appreciate your help.
>ActiveWorkbook.Saved = .T. will close Excel without a prompt.
>Mark