twcapture y servicio...

Post Reply
Francisco Horta
Posts: 845
Joined: Sun Oct 09, 2005 5:36 pm
Location: la laguna, mexico.

twcapture y servicio...

Post by Francisco Horta »

Alguien tiene la clase twcapture para 32 bits que me la pudiera facilitar, y sabarn como poner un programa de harbour en modo servicio con win xp? lo que quiero es cargar el programa y cerrar la ventana por ejemplo cuando carguen el ares, el limewire, el messenger,etc etc.. o alguien tendra algun ejemplo lo agradeceria mucho...
Salu2
Paco
User avatar
Paco Garcia
Posts: 172
Joined: Fri Oct 07, 2005 12:00 pm
Contact:

generico

Post by Paco Garcia »

Hola Paco

Capturar una ventana mas o menos es averiguar su hWnd y enviarle mensajes.

Una de las formas de obtener el handle es utilizar FindWindow

Por ejemplo:

Code: Select all


local cText
local hWnd := FindWindow( 0, <titulo_de_la_ventana_a_capturar>)
if hWnd == 0
   MsgInfo( "No encuentro " + <titulo_de_la_ventana_a_capturar> )
   return 0
endif

SetWindowText( hWnd, "nuevo titulo" ) // cambiamos el titulo de la ventana
MoveWindow( hWnd, 20, 20, 500,500, .t.) // mueve la ventana

SendMessage( hWnd, WM_CLOSE,0,0)

Asi todo lo que quieras hacer que se pueda hacer con funciones del api y que acepten un handle de ventana.

Un saludo
User avatar
JmGarcia
Posts: 654
Joined: Mon May 29, 2006 3:14 pm
Location: Madrid - ESPAÑA

Post by JmGarcia »

Francisco Horta wrote:...y sabarn como poner un programa de harbour en modo servicio con win

xp?
Estas son mis notas de los cursos de Donosti 2007:

Se puede hacer de 2 formas, la gratis y complicada, o la de facil y de pago.

La gratis y complicada:
Se necesitan dos programas del Kit de recursos de Microsoft: instsrv.exe Instalador del servicio http://www.auditmypc.com/process/instsrv.asp srvany.exe (rvany.exe) Utilidad de aplicaciones como servicio

http://www.auditmypc.com/process/srvany.asp

Abres una ventana de ms-dos y le pones: instsrv.exe "Nombre del Servicio" srvany.exe Es imprescindible pasar la ruta donde esten ambos ejecutables.

Una vez hecho esto abres el regedit y te vas a: HKLM\system\CurrentControlSet\Services y verás que se ha creado una clave "Nombre del Servicio"(si abres la consola de servicios verás que ya se ve en la lista); haz click en el arbol y crea una subclave llamada "Parameters", dentro de ella un valor de cadena llamado "Application" al que de contenido le pones Ruta\Nombre.exe. Ya tienes creado el servicio.
De esta manera se crea con arranque automático y lanzado por cuenta del sistema; te metes en Panel de

Control / Herramientas administrativas / Servicios y cambias lo que haga falta

Ten en cuenta que dentro de tu programa debes hacer _ necesarios para indicar "rutas absolutas" en las operaciones como USE, FILE(), etc, es decir, tienes que indicar las rutas completas a donde estan los archivos que deseas leer y/o escribir, ya que el programa EXE, al ser un servicio, no esta corriendo en realidad en la carpeta donde esta instalado, digamos que esta "en el limbo" de la computadora, ahi, flotando en el aire, sin una unidad de disco a la cual hacer referencia.

La forma facil y de pago:

Mirate estos programas de pago que convierten cualquier EXE en servicio:

Firedaemon ($ 35.00 USD)
http://www.firedaemon.com/

Application as service 1.0 ($ 79.00 USD)
http://www.eltima.com/products/application-as-service/

Service Mill ($79.00 USD)
http://www.activeplus.com/us/products/smill/

Serve All ($49.00 usd)
http://www.transsoft.com/view_content.asp?ID=25

Mas información en http://freyes.svetlian.com/tips/ejecuta ... rvicio.htm
Mi abuelo decía: Los aviones vuelan porque Dios quiere, y los helicópteros ni Dios sabe porque vuelan.
FWH 16.02, xHarbour 1.2.3, Harbour 3.2.0, WorkShop 4.5, AJ Make 0.30, Borlan BCC 7.00, VisualStudio 2013
Post Reply