Question : VFP et api

Salut tous, le

I ont récemment commencé la programmation dans VFP (OOP). Je suis coincé avec quelques choses à l'heure actuelle et aurais besoin de votre help.

How pour employer des classes de WMI avec VFP ? (Les classes d'événement, moniteur classe, etc.) avec un example

How pour employer Win32 api avec VFP ? avec un example.

à être honnête, je n'ai aucune idée au sujet de Win32 api du tout. Pourriez-vous svp me réorienter à un lien qui a le bon about
Win32 api de l'information ?

Thanks !
SP


class= de

Réponse : VFP et api

« un Win32 api » - vous semblez mal comprendre qu'il y a beaucoup d'api Win32. Il y a seulement un Win32 api. Win32 api représente toutes les fonctions de C de Windows DLLs, il y a sûrement plus d'api dans les fenêtres, par exemple WMI est un api différent et il y a beaucoup plus d'offres de fenêtres de choses comme interface pour se servir de lui. Cyrille vous a déjà dirigé vers plusieurs définitions de la limite api. Win32API est un api, mais l'outrage des différentes versions de lui en raison des différentes versions de fenêtres, là est seulement un Win32 api.

Win32 api appelle toutes les offres de fenêtres de fonctions à n'importe quel langage de programmation pour se servir dans leurs applications. En employant le foxpro vous employez déjà plusieurs des fonctions d'api indirectement, par exemple une forme de foxpro est des fenêtres forment et sont créées par l'OS avec beaucoup de fonctions de la victoire api.

Si vous aimez vous n'aurez pas besoin de plusieurs des offres de fenêtres de fonctions et pouvez faire des applications avec la langue de foxpro seule, mais il y a sûrement des choses intéressant étudier, aucune question.

La documentation officielle est du créateur des fenêtres et c'est api : Microsoft. Il a appelé la bibliothèque de MSDN. Par exemple vous trouvez la description de Microsofts de la fonction de GetMonitorContrast ici : http://msdn.microsoft.com/en-us/library/dd692942(VS.85).aspx

À l'égard de la façon savoir ce qu'est le hMonitor : En général une fonction fait partie d'une famille des fonctions d'un DLLs des fenêtres. MSDN souvent décrit mieux les paramètres et leur signification, constantes et etc. impliqué par structues par exemple la signification du hMonitor est décrite par news2news et MSDN :

Poignée à un moniteur physique. Pour obtenir la poignée de moniteur, l'appel GetPhysicalMonitorsFromHMONITOR ou le GetPhysicalMonitorsFromIDirect3DDevice9.

Ainsi c'est simplement le résultat d'une autre fonction d'api. Il y a de certaines conventions et nomenclatures de nomination, par exemple un commencement de paramètre avec h est typiquement une poignée, hwnd est une poignée d'une fenêtre. une poignée est typiquement un représentant debout de valeur de nombre entier pour un objet au lieu d'une référence d'objet à l'adresse d'objet dans la mémoire.

Et de la perspective de DELARE la sémantique de la commande sont pendant que l'aide de foxpro indique :

DÉCLARER [cFunctionType] FunctionName DANS LibraryName [COMME AliasName] [cParamType1 [@] ParamName1, cParamType2 [@] ParamName2,…]

Ainsi vous définissez le type du résultat de fonction, puis du nom de fonction dans le DLL et puis de la liste de paramètres et de leur type, et s'ils sont par valeur ou paramètres référentiels.

Oui, il y a beaucoup de choses et de limites à apprendre, mais vous pouvez et devriez peut-être le garder à un minimum de ce que vous avez besoin vraiment d'additionnel à ce que le foxpro s'offre. GetMonitorContrast a par exemple Vista ou serveur Win2008 en tant que la condition minimum et quoiqu'une application VFP9 avec le temps d'exécution vfp9 puisse fonctionner sur win98, moi, xp, vista et win7, vous limitez lui sur Vista ou win7 en se servant de cette fonction.

DÉCLARER est également capable pour déclarer des fonctions de l'autre pièce de DLLs pas de Windows, pas une partie du Win32 api. Il y a beaucoup de tiers fournisseurs de source de DLLs, commerciale et ouverte. DÉCLARER peut se servir d'un tel DLLs avec des fonctions de c, en fait il n'est pas important la fonction est écrit dans C/C++, ce peut également être un DLL de Pascal, tant que ce contraste un DLL fonctionnel avec un DLL avec des serveurs de COM dans lui ou un DLL d'Assemblée de .NET.

Je sûrement ai ouvert un bidon de vers maintenant, de calme de subsistance et vois juste que l'idée générale de l'api est de permettre à des programmes externes de se servir des fonctions et de prolonger des possibilités d'une langue ou d'un produit. Vous pouvez mais pas nécessairement le besoin de se servir de cela. DÉCLARER est à sens unique hors du foxpro pour inclure des fonctions de DLLs, CREATEOBJECT (Oleclassname) est une autre manière de se servir de VIEILLES classes, de serveurs de COM dans DLLs ou de dossiers d'OCX, là est d'autres choses comme Webservices et beaucoup plus de plus pour prolonger le foxpro.

Mis dans un mot c'est interopérabilité. Ne pas se plaindre là n'est aucune documentation ou la référence à elle, vous pourrait également expliquer là n'est aucun livre expliquant la vie. ;)

Bye, Olaf.
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us