FOROS PROFESIONALES
WINDEV
,
WEBDEV
y
WINDEV Mobile
Inicio
|
Mensajes recientes
|
Conéctese...
|
Desconnectar
|
Español
Inicio
→
WINDEV 2024
→
Re: lanceAppliAssociée BLOQUANT
Re: lanceAppliAssociée BLOQUANT
Iniciado por petiot, 22,mar. 2006 17:53 - 1 respuesta
Conéctese…
petiot
#1
Publicado el 22,marzo 2006 - 17:53
Bonjour, je suis dans le même cas, je décrypte un fichier PDF puis le lance avec LanceAppliAssociée pour le lire puis je dois détruire ce fichier décrypté avec le code fsupprime, mais comme LanceAppliAssociée n'est pas bloquant il m'efface le fichier temporaire avant même son lancement...
LanceAppli c'est bien, mais comme je suis dans une boite où il existe de multiples versions d'Acrobat avec des noms différents d'executable, actuellement je n'ai aucune solution...
Exite-t-il un façon de connaitre sous windev avec quoi est associé un fichier ?
salutations...
Informar
0
0
philippe.pasquali
#2
Publicado el 23,marzo 2006 - 09:02
Effectivement c'est le serpent qui se mange la queue
DDELance à besoin de connaître le programme pour ouvrir le fichier mais il peut bloquer
LanceAppli ne bloque pas mais utilise la base de registre pour trouver dans la clef
HKEY_CLASSES_ROOT le programme
Exemple
HKEY_CLASSES_ROOT\.pdf
--------HKEY_CLASSES_ROOT\.pdf\OpenWithList
----------------HKEY_CLASSES_ROOT\.pdf\OpenWithList\AcroRd32.exe
et AcroRd32.exe est la nom du programme....
mais bon c'est pas trés clair le bazard (voir le .doc)
Alors une autre voie de que j'utilise pour les fichier .msi
je lance LanceAppliAssocie mais juste avant je recupére le nom et le chemin des processus en cours et j'attend (donc je bloque mais avec timeout) tant que mon nouveau processus n'est pas terminé. Pour cela, j'utilise cette petite fonction (elle ne liste que les process de la machine mais en modifiant un chti peut on peut voir les process d'une autre machine)
PROCEDURE EnumProcess()
objWMIService est un objet Automation "MSScriptControl.ScriptControl"
ProgrammeVbs est une chaîne
ResultatVbs est une chaîne
ProgrammeVbs = "Function EnumProcess()" +CRLF
ProgrammeVbs += "On Error Resume Next" +CRLF
ProgrammeVbs += "strComputer = "+Caract(34) + "." + Caract(34) + CRLF
ProgrammeVbs += "strResult = "+Caract(34)+Caract(34) + CRLF
ProgrammeVbs += "Set objWMIService = GetObject("+Caract(34)+"winmgmts:\\"+Caract(34)+" & strComputer & "+Caract(34)+"\root\cimv2"+Caract(34)+")" + CRLF
ProgrammeVbs += "Set colItems = objWMIService.ExecQuery("+Caract(34)+"Select * from Win32_Process"+Caract(34)+",,48)" + CRLF
ProgrammeVbs += "For Each objItem in colItems" + CRLF
ProgrammeVbs += "strResult = strResult & objItem.Caption & chr(9)" + CRLF
ProgrammeVbs += "strResult = strResult & objItem.ExecutablePath & chr(13) &chr(10)" + CRLF
ProgrammeVbs += "Next" + CRLF
ProgrammeVbs += "EnumProcess = strResult" + CRLF
ProgrammeVbs += "End Function"
objWMIService>>Language("VBScript")
objWMIService>>Reset()
WHEN EXCEPTION IN
objWMIService>>AddCode(ProgrammeVbs)
DO
Erreur("Erreur dans le programme vbs...")
RENVOYER ""
END
ResultatVbs = ""
WHEN EXCEPTION IN
ResultatVbs = objWMIService>>Eval("EnumProcess()")
DO
Erreur("Erreur d'execution du programme vbs")
RENVOYER ""
END
IF ResultatVbs<>"" THEN ResultatVbs = ResultatVbs[[1 sur Taille(ResultatVbs)-2]]
RENVOYER ResultatVbs
Informar
0
0
→ Volver a WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV 26
WINDEV 2024
WINDEV 2024
WINDEV 2024
WINDEV 25
WEBDEV 2024
WEBDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV Mobile 2024
WINDEV Mobile 2024
WINDEV (versiones precedentes)
WINDEV (versiones precedentes)
WINDEV (versiones precedentes)
WEBDEV (versiones precedentes)
WEBDEV (versiones precedentes)
WINDEV Mobile (versiones precedentes)
WINDEV Mobile (versiones precedentes)
Reports & Queries
Reports & Queries
Irrelevante
Irrelevante
Herramientas
Herramientas
Français
English
Español
Portuguesa
Fermer cette fenêtre
Búsqueda Tipo
Sólo temas
Todos los mensajes
Periodo Buscar
Cualquier fecha
Última hora
Última 24 horas
Última semana
Último mes
Último año
Cancelar
Vista previa del mensaje
Añadiendo una imagen
Importar una imagen desde una URL
Enviar una imagen desde un archivo de su disco
Arrastrar un archivo o click en "Examinar..."
o
Cancelar
0%
WLanguage
SQL
XML, HTML
JAVA, Javascript
Texto