Walter como estas ?

Usate esta function.. Valida que la aplicación que estas ejecutando (Toma el
nombre del _screen.caption de tu aplicación) se esté ejecutando N veces…

Modificala a medida y te va a servir.

Tambien  te da un detalle de todas las aplicaciones que se están ejecutando.

Espero te sirva.

Sebastián.

 

 

function listapp

parameters prmdetalleaplicaciones

local laapp, lnhandle, lncount, lctitle, lni, lnhfox, lccant_exist

dimension laapp[1]

lnhfox=0

lccant_exist =0

declare integer FindWindow ;

      in win32api ;

      integer nullpointer, ;

      string cwindow_name

declare integer GetWindow ;

      in win32api ;

      integer ncurr_window_handle, ;

      integer ndirection

declare integer GetWindowText ;

      in win32api ;

      integer n_win_handle, ;

      string @ cwindow_title, ;

      integer ntitle_length

lnhfox = findwindow(0,_screen.caption)

lnhandle = lnhfox && GetWindow(lnHFox,0)

lncount = 0

do while lnhandle > 0

      lctitle=space(255)

      lni=getwindowtext(lnhandle, @lctitle,len(lctitle))

      if lni>0

            lctitle=strtran(trim(lctitle),chr(0),"")

      else

            lctitle=""

      endif

      if lnhandle > 0 .and. !empty(lctitle)

            lncount=lncount+1

            dimension laapp(lncount)

            laapp[lnCount]=lctitle

      endif

      lnhandle = getwindow(lnhandle,2)

enddo

if alen(laapp,1)>0

      lcstring = "Las siguientes aplicaciones están "+;

            "ejecutándose:" + renglon

      encontro=0

      for i=1 to alen(laapp,1)

            if alltrim(lower(laapp[i]))=alltrim(lower(_screen.caption))

                  encontro=encontro+1

            endif

*   If Encontro>=2

*    return .T.

*   Endif

            if laapp[i]$lcstring

            else

                  lcstring = lcstring + strt(laapp[i],space(2),"")+chr(13)

            endif

      next

else

      lcstring = "No hay aplicaciones ejecutándose"

endif

lcstring=iif(encontro>=2,"El sistema se encuentra ABIERTO MÁS DE UNA
VEZ.","El sistema está abierto una ÚNICA vez.")+renglon+lcstring

 

if !empty(prmdetalleaplicaciones)

      =mesagebox(lcstring,64, "Lista de aplicaciones que se están
ejecutando")        &&LISTA LOS PROGRAMAS QUE ESTAN CORRIENDO

else

      if encontro>=2 and mesagebox(lcstring+renglon+"Se detectó una sesión
previamente abierta del sistema, desea abrir otra ?",36, "Lista de
aplicaciones que se están ejecutando")=6

            return .f.

      endif

endif

 

retu encontro>=2

endfunc

 

 

 

De: [email protected] [mailto:[email protected]] En nombre de Walter Comito
Enviado el: Martes, 18 de Febrero de 2014 12:50 p.m.
Para: GUFA List Member
Asunto: [GUFA] EJECUTABLE

 

Amigos, buenos dias.

Como puedo limitar a que un exe solo lo abra 2/3 veces en una misma maquina
/ red

Si alguien me puede dar una mano se lo agradecería.

 

La idea es que un cliente no pueda abrir mas de tantas veces una misma
aplicación

 

Gracias

 

 

Walter Cómito

 Analista de Sistemas

 MP 0397 C.P.C.I.P.C.

 

›  [email protected]

         [email protected]

 

'   +54 351 494.4667

           153.292.707

 

þ www.softram.com.ar <http://www.softram.com.ar/> 

 

Q  Si no es necesario, no imprima este correo.

Todos somos responsables por el cuidado del medio ambiente.

 

 

NOTA DE CONFIDENCIALIDAD 
Este mensaje (y sus anexos) es confidencial y puede contener información de
propiedad 
exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este mensaje
por error, 
por favor comuníquelo inmediatamente a  <mailto:[email protected]>
[email protected] y tenga la amabilidad 
de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a
ninguna persona.

Muchas Gracias.

 

De: [email protected] [mailto:[email protected]] En nombre de francisco prieto
Enviado el: lunes, 17 de febrero de 2014 10:29 a.m.
Para: GUFA List Member
Asunto: [GUFA] Editor Html VFP

 

Documentado el nuevo editor en mi aplicación, vi que el foxipreviewer
utilizaba algunos comando en la pantalla de enviar email. Entonces para
unificar los gráficos (ya que ambas pantallas va a estar en la misma
aplicación) decidí investigar que pantalla tenía que tocar en el
Foxipreviewer y me encontré el el foxipreviewer usa la misma clase que les
comentaba en el mail anterior...

 

Bueno, ahora simplemente a mi foxipreviewer lo apunto a mi clase que ya
tengo los gráficos que me gustan y me queda todo estandarizado, pero uds
bien podrían hacer al revés.

 

Saludos,

 

Pancho

Córdoba

 

El 16 de febrero de 2014, 23:08, César Pistiner <[email protected]>
escribió:

Gracias por el aporte pancho!

Cuando este en una PC me bajo los fuentes y chusmeo el tema del Explorer.

Saludos!
César

El feb 16, 2014 3:37 PM, "francisco prieto" <[email protected]> escribió:

Grupo,

 

Tenía la necesidad de incorporar en mi aplicación un editor Html escrito en
VFP y si bien sospechaba que era posible, no sabía que tan complicado podría
resultar...

 

Gogleando me topé con esto...

 

http://www.davphantom.net/consultar.asp?id=editor-html-1123/

 

(Para bajárselo deben registrarse gratuitamente)

 

Esta hecho 100% en VFP pero si lo revisan van a notar que el programador no
se mató escribiendo código, sino que mas bien utilizó una faceta del control
Explorer que para mi hasta este momento era desconocida...

 

La estética es bastante fea (ademas de estar escrito en francés) así que le
lave la cara y me encontré con que no había ninguna función que me
permitiese crear links...

 

Nuevamente gogleando me topé con esto...

 

http://msdn.microsoft.com/en-us/library/ie/hh801227(v=vs.85).aspx#createlink

 

Si revisan el nombre de la propiedad de cada botón o checkbox son los
comandos que están citados acá

 

La documentación demuestra que el editor realizado por el programador solo
cubre los comandos mas utilizados, pero da la pauta de como agregar todos
aquellos otros que necesitemos.

 

Saludos a todos,

 

Pancho

Córdoba

 

 

Responder a