Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 14 sur 14
  1. #1
    Membre Expert
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    juillet 2002
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    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 214
    Points : 1 282
    Points
    1 282

    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

  2. #2
    Membre du Club
    Inscrit en
    février 2003
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : février 2003
    Messages : 138
    Points : 58
    Points
    58

    Par défaut

    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.

  3. #3
    Membre Expert
    Avatar de Harry
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    juillet 2002
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    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 214
    Points : 1 282
    Points
    1 282

    Par défaut

    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

  4. #4
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut

    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 !!

  5. #5
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 050
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

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

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 050
    Points : 14 266
    Points
    14 266

    Par défaut

    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

  6. #6
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut

    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

  7. #7
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 050
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

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

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 050
    Points : 14 266
    Points
    14 266

    Par défaut

    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

  8. #8
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut

    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...)

  9. #9
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 050
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

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

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 050
    Points : 14 266
    Points
    14 266

    Par défaut

    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

  10. #10
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut


    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é !!

  11. #11
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 050
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

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

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 050
    Points : 14 266
    Points
    14 266

    Par défaut

    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

  12. #12
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut

    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 !!

  13. #13
    Expert Confirmé Sénior Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    juillet 2006
    Messages
    10 050
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

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

    Informations forums :
    Inscription : juillet 2006
    Messages : 10 050
    Points : 14 266
    Points
    14 266

    Par défaut


    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

  14. #14
    Invité régulier
    Profil pro
    Développeur informatique
    Inscrit en
    février 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

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

    Par défaut

    n'importe quoi, j'ai dit le contraire de ce que j'ai fait : j'ai mis smooth à false, c'était à true

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •