Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Pages: 1
Bonjour,
J'ai réalisé un OCX en vb6 avec 3 événements.
Quand j'intègre cet OCX dans mon projet en pb10.5 (4523), il est bien reconnu. Je vois bien tous les événements mais quand ces événements adviennent, pb ne les voit pas, rien ne se passe.
En revanche quand je teste cet OCX de la même façon au sein d'un projet VB, les événements sont bien remontés.
J'ai fait ce test à la fois sous XP sp2 et 2000 sp4
Hors ligne
Je progresse un peu.
Mon OCX est un serveur de sockets qui utilise lui-même l'OCX winsock.
Les événements généré par mon OCX remontent jusqu'à powerbuilder jusqu'à ce qu'une connexion socket arrive. A partir de là, les événements ne remontent plus.
Hors ligne
Salut,
Difficile de t'aider, on ne sait pas si le problème vient du code PB ou VB.
T'as moyen de réécrire ton serveur de sockets en PB ? Soit avec le même ocx winsock, soit avec ça : http://www.topwizprogramming.com/freecode_winsock.html
VB6 n'étant plus supporté par Microsoft, il te faudra le migrer de toutes façons.
Hors ligne
shahin a écrit:
Salut,
Difficile de t'aider, on ne sait pas si le problème vient du code PB ou VB.
J'ai trouvé un workaround mais même je ne sais toujours pas dire qui détient le problème.
Mon OCX instancie dynamiquement un nouveau winsock pour gérer chaque nouvelle connexion. C'est à partir de là que les événements n'étaient plus remontés. J'ai donc créé un pool statique de winsock et ça fonctionne.
Je ne saurais dire si c'est l'instantiation d'un winsock ou si l'instantiation tout court qui entraine ce comportement.
Tout ce que je peux dire, c'est que l'OCX sans modif fonctionnait en Powerbuilder 10.1 et fonctionne avec vb.
shahin a écrit:
T'as moyen de réécrire ton serveur de sockets en PB ?
Je suis sur un incident de prod suite à upgrade, difficile d'envisager de réécrire qq chose en un temps compatible avec l'attente du client, même si j'y ai pensé.
shahin a écrit:
Soit avec le même ocx winsock, soit avec ça :
http://www.topwizprogramming.com/freecode_winsock.html
VB6 n'étant plus supporté par Microsoft, il te faudra le migrer de toutes façons.
La migration est un projet à part entière qui dépasse le coût supposé d'un upgrade. C'est toujours le même problème des vieilles technos (je parle de la 10.5, je ne pe prononce pas sur les versions récentes que je ne connais pas)...
Ce que je retiens, c'est qu'avec un L4G quel qu'il soit, mieux vaut ne pas trop sortir des clous.
En tout cas merci pour ce message.
Hors ligne
Pages: 1