« 1 (2) 3 »


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Pas de soucis, dis moi ce que tu en penses quand tu en auras fini ;)

Contribution le : 16/07/2010 13:33
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Super c'est parfait, je l'ai modifié à mon gout, je l'ai testé et ça fonctionne parfaitement.

La je l'ai intégré dans WDSetup et voir si ça à fonctionné et si je l'ai bien mis au bon endroit (je pense que oui).

Après ça je vais vérifier tout au complet, installation sur un poste, modification du projet, validation de la mise à jour.

Ça devrait le faire.

a+++

Contribution le : 16/07/2010 16:14
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Yesssss j'ai trouvé le bon endroit ou le mettre pour qu'il exécute mon Install et non celui proposé par PC-SOFT.

Pour cela il faut aller dans la procédure globale : InstalleReseauRefHTTP

Et modifier :

nRes = zipAjouteFichier("Z",completerep(gclInst:m_stInstChoix:szRepTravail)+NOM_SETUPFTP,zipaucun)


Par :

	nRes = zipAjouteFichier("Z","D:\Mes Projets\Install\Exe\Install.EXE",zipAucun)


Remplacez D:\Mes Projets\Install\Exe\ par votre path à vous s'il est différent.

Je vais donc faire ma phase de validation totale.

a++

Contribution le : 16/07/2010 16:26
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Bon avec la modification mentionné ci-dessus ça fonctionne pour l'installation. Mais pour détecter la mise à jour nada, rien ne se passe, il doit y avoir surement une astuce ou quelque chose qui dit a install quoi faire et surement comment lancer wdsetup avec le bon plan ou un truc du genre.

Je vais essayer de trouver.

a+++

Contribution le : 16/07/2010 17:37
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Salut,

En ce qui concerne PC-SOFT, j'ai eu la réponse finale.

Voici la réponse :

Malheureusement, la version actuelle de WinDev ne permet pas actuellement de réaliser ce traitement. L'installation http ne gére par de connection http authentifiées.

Votre idée est intéressante. Je l’ai transmise en tant que suggestion à notre équipe de développement pour qu’ils étudient son implémentation dans une prochaine version.

Donc y à des chances pour que plus tard ça soit disponible.

En attendant je vais continuer de mon coté mes tests.

a+++

Contribution le : 16/07/2010 17:52
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Citation :

Oceans a écrit:
Bon avec la modification mentionné ci-dessus ça fonctionne pour l'installation. Mais pour détecter la mise à jour nada, rien ne se passe, il doit y avoir surement une astuce ou quelque chose qui dit a install quoi faire et surement comment lancer wdsetup avec le bon plan ou un truc du genre.

Je vais essayer de trouver.

a+++


Humm... Comment ça?
Pour la maj c'est quand le logiciel que tu as installé chez le client lui même se lance, il checke la version sur le serveur au démarrage et c'est lui même qui lance la mise à jour.
Install.exe ne sert plus à rien après la première installation.

Edit:
Je l'avais détaillé dans un des mes posts:

Ensuite, c'est le soft lui même qui fait le check de la nouvelle version (simple requête GET au serveur HTTP sur un fichier). En cas de différence il tente de lancer /INSTALL/wdsetup.exe qui lance wdsetup2.exe (je suis pas sûr de l'ordre mais on s'en tape).
Alors comment le soft fait'il pour faire le check online comme on ne l'a pas codé pour? Je dirai que le cas a été prévu dès l'origine par PCSOFT dans le code de lancement du projet si le soft trouve un certain fichier là où est l'exe.
En effet l'exe installé sur le client et celui que nous générons (en tant que dév) sur notre poste est le même, au bit près. En fait le check online se fait si le soft trouve "WDUPDATE.NET". Si on le supprime, le check online n'est pas exécuté.
S'il trouve ce fichier, il le lit, récupère dedans l'URL du serveur à checker etc... et le fait.

Donc c'est transparent pour le programmeur.

Contribution le : 16/07/2010 17:56
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
En faite le problème venait du serveur web, l'administrateur du site (société externe) avait oublié de mettre l'extension .net.

Je retourne à mes tests :)

a++

Contribution le : 16/07/2010 18:04
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Citation :

Oceans a écrit:
En faite le problème venait du serveur web, l'administrateur du site (société externe) avait oublié de mettre l'extension .net.

Je retourne à mes tests :)

a++


Ah lol ok :)

Citation :

Oceans a écrit:
Salut,

En ce qui concerne PC-SOFT, j'ai eu la réponse finale.

Voici la réponse :

Malheureusement, la version actuelle de WinDev ne permet pas actuellement de réaliser ce traitement. L'installation http ne gére par de connection http authentifiées.

Votre idée est intéressante. Je l’ai transmise en tant que suggestion à notre équipe de développement pour qu’ils étudient son implémentation dans une prochaine version.

Donc y à des chances pour que plus tard ça soit disponible.

En attendant je vais continuer de mon coté mes tests.

a+++

Hummm ok donc ils ont pas envie de donner le code source de leur projet visual Studio ^_^
Bah si ça marche comme ça en attendant ça ira :)

Contribution le : 16/07/2010 18:12
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Bon ça fonctionne pas... j'ai pourtant mis des traces partout ou il fait un HTTPRequete et il passe dans aucune des traces.

Au lancement du test il crée un fichier UPDxxx dans c:\documents and settings\user\Local settings\temp et il y à dans ce fichier comme quoi on à pas le droit d'accéder à la page.

J'ai beau fouiller dans le code je vois pas ou ça ce fait, mais une chose est sur c'est pas dans la procedure gsRecupFic, c'est la que j'ai mis des traces en info et j'ai rien qui apparait à l'écran.

a+++

Contribution le : 16/07/2010 20:30
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Citation :

Oceans a écrit:
Bon ça fonctionne pas... j'ai pourtant mis des traces partout ou il fait un HTTPRequete et il passe dans aucune des traces.

Au lancement du test il crée un fichier UPDxxx dans c:\documents and settings\user\Local settings\temp et il y à dans ce fichier comme quoi on à pas le droit d'accéder à la page.

J'ai beau fouiller dans le code je vois pas ou ça ce fait, mais une chose est sur c'est pas dans la procedure gsRecupFic, c'est la que j'ai mis des traces en info et j'ai rien qui apparait à l'écran.

a+++


De quoi tu parles? Du logiciel installé chez le client qui checke la nouvelle version ou de wdsetup lancé ensuite par le logiciel?

Contribution le : 16/07/2010 20:47
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
du logiciel installe chez le client qui vérifie s'il y à ou pas une nouvelle version et si c'est le cas il lance wdsetup avec la fenêtre DiffVersion (d'après mes souvenirs)

a++

Contribution le : 16/07/2010 21:19
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Ah ok.
Oui apparemment lui non plus ne semble pas supporter la syntaxe:
login:password@www.mon-site.com

Je suis en train de voir si je peux adapter ma classe pour remplacer le check dans le logiciel.

Contribution le : 16/07/2010 21:55
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Je suppose que c'est le fameux WDRelance qui vérifie et qui fait la connexion HTTP :)

dit moi que je brule mdrr

a++

Contribution le : 16/07/2010 21:59
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
En gros ce que doit faire ce fameux programme il doit récupérer la version du wdupdate.net qui est avec l'appli, se connecte au serveur http, vérifie la version qui est dans le fichier wdupdate.net qui se situe dans INSTALL et si c'est différent il exécute wdsetup.

Un truc du genre.

a+++

Contribution le : 16/07/2010 22:05
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Quelle merde :( Sérieux...
En fait j'ai adapté ma classe et ça marche le client récupère la version sur le site en revanche je ne peux pas lancer correctement wdsetup.exe car ils partagent des infos en mémoire via OpenFileMappingA ou mailslot...

le soft client récupère le wupdate.net et lance wdsetup qui lance wdsetup2 mais ils se partagent tous des infos entre eux en mémoire :(

Contribution le : 16/07/2010 23:14

Edité par lmame sur 16/7/2010 23:58:19
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Bon de mon côté j'en ai "un peu" marre de leur usine à gaz et de voir comment marche leur mailslot.
Je te passe la classe que j'ai faite et comment l'utiliser dans ton soft client (classe cl_checkupdate):
http://www.lmame-bug.com/cl_checkupdate.rar


Ca c'est à mettre dans le code de ton projet (code du lancement du projet):
gclMyUpdate est une cl_checkupdate


//on lance le procédure de maj.
IF gclMyUpdate:init() THEN
			
	//téléchargement du fichier d'update.
	IF gclMyUpdate:download() THEN
		
		//comparaison du fichier téléchargé.
		IF gclMyUpdate:compare_net() THEN
			//mise à jour facultative.
			IF gclMyUpdate:m_bDo_maj THEN
				IF OuiNon("Une mise à jour facultative est disponible, voulez vous l'installer?") THEN
					gclMyUpdate:launch_wdsetup()
				END
				
			END
			
			//mise à jour obligatoire.
			IF gclMyUpdate:m_bForce_maj THEN
				Info("Une mise à jour obligatoire est disponible pour ce logiciel, elle va être téléchargée")
				gclMyUpdate:launch_wdsetup()
				//Le ferme devrait être inutile, mais bon... on sait jamais.
				Ferme
			END
			
		END
		
	END
	
END


En gros avec ça le client lit le fichier local "LMA_UPDATE.NET" (pas celui du dossier INSTALL, celui dans le même dossier que l'exe du soft client) qui est exactement le même que le "WDUPDATE.NET" sauf que j'ai rajouté deux entrées LOGIN et PASSWORD (même principe que pour mon install.exe).
Tu peux à la rigueur le nommer pareil, WDUPDATE.NET. Le premier check pcsoft va échouer car il ne pourra pas télécharger le fichier car celui-ci est protégé par un login / password sur le serveur et ensuite mon code passera derrière.

Ca récupère le fichier:
SERVEUR/CHEMIN/INSTALL/WDUPDATE.NET (avec login et password).
Ca le sauve dans le dossier INSTALL du client sous le nom "test_update.net" et le compare ensuite avec les valeurs qu'il a lue dans le LMA_UPDATE.NET (versions etc...) pour voir s'il faut faire une maj optionnelle ou obligatoire.
En cas donc il lance alors wdsetup avec la bonne ligne de commande.

Après, je pense qu'il faut virer la partie "mapping" et "mailslot" côté wdsetup (cherche les appelDLL) et tout simplement récupérer aussi le nouveau WDUPDATE.NET côté serveur et faire la maj.
Ca devrait être possible sans trop de mal.
Voire même tu peux passer les infos de la version en cours directement par la ligne de commande j'imagine.

Franchement je me demande pourquoi ils se sont pris la tête avec un tel système surtout si on peut pas y mettre les mains :(


Edit:
Si tu veux débugger le wdsetup tu peux rajouter ça dans le Win.ini:
[WDSETUP]
Debug=1
XTraceFen=1
XTrace=1


Ca écrira un dump, un fichier de log dans c:\temp\ et ça affichera les infos de debug dans une fenêtre trace.
Pas besoin de recompiler wdsetup pour la prise en charge dès que tu modifies le win.ini c'est bon :)

Contribution le : 16/07/2010 23:49
Créer un fichier PDF de la contribution Imprimer


Re: Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Oui il y à de quoi être déboussolé par cette complexité.

D'après ce que j'ai vu (grâce à mon pare feu) PC-SOFT patch l'exécutable pour y ajouter de quoi qui fait la connexion et la vérification. Donc ça doit ce faire durant WDSetup.

Mais j'avoue qu'il y à de quoi en perdre son latin devant tout ça, ils auraient pu faire plus simple.

a+++

Contribution le : 17/07/2010 15:26
Créer un fichier PDF de la contribution Imprimer


Re: Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Citation :

Oceans a écrit:
Oui il y à de quoi être déboussolé par cette complexité.

D'après ce que j'ai vu (grâce à mon pare feu) PC-SOFT patch l'exécutable pour y ajouter de quoi qui fait la connexion et la vérification. Donc ça doit ce faire durant WDSetup.

Mais j'avoue qu'il y à de quoi en perdre son latin devant tout ça, ils auraient pu faire plus simple.

a+++


Euh quel exe est patché?
Le logiciel installé chez ton client?
Il est exactement le même que ce soit la version installée par install.exe + Wdsetup ou celle générée par Windev 15 pour tes tests sur ta machine de développement, il n'est pas patché j'ai comparé bit à bit.

Il (ou une DLL Windev lancée au démarrage) détecte simplement le wdupdate.net dans le même dossier que l'exe au lancement et si ce fichier est trouvé il lance la procédure de mise à jour (en tous cas le check). C'est transparent pour l'utilisateur et le programmeur.

Contribution le : 17/07/2010 17:19
Créer un fichier PDF de la contribution Imprimer


Re: [Projet Abandonné] Live Update
Animateur WDF
Inscrit:
05/06/2003 14:23
De Québec
Post(s): 511
Salut,

Bon j'abandonne, trop compliqué à faire. Je vais attendre sagement que PC-SOFT fasse le développement.

Je vais demander à la société qui va héberger de mettre ça sans login ni mot de passe dans un environnement à part.

a+++

Contribution le : 19/07/2010 15:20
Créer un fichier PDF de la contribution Imprimer


Re: [Projet Abandonné] Live Update

Inscrit:
19/11/2002 12:20
Post(s): 390
Ok :)

Contribution le : 19/07/2010 17:42
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant
« 1 (2) 3 »




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2