IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Utilisez-vous les API Windows ?

Votants
20. Vous ne pouvez pas participer à ce sondage.
  • Oui, souvent

    5 25,00%
  • Oui, rarement

    11 55,00%
  • Plus maintenant (Pourquoi ?)

    0 0%
  • Non, jamais

    3 15,00%
  • Sans avis

    1 5,00%
WinDev Discussion :

Utilisez-vous les API Windows et de quelle façon ?


Sujet :

WinDev

  1. #41
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 278
    Points : 2 151
    Points
    2 151
    Par défaut
    Je pense que vous être très mal placé pour parler de post auto-satisfait...

    Franchement je pense que les autres participants ne sont pas là pour vous fournir du code mais pour partager et discuter ! Ils ne s'efforcent pas de montrer qu'ils connaissent le C mais vous expliquent la forte importance d'un minimum de connaissance pour arriver à faire ce que vous voulez : une collection de fonction permettant un accès simplifié au API Windows...
    Ensuite vous élargissez le débat en parlant d'API Web.... puis maintenant de DLL d'une façon générique... bon bref vous partez dans tout les sens et plus personne ne vous suis.

    Enfin, vu votre manque d'implication (avez vous lu la doc d'Hibernatus ?, avez-vous consulter la page d'aide pour les conversions de types ?), je vous suggère de vous contenter des API "surcouché" par Windev et d’arrêter de rêver !

    Je n'ai rien apporté au débat mais je remercie grandement les "experts" API qui nous ont abreuvés de leurs connaissances.

    Bon courage à ceux qui essayeront de parler avec vous. Moi aussi j'arrête.
    SQL : le véritable Esperanto

    "Les patates à ta tata épatent ton tonton mais les pates aux thons à ton tonton épatent pas ta tata." (Michel Souris)

    MERCI DE NE PAS M'ENVOYER DE MESSAGE PRIVE POUR DES QUESTIONS TECHNIQUES SANS MON ACCORD !

  2. #42
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 954
    Points : 9 284
    Points
    9 284
    Par défaut
    hello,
    je crois que Jacquou va tous nous vaincre par abandon . WDKyle pour que je te réponde il faudrait mieux ouvrir une nouvelle discussion avec ton dernier message plutôt (pas le chien) que de continuer ici.

    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #43
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Citation Envoyé par jdsetls Voir le message
    ...Comme j'ai peu de réponses concrètes, et toutes sont les bienvenues, je supporte, encore qu'avec un certain plaisir d'anthropologue, des collections de petits maîtres (pardonnez le fond de ma pensée) qui s'efforcent de montrer qu'ils connaissent le C mais qui sont incapables d'aller jusqu'au bout pour fournir quelque chose d'utile au débutant comme moi, et aux autres....
    Tu n'auras aucune réponse concrète tant que tu demanderas que l'on te donne quelque chose sans que tu n'es toi même expérimenté et posté ce que tu as fais avec des questions précises à la clé.

    Par ailleurs, tu recherches au départ des informations sur comment accéder au API Windows et Hibernatus te donne gentiment un document interne qu'il a pondu. Celui là ne te convient pas, et tu reviens critiquer. Je ne suis pas sûr que le "petit maître" daigne te répondre une deuxième fois, vu le peu d'estime que tu apportes à ce qu'il te propose.

    Citation Envoyé par jdsetls Voir le message
    Pourquoi personne jusqu'à présent n'a prouvé ses connaissances en fournissant une liste des API qui sont intéressantes pour les windéviens et qu'il conviendrait de rendre compréhensibles facilement et tout le monde dirait Bravo ! Et Merci !
    On a rien a prouvé, ni à toi, ni a qui que ce soit, on est là pour échanger et pour aider sur des points précis clairement exprimé. Apparemment tu voudrais du tout cuit et cela ne fonctionne pas comme ça sur un forum d'échange.

    Pour résumé, soit tu fait un effort, soit tu ferais bien d'aller voir ailleurs si l'herbe est plus verte.

    Je t'autorise à ne pas pardonner le fond de ma pensée.
    Si ce message vous a semblé utile, il est possible qu'il soit utile à d'autres personnes. Pensez au . Et n'oubliez pas le le moment venu !

    On n'a pas à choisir si l'on est pour ou contre la décroissance, elle est inéluctable, elle arrivera qu'on le veuille ou non.

  4. #44
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Premiers résultats concrets avec les API
    Bonjour,
    J'ai pioché selon la méthode inductive et je suis content.
    Il n'est pas si difficile d'analyser les API, de comprendre leurs variables et leur structure et d'en tirer énormément d'informations.
    Dans l'exemple qui suit, nous avons simplement compris la signification des variables et changé une constante ou adresse dans une API simple.

    Nous partons du court exemple précédent permettant de lire la vitesse de la souris.

    Le plus difficile a été de trouver un endroit où soient données les valeurs des paramètres de type SPI_xxxx qui constituent le coeur même des informations nécessaires.
    Dès lors, partant de la valeur d'origine UIAction = 0x00070, il nous suffit de décliner les possibles, mieux on constate assez vite qu'il n'est pas nécessaire d'utiliser une valeur hexadécimale.
    Par conséquent, plutôt que d'écrire uiaction = 0x0070
    on écrira, plus simple : uiaction = 112
    Selon ces principes, voici quelques valeurs de constantes à retenir, en décimal :

    10 donne la vitesse du clavier
    16 répond 1 si l'économiseur d'écran est paramétré pour être actif
    112 exemple d'origine, donne une valeur de 1 à 20 correspondant à la vitesse de la souris

    Les constantes correspondantes possèdent l'attribue GET pour récupérer une information et SET pour attribuer une valeur à un paramètre.

    Par exemple et si on préfère on pourra continuer à utiliser l'hexadécimal pour déterminer que la souris est ou non ombrée, avec
    SPI_SETDROPSHADOW
    0x1025

    ou encore :
    SPI_GETMOUSETRAILS
    0x005E
    ... donne le nombre de trace laissées par la souris (dans mon cas 7)

    Rappel du code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Zone_de_résultats = ""
    RetourFonction est un booléen // Type C :BOOL
    uiAction est un entier sans signe // Type C :UINT
    uiParam est un entier sans signe // Type C :UINT
    pvParam est un entier système // Type C :PVOID
    fWinIni est un entier sans signe // Type C :UINT
    nRésultat est un entier
    spi_getmouse est un entier 
     
    uiParam = 0
    uiAction = 0x005E // 0x000A  //Action demandée par exemple  0x0070 ou n'importe laquelle des valeurs 
                                               //disponibles, nous avons désormais des centaines d'API disponibles
                                               //pour le prix d'une
    nRésultat = 0
    pvParam =  &nRésultat 
    fWinIni = 0
     
    RetourFonction=API("USER32","SystemParametersInfoA",  uiaction, uiParam,pvParam,fWinIni)
    Zone_de_résultats = "UIParam = " + uiparam + cr + "UIAction (correspond à une constante définissant une action) = " + uiaction + cr + pvparam  + cr + fwinini + cr + "Mon_résultat = "  + nrésultat
    avec pour résultat :
    UIParam = 0
    UIAction (correspond à une constante définissant une action) = 94
    40252860
    0
    Mon_résultat = 7

    Donc sept traces laissées par la souris. UI action est donné à 94; soit le décimal pour 0x005E

    A mon avis nous avons avancé à grand pas, puisque ce n'est pas une API que nous connaissons, mais toute une série.
    Plus dans un prochain post.
    Cordialement
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  5. #45
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Les APIs rendues simples, traces de souris
    Bonjour,
    Les APIs commencent désormais à être simple, puisqu'il existe à partir d'une seule syntaxe, jusqu'à des centaines de déclinaisons possibles. Des centaines d'API différentes, sont soudain disponibles.
    Nous avons vu au post précédent des exemples de fonctions Get qui fournissent une information.
    Voici un exemple de fonction SET qui attribue une valeur.

    Bonne surprise, lorsque dans le panneau de configuration je mets le curseur à droite, au maximum, l'API de vérification me donne une valeur de 7 traces.
    Au contraire, avec la fonction SET je peux monter à seize traces de souris, ce dont j'avais précisément besoin.

    Le code devient alors :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Zone_de_résultats = ""
    RetourFonction est un booléen // Type C :BOOL
    uiAction est un entier sans signe // Type C :UINT
    uiParam est un entier sans signe // Type C :UINT
    pvParam est un entier système // Type C :PVOID
    fWinIni est un entier sans signe // Type C :UINT
    nRésultat est un entier
     
    uiParam = 16
    uiAction = 0x005D // Action demandée ici 12 traces de souris
    fWinIni = 1 //autorise la modification : indispensable
     
    RetourFonction=API("USER32","SystemParametersInfoA",  uiaction, uiParam,pvParam,fWinIni)
    Zone_de_résultats = "UIParam = " + uiparam + cr + "UIAction (correspond à une constante définissant une action) = " + uiaction + cr + pvparam  + cr + fwinini + cr + "Mon_résultat = "  + UIParam
    Comme on le voit le code a été simplifié et c'est cette fois la valeur UIParam qui a été établie à 16.

    Le changement de code est suggéré en ces termes :

    SPI_SETMOUSETRAILS
    0x005D
    Enables or disables the Mouse Trails feature, which improves the visibility of mouse cursor movements by briefly showing a trail of cursors and quickly erasing them.
    To disable the feature, set the uiParam parameter to zero or 1. To enable the feature, set uiParam to a value greater than 1 to indicate the number of cursors drawn in the trail.

    Ceci d'une façon que chacun pourra consulter facilement à l'adresse :
    http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx
    La suite au prochain post où nous présenterons différentes connaissances de base concernant les API, leur syntaxe et leur structure.
    Cordialement

    NB : Le domaine étant très riche, à votre tour de m'aider à explorer et à mettre à la disposition de tous, comme prévu, une vaste bibliothèque d'APIs.
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  6. #46
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Longue liste décimale des APIs disponibles selon le modèle simple
    Bonjour,
    La syntaxe se trouvant moins tchernobylesque lorsque les valeurs sont données en décimal plutôt qu'en hexadécimal, en voici la liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    SPI_GETBEEP = 1
    SPI_SETBEEP = 2
    SPI_GETMOUSE = 3
    SPI_SETMOUSE = 4
    SPI_GETBORDER = 5
    SPI_SETBORDER = 6
    SPI_GETKEYBOARDSPEED = 10
    SPI_SETKEYBOARDSPEED = 11
    SPI_LANGDRIVER = 12
    SPI_ICONHORIZONTALSPACING = 13
    SPI_GETSCREENSAVETIMEOUT = 14
    SPI_SETSCREENSAVETIMEOUT = 15
    SPI_GETSCREENSAVEACTIVE = 16
    SPI_SETSCREENSAVEACTIVE = 17
    SPI_GETGRIDGRANULARITY = 18
    SPI_SETGRIDGRANULARITY = 19
    SPI_SETDESKWALLPAPER = 20
    SPI_SETDESKPATTERN = 21
    SPI_GETKEYBOARDDELAY = 22
    SPI_SETKEYBOARDDELAY = 23
    SPI_ICONVERTICALSPACING = 24
    SPI_GETICONTITLEWRAP = 25
    SPI_SETICONTITLEWRAP = 26
    SPI_GETMENUDROPALIGNMENT = 27
    SPI_SETMENUDROPALIGNMENT = 28
    SPI_SETDOUBLECLKWIDTH = 29
    SPI_SETDOUBLECLKHEIGHT = 30
    SPI_GETICONTITLELOGFONT = 31
    SPI_SETDOUBLECLICKTIME = 32
    SPI_SETMOUSEBUTTONSWAP = 33
    SPI_SETICONTITLELOGFONT = 34
    SPI_GETFASTTASKSWITCH = 35
    SPI_SETFASTTASKSWITCH = 36
    SPI_SETDRAGFULLWINDOWS = 37
    SPI_GETDRAGFULLWINDOWS = 38
    SPI_GETNONCLIENTMETRICS = 41
    SPI_SETNONCLIENTMETRICS = 42
    SPI_GETMINIMIZEDMETRICS = 43
    SPI_SETMINIMIZEDMETRICS = 44
    SPI_GETICONMETRICS = 45
    SPI_SETICONMETRICS = 46
    SPI_SETWORKAREA = 47
    SPI_GETWORKAREA = 48
    SPI_SETPENWINDOWS = 49
    SPI_GETHIGHCONTRAST = 66
    SPI_SETHIGHCONTRAST = 67
    SPI_GETKEYBOARDPREF = 68
    SPI_SETKEYBOARDPREF = 69
    SPI_GETSCREENREADER = 70
    SPI_SETSCREENREADER = 71
    SPI_GETANIMATION = 72
    SPI_SETANIMATION = 73
    SPI_GETFONTSMOOTHING = 74
    SPI_SETFONTSMOOTHING = 75
    SPI_SETDRAGWIDTH = 76
    SPI_SETDRAGHEIGHT = 77
    SPI_SETHANDHELD = 78
    SPI_GETLOWPOWERTIMEOUT = 79
    SPI_GETPOWEROFFTIMEOUT = 80
    SPI_SETLOWPOWERTIMEOUT = 81
    SPI_SETPOWEROFFTIMEOUT = 82
    SPI_GETLOWPOWERACTIVE = 83
    SPI_GETPOWEROFFACTIVE = 84
    SPI_SETLOWPOWERACTIVE = 85
    SPI_SETPOWEROFFACTIVE = 86
    SPI_SETCURSORS = 87
    SPI_SETICONS = 88
    SPI_GETDEFAULTINPUTLANG = 89
    SPI_SETDEFAULTINPUTLANG = 90
    SPI_SETLANGTOGGLE = 91
    SPI_GETWINDOWSEXTENSION = 92
    SPI_SETMOUSETRAILS = 93
    SPI_GETMOUSETRAILS = 94
    SPI_SETSCREENSAVERRUNNING = 97
    SPI_SCREENSAVERRUNNING = SPI_SETSCREENSAVERRUNNING
    SPI_GETFILTERKEYS = 50
    SPI_SETFILTERKEYS = 51
    SPI_GETTOGGLEKEYS = 52
    SPI_SETTOGGLEKEYS = 53
    SPI_GETMOUSEKEYS = 54
    SPI_SETMOUSEKEYS = 55
    SPI_GETSHOWSOUNDS = 56
    SPI_SETSHOWSOUNDS = 57
    SPI_GETSTICKYKEYS = 58
    SPI_SETSTICKYKEYS = 59
    SPI_GETACCESSTIMEOUT = 60
    SPI_SETACCESSTIMEOUT = 61
    SPI_GETSERIALKEYS = 62
    SPI_SETSERIALKEYS = 63
    SPI_GETSOUNDSENTRY = 64
    SPI_SETSOUNDSENTRY = 65
    SPI_GETSNAPTODEFBUTTON = 95
    SPI_SETSNAPTODEFBUTTON = 96
    SPI_GETMOUSEHOVERWIDTH = 98
    SPI_SETMOUSEHOVERWIDTH = 99
    SPI_GETMOUSEHOVERHEIGHT = 100
    SPI_SETMOUSEHOVERHEIGHT = 101
    SPI_GETMOUSEHOVERTIME = 102
    SPI_SETMOUSEHOVERTIME = 103
    SPI_GETWHEELSCROLLLINES = 104
    SPI_SETWHEELSCROLLLINES = 105
    SPI_GETMENUSHOWDELAY = 106
    SPI_SETMENUSHOWDELAY = 107
    SPI_GETSHOWIMEUI = 110
    SPI_SETSHOWIMEUI = 111
    SPI_GETMOUSESPEED = 112
    SPI_SETMOUSESPEED = 113
    SPI_GETSCREENSAVERRUNNING = 114
    SPI_GETDESKWALLPAPER = 115
    SPI_GETACTIVEWINDOWTRACKING = &H1000
    SPI_SETACTIVEWINDOWTRACKING = &H1001
    SPI_GETMENUANIMATION = &H1002
    SPI_SETMENUANIMATION = &H1003
    SPI_GETCOMBOBOXANIMATION = &H1004
    SPI_SETCOMBOBOXANIMATION = &H1005
    SPI_GETLISTBOXSMOOTHSCROLLING = &H1006
    SPI_SETLISTBOXSMOOTHSCROLLING = &H1007
    SPI_GETGRADIENTCAPTIONS = &H1008
    SPI_SETGRADIENTCAPTIONS = &H1009
    SPI_GETKEYBOARDCUES = &H100A
    SPI_SETKEYBOARDCUES = &H100B
    SPI_GETMENUUNDERLINES = SPI_GETKEYBOARDCUES
    SPI_SETMENUUNDERLINES = SPI_SETKEYBOARDCUES
    SPI_GETACTIVEWNDTRKZORDER = &H100C
    SPI_SETACTIVEWNDTRKZORDER = &H100D
    SPI_GETHOTTRACKING = &H100E
    SPI_SETHOTTRACKING = &H100F
    SPI_GETMENUFADE = &H1012
    SPI_SETMENUFADE = &H1013
    SPI_GETSELECTIONFADE = &H1014
    SPI_SETSELECTIONFADE = &H1015
    SPI_GETTOOLTIPANIMATION = &H1016
    SPI_SETTOOLTIPANIMATION = &H1017
    SPI_GETTOOLTIPFADE = &H1018
    SPI_SETTOOLTIPFADE = &H1019
    SPI_GETCURSORSHADOW = &H101A
    SPI_SETCURSORSHADOW = &H101B
    SPI_GETUIEFFECTS = &H103E
    SPI_SETUIEFFECTS = &H103F
    SPI_GETFOREGROUNDLOCKTIMEOUT = &H2000
    SPI_SETFOREGROUNDLOCKTIMEOUT = &H2001
    SPI_GETACTIVEWNDTRKTIMEOUT = &H2002
    SPI_SETACTIVEWNDTRKTIMEOUT = &H2003
    SPI_GETFOREGROUNDFLASHCOUNT = &H2004
    SPI_SETFOREGROUNDFLASHCOUNT = &H2005
    SPI_GETCARETWIDTH = &H2006
    SPI_SETCARETWIDTH = &H2007
    Cordialement,
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  7. #47
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    La liste que vous affichez, n'énumère pas des API disponibles, mais les propriétés qui peuvent être listées ou modifiées grâce à l'utilisation de la function SystemParametersInfo qui est le nom de l'API qui permet de lire ou modifier ces propriétés.

  8. #48
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Le changement de paramètre provoque un changement d'API
    Bonjour,
    En gardant la même syntaxe et en changeant les nombres conformément à la liste, vous passez d'une API à une autre.
    Vitesse de la souris
    Nombre de traces
    pour n'en citer que deux sur plus de cent
    Cordialement
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  9. #49
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    Non vous passez d'une propriété à l'autre, pas d'une API à l'autre, les 2 mots désignent des choses biens différentes.
    Une propriété n'est pas une API.

    ...

  10. #50
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut API ou paramètres
    Bonjour,
    La question est intéressante car selon le paramètre UIAction, on adresse :
    - la souris,
    - l'image de fond d'écran,
    - la luminosité,
    - le clavier
    - les fonctions d'animation
    - le caret
    ...
    Alors une seule API peut-elle adresser autant de domaines différents ?
    N'est-ce pas plutôt la bibliothèque d'APIs ?
    En tout cas ce débat sémantique m'intéresse.
    Qu'en pensent les autres, sachant qu'à travers une variation de paramètres et une syntaxe presque identique (selon qu'il s'agit d'un GET ou d'un SET), on adresse des domaines différents.
    Alors, selon vous, API ou APIs ?
    Cordialement
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  11. #51
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    Les programmeurs bas niveau, utilisent le mot API (Application Programming Interface) chaque fois qu'ils utilisent une fonction disponible dans le Kit de développement (SDK) fourni par Microsoft pour créer des logiciels Windows.
    Toutes ces API sont d'ores et déjà documentées sur le site de MSDN, chacune dans sa propre catégorie (DLL), GDI32, KERNEL32, USER32, GDIPLUS, DWM, etc.

    Dit d'une autre façon, les API sont un ensemble de fonctions et de procédure normalisées que l'on peut utiliser avec le Framework natif de Windows, qui est disponible sur toutes les machines utilisant cet OS.

    Il ne s'agit pas d'un débat sémantique, voici ce que le résultat d'une simple recherche google avec "Windows API definition", vous donnera comme réponses
    http://fr.wikipedia.org/wiki/Windows_API
    http://fr.wikipedia.org/wiki/Interface_de_programmation
    http://www.techterms.com/definition/api
    etc.

  12. #52
    Membre émérite
    Avatar de DelphiManiac
    Homme Profil pro
    Homme à tout faire
    Inscrit en
    Mars 2002
    Messages
    1 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Homme à tout faire
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 147
    Points : 2 533
    Points
    2 533
    Par défaut
    Je confirme les dires de Patrice Terrier, une API est un ensemble de fonctions, classes, etc... que fourni un développeur à un autre développeur. Ce n'est pas une méthode ou un paramètre de méthode, l'API est l'ensemble.

    L'API que vous utilisez, dans ce contexte, est l'API WIN32 et cette API regroupe un nombre conséquent de méthodes et fonctions.
    Si ce message vous a semblé utile, il est possible qu'il soit utile à d'autres personnes. Pensez au . Et n'oubliez pas le le moment venu !

    On n'a pas à choisir si l'on est pour ou contre la décroissance, elle est inéluctable, elle arrivera qu'on le veuille ou non.

  13. #53
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 486
    Points : 875
    Points
    875
    Par défaut
    Pour être très précis SystemParametersInfo fait partie de la librairie User32.lib et elle est contenue dans la DLL User32.dll. Le terme Win32 désigne l'ensemble des DLLs destinées à la plateforme Windows 32-bit, la version 64-bit offre une compatibilité ascendante, cependant il existe des différences notables en particulier dans l'alignement des structures qui peut réserver bien des surprises en particulier dans les programmes qui manipulent directement les pointeurs.

    L'exemple "BIT tutor" que j'ai posté ici, montre la différence qu'il y a dans l'utilisation de la structure BITMAP entre la version 32-bit et la version 64-bit en particulier dans les déclarations WinDev, les programmeurs C et C++ n'ont pas ces problèmes car ils utilisent les headers tout fait qui sont livrés avec Visual Studio.

    L'outil WDAPI livré par PC-Soft est bien pratique, mais il comporte néanmoins un certain nombre d'erreurs. Par mesure de sécurité je conseille en // de faire une recherche sur MSDN, et en cas de différence toujours faire confiance à MSDN (après avoir lu les retours d'utilisateurs qui figurent à la fin de chaque article).

    La programmation bas niveau, nécessite une grande rigueur et des années de pratique, c'est pourquoi des outils comme WinDev ont du succès, car ils permettent de faire l'impasse sur l'apprentissage de l'API, jusqu'au jour... ou on ne trouve pas de solution WinDev toute faite.

    ...

  14. #54
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    c'est tout de même fou de ne pas écouter à ce point!

    méfiez vous Patrice, il va vous donner des cours sur les API d'ici peu !

  15. #55
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut La vitesse de la souris va de 1 à 16 (pas à 20)
    Bonjour,
    Dans de précédents posts, une erreur a été introduite.
    En vérifiant tout, j'ai observé que les appels de fonction de la souris répondaient Faux si l'on tentait d'introduire un paramètre de vitesse supérieur à 16.
    C'est le cas de la souris.
    Lorsqu'on teste les API dans l'ardoise magique on observe deux choses :
    - Lors de l'attribution d'une valeur de la souris, on constate immédiatement le résultat, soit une vitesse accrue de la souris, soit un ralentissement, soit un accroissement de la trace de la souris (pour mieux la repérer) soit une diminution. J'ai testé les valeurs 16 (rapide) et 4 (escargot).
    - Outre cette vérification immédiate, pour une prise en compte permanente du paramètre, la valeur de fwinini doit être à 1, ce qui correspond à une autorisation d'écriture. Et bien sur la valeur RetourFonction doit être vérifiée à 1.
    Cordialement

    nb: Je tiens à disposition de qui veut les codes et fenêtres de mon ardoise magique, en version composant et en version fenêtre.
    Ardoise magique = visualisation immédiate des tests de code. A la volée.
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  16. #56
    Membre averti
    Profil pro
    au repos
    Inscrit en
    Février 2013
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : Saint-Pierre-Et-Miq.

    Informations professionnelles :
    Activité : au repos

    Informations forums :
    Inscription : Février 2013
    Messages : 156
    Points : 331
    Points
    331
    Par défaut
    ce qui m'inquiète le plus chez jdsetls, c'est qu'il n'a pas l'air de tenir compte de ce qu'on lui dit, il est dans sa bulle et ne répond pas ou semble ne pas réagir à ce qu'on lui dit.

  17. #57
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Bulle... d'information
    Citation Envoyé par Nullosse Voir le message
    ce qui m'inquiète le plus chez jdsetls, c'est qu'il n'a pas l'air de tenir compte de ce qu'on lui dit, il est dans sa bulle et ne répond pas ou semble ne pas réagir à ce qu'on lui dit.
    Bonjour,
    Il est possible que je sois dans ma bulle cependant...
    On m'a dit que les API c'était compliqué (faux)
    Que c'était au delà de ma portée : la preuve, c'est facile mais verbeux, donc je généralise et je dispose avec facilité d'une liste de fonctions.
    On m'a dit que si j'avais réfléchi j'aurais compris que la vitesse de la souris allait de 1 à 20. Faux elle est limitée à 16.
    On m'a dit que je devais travailler et non pas attendre qu'on me donne les codes. Vrai, mais alors pourquoi poserais-je la question sur ce forum ?
    Ayant travaillé j'ai compris pourquoi on ne me répondait pas. Ceux qui ont donné des réponses partielles ne disposaient que de vérités limitées, fragmentées, ce qui leur interdisait l'esprit de synthèse.
    Je demandais des collections de fonctions API (en accord avec la formulation proposée pour API) facilement utilisables par tous.
    En conséquence, et cela semble fasciner le club des petits maîtres dandinants et autosatisfaits, les vieux sages ayant perdu leur esprit de découverte, ceux que je considère néanmoins comme des étouffeurs de la pensée, non seulement les API sont simples mais déclinables, voir les exemples sur les valeurs 112 et 113 (vitesse souris) et 93 et 94 (nombres de traces).
    Pourquoi ne m'a-t-on pas dit, sur un forum d'entraide, qu'il fallait mettre à Vrai le paramètre fwinini pour qu'une modif soit prise en compte ? Parce qu'on l'ignorait.
    Je rappelle que le but de ce sondage, qui connait un immense succès (1300 visites en quelques jours, plus de 50 messages), peut-être en raison de son aspect polémique, est d'offrir au lecteur des collections de fonctions API.
    Or aujourd'hui qu'ont fourni les étouffeurs de la pensée ?
    De mon côté j'ai montré, de façon claire, comment généraliser la lecture et surtout l'écriture des paramètres système.
    J'encourage tous les lecteurs de ce sondage à donner la liste et la syntaxe des API qu'ils utilisent et à détailler en quoi ils en sont satisfaits.
    Cordialement
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

  18. #58
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2009
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 278
    Points : 2 151
    Points
    2 151
    Par défaut
    Qu'il est mignon ce mini Don Quichotte des API...
    SQL : le véritable Esperanto

    "Les patates à ta tata épatent ton tonton mais les pates aux thons à ton tonton épatent pas ta tata." (Michel Souris)

    MERCI DE NE PAS M'ENVOYER DE MESSAGE PRIVE POUR DES QUESTIONS TECHNIQUES SANS MON ACCORD !

  19. #59
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    bonjour
    sur le fond, c'est louable de proposer ce genre de service (si j'ai bien compris une classe ouverte à tous reprenant un accès "simple" à certaines api), mais sur la forme, c'est un tantinet déplacé (particulièrement l'expression "étouffeurs de pensée").
    ça me fait étrangement penser au service wxshooroom que propose Fabrice Hariri (qui comme l'initiateur du sujet est bien présent sur les forums relatifs à windev pour aider les autres; merci à eux au passage),
    et qui ne veut pas comprendre malgré les remarques que son site est bancal et désuet (pour rester poli).

    et qu'il ne suffit pas de dire qu'on a eu tant de visite pour affirmer d'un succès. C'est pourtant tout le mal que je leur souhaite.

    sache, jdsetls, que si tu as des questions précises, je pourrai éventuellement t'aider à hauteur de mes faibles connaissances dans le vaste monde des API. Mais dans ce cas, créer un post par sujet.

  20. #60
    Membre habitué
    Avatar de jdsetls
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Décembre 2012
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 209
    Points : 164
    Points
    164
    Billets dans le blog
    1
    Par défaut Question à propos du caret
    Bonjour Pfffft et merci de ta proposition.
    Sais-tu pourquoi dans la liste des fonctions API, on passe soudain de
    SPI_GETDESKWALLPAPER = 115
    à ...
    SPI_GETACTIVEWINDOWTRACKING = &H1000

    Je ne comprends pas (encore ?) cette notation.
    Cela change-t-il quelque chose dans la façon de lancer l'API.
    Merci,
    Cordialement
    Mon dernier livre Si c'est simple, c'est du Windev, version 2014, disponible sur Lulu.com, mot-clé Windev.
    http://www.lulu.com/shop/search.ep?t...ch=lulu.com&q=

Discussions similaires

  1. [Débat] Utilisez vous les Pages d'Accès aux Données?
    Par mout1234 dans le forum Sondages et Débats
    Réponses: 7
    Dernier message: 27/12/2006, 19h19
  2. Modifier la couleur d'un STATIC avec les API windows
    Par Mirsa dans le forum Visual C++
    Réponses: 31
    Dernier message: 27/11/2006, 11h18
  3. Réponses: 2
    Dernier message: 03/11/2006, 14h58
  4. Réponses: 69
    Dernier message: 15/06/2006, 11h42
  5. le Handle dans les APIs windows ?
    Par gootsu dans le forum Windows
    Réponses: 8
    Dernier message: 02/06/2006, 15h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo