Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > Delphi > Composants VCL
Composants VCL Utilisation des différents composants VCL (Visual Component Library)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 27/04/2009, 12h01   #1
Harry
Membre Expert
 
Avatar de Harry
 
Homme
Ingénieur développement logiciels
Inscription : juillet 2002
Messages : 1 208
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2002
Messages : 1 208
Points : 1 319
Points : 1 319
Par défaut ScrollBox qui freeze : compatibilité Win 2003 ?

Bonjour,

J'utilise un ScrollBox pour contenir un planning composé de nombreux StringGrid crées dynamiquement.

La ScrollBox permettant de se déplacer vers le haut et vers le bas.

Je n'ai aucun problème de fonctionnement sous 2000 ou XP, de nombreux clients utilisent ce ScrollBox sans soucis. Sauf un. Ils sont sous Windows 2003 serveur et passent par un bureau à distance (TSE).

Eux c'est ok tant qu'ils touchent pas à la scroll bar (verticale). Dès qu'ils y touchent tout se bloque. Le CPU ne semble pas particulièrement utilisé.

Savez vous si le composant ScrollBox à des problèmes de compatibilité avec 2003 serveur ou autre ?

Merci
__________________

Attention le .NET sur PDA peut causer des chutes de cheveux
Harry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2009, 15h16   #2
dd16
Membre du Club
 
Inscription : février 2003
Messages : 138
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 138
Points : 53
Points : 53
Bonjour

J'utilise des scrollbox sous windows 2003 en TSE et en Citrix, je n'ai pas de plantage. Je travaille avec delphi 7 entreprise.
dd16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2009, 16h01   #3
Harry
Membre Expert
 
Avatar de Harry
 
Homme
Ingénieur développement logiciels
Inscription : juillet 2002
Messages : 1 208
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juillet 2002
Messages : 1 208
Points : 1 319
Points : 1 319
Merci pour ton témoignage dd16,

Je n'avais pas précisé mais je suis sous Delphi 4.

J'ai accès à un autre serveur 2003, je vais pouvoir faire des tests (hors TSE) cet après midi.

Edit : Après test même problème sur ce nouveau serveur 2003. Je me demande ce qui peut bien causer ce problème.
__________________

Attention le .NET sur PDA peut causer des chutes de cheveux
Harry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 10h31   #4
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8
Bonjour,

J'ai un problème identique : Delphi 7 et Windows server 2008. En local, mes scrollbox fonctionnent parfaitement et en TSE, il arrive régulièrement que l'application fige quand on veut utiliser les barres de défilement.
Qui a déjà rencontré ce problème et comment le résoudre ? Déjà que quand on réduit l'application, elle disparaît dans les 10 secondes....
Merci !!
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 14h52   #5
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239
alf_idsoft, tu réouvres un sujet vieux de 3 ans !

Surtout qu'entre Server 2003 et Server 2008, il y a des différences notables !
Il y a 2 patch pour D7, que l'on trouve sur le forum, qui change le comportement des certains composants liés à Vista (2008 R1 étant un 6.0 comme Vista, et 2008 R2 étant un 6.1 comme Seven)

Avec D7, j'ai surtout eu des problèmes de "disparition" de TLabel dans les ScrollBox mais aussi bien en direct qu'un bureau à distance, mon collègue a réglé ce soucis avec les patch mentionnés (tu les trouves aussi chez Embarcadero, il faut compte chez eux pour télécharger)

Ces anomalies VCL sont corrigées à partir de RAD 2007
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 15h53   #6
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8
Wé, j'ai sorti la pelle

Je vais faire installer les KB et voir ce que ça donne
C'est curieux car l'application marche bien sur mon windows 7

Merci
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 15h57   #7
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239
Le thème en général, n'est pas le même, sur un Server 2008, tu utilises un thème léger et performant, alors que tu la WorkStation Seven, tu peux te permettre plus d'extravagance

Tu n'as pas précisé 2008 R1 ou R2 ?
Peut-être un soucis précis en 6.0 qui n'est plus présent en 6.1

Quand j'évoque les patch, c'est des fichiers Pascal à intégrer au projet pas des KB Microsoft !
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 16h13   #8
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8
2008 R1, "windows 6.0.6..."
C'est surtout un soucis qu'on a aujourd'hui mais qu'on n'avait visiblement pas hier ! Pas de mise à jour du programme, ni du windows server... On va voir si cela fonctionne mieux après un reboot d'ici demain matin. Mais on n'a déjà eu le problème, puis il a disparu, sans qu'on modifie nos programmes. Pas moyen de mettre la main sur l'admistrateur qui fait joujou

Des patches Delphi ?
En tout cas, dans tout ce que je lis, je ne vois pas le rapport avec mes scrollbox qui figent (pb d'UAC, de fonts...)
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 16h21   #9
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239
C'est pas vraiment des patch, juste des fichiers PAS à télécharger qui dans la section initialisation hack deux trois trucs !

Long sleeping in WM_VSCROLL and WM_HSCROLL
Semble que la propriété Smooth soit la coupable selon cette QC et le TSE doit augmenter le problème puisqu'un serveur étant rarement rebooté (plus de 25 jours car GetCurrentTime\GetTickCount ne fourni que 49,7 jours maximum sur un Cardinal, et donc que 25 jours sur un LongInt)

Donc
. soit tu mets Smooth à false (simple et rapide)
. soit tu modifies Forms.pas (a tes risques et périls)

En lisant la QC Long sleeping in WM_VSCROLL and WM_HSCROLL, on peut en déduire les modifications suivantes de TControlScrollBar.ScrollMessage pour éviter un Sleep (le freeze) :

Code :
  CurrentTime, StartTime, ElapsedTime: Longint;
devient
Code :
  CurrentTime, StartTime, ElapsedTime: DWORD;
puis

Code :
1
2
3
4
 
StartTime := GetCurrentTime;
ElapsedTime := StartTime - CurrentTime;
if ElapsedTime < FDelay then Sleep(FDelay - ElapsedTime);
devient
Code :
1
2
3
4
 
StartTime := GetTickCount; // API en DWORD !
ElapsedTime := StartTime - CurrentTime;
if ElapsedTime < DWORD(FDelay) then Sleep(DWORD(FDelay) - ElapsedTime);
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 17h09   #10
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8

bingo, le serveur a été redémarré il y a 27 jours !
Je crois que je vais demander un reboot tous les 20 jours (ça fait pas de mal)

Qu'est-ce que le smooth ? Je pensais que c'était l'affichage du contenu d'une fenêtre lors de son déplacement, fonctionnalité windows. Or celle-ci est désactivée sur le TSE.

En tout cas, merci, voilà une curiosité !!
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2012, 17h58   #11
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239
Le TScrollBox.HorzScrollBar.Smooth \ VertScrollBar.Smooth semble être géré par le code Delphi de ScrollMessage, justement avec une bidouille de Sleep et de Scroll répété !
Cela semble être conçu pour défiler une section en plusieurs fois, je ne vois pas bien pourquoi
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2012, 09h10   #12
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8
Ah ok, je ne connaissais pas vraiment cette propriété. Par précaution, j'ai mis smooth à true, je ne vois pas de différence notable à l'affichage.

Même si c'est pas moi qui ait lancé le sujet, on peut considéré le problème comme résolu, et il y a 3 manières de voir les choses

Merci !!
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2012, 10h11   #13
ShaiLeTroll
Expert Confirmé Sénior
 
Avatar de ShaiLeTroll
 
Homme
Développeur C++\Delphi
Inscription : juillet 2006
Messages : 9 190
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Développeur C++\Delphi
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : juillet 2006
Messages : 9 190
Points : 13 239
Points : 13 239

Il faut la mettre à false pour les deux HorzScrollBar.Smooth et VertScrollBar.Smooth
Tu avais le bug alors que Smooth était à false ??? là c'est génant !
__________________
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !

L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Halte à la ségrégation des Cinémas, VO sur Paris, VF en Banlieue, Abonnement résilié !
ShaiLeTroll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2012, 10h23   #14
alf_idsoft
Invité régulier
 
Développeur informatique
Inscription : février 2007
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2007
Messages : 24
Points : 8
Points : 8
n'importe quoi, j'ai dit le contraire de ce que j'ai fait : j'ai mis smooth à false, c'était à true
alf_idsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 18h04.


 
 
 
 
Partenaires

Hébergement Web