Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour,
Est-il possible de recuperer des informations systemes du poste ou s'execute une application en PB?
Merci
Hors ligne
Nan...personne?!
Je cherche a recuperer le domaine, le nom de machine et l'adresse mac du poste...Toute information est la bienvenue.
Merci
Hors ligne
j'ai ca...
string ls_PBver
environment env
GetEnvironment(env)
apres, tu prends ce que tu veux dans cette variable... regarde l'aide en ligne de pb.
c'est pas ca ?
Hors ligne
Salut, du côte de l'API windows wsock32.dll :
Exemple en VB
Hors ligne
Effectivement, ca a l'air accessible par des external functions..je vais tester tout ca dès que possible. Je ferai part de mes resultats.
Merci
Hors ligne
tu peux également jeter un coup d'oeil à :
http://www.topwizprogramming.com/freecode_adapter.html
Hors ligne
Hors ligne
tu peux également jeter un coup d'oeil à :
http://www.topwizprogramming.com/freecode_adapter.html
Ca marche parfaitement!..merci
Plus dur maintenant...comment recuperer les meme informations à propos du serveur de base de données auquel on se connecte?
Hors ligne
mial a écrit:
Plus dur maintenant...comment recuperer les meme informations à propos du serveur de base de données auquel on se connecte?
=> via les fonctions système du SGBDR ?
Hors ligne
Nan justement, independamment du SGBD. Dans mon cas, je voudrais récupérer ces infos pour uen base Oracle comme pour un MSDE. Donc pas de connection aux tables systèmes...en tt cas uniquement en dernier recours.
Ces informations sur l'emplacement sur le réseau du serveur doivent bien tranisiter par SQLCA et pouvoir etre recupérer non?
Hors ligne
une piste,
en lançant sous dos, la commande arp -a adresse_ip_serveur
ça te donne la mac address, je pense qu'il existe des api pour ça (http://www.codeproject.com/cs/internet/ … ct=1498979)
Hors ligne
recuperer des infos sur une base de données sans te connecter ?
je ne vois pas comment ? j'ai bien compris la 2eme question ?
sinon, par le registre peut etre ?
Hors ligne
Si une fois connecté, mais la methode permettant de récupérer ces informations seront applicables pour une base Oracle comme pour une base MSDE. Je vais chercher dans cette voie jdobosz...
Hors ligne
J'ai donc pu récupérer le nom du poste du travail et son adresse MAC mais il me manque toujours le domaine...Je pensais donc utiliser la fonction NetWkstaGetInfo http://msdn2.microsoft.com/en-us/library/aa370663.aspx.
J'ai de grosses difficultés à l'appeler dans mon powerscript..Si quelqu'un sait utiliser les API Windows et notamment la convesion de types et la gestion de buffer...l'implémentation devrait ressembler au lien http://www.topwizprogramming.com/freecode_adapter.html donnée par eRaSorZ
Merci d'avance
Hors ligne
t'as essayé ca ?
environment lenv GetEnvironment (lenv) string ls_domaine String ls_domain CHOOSE CASE lenv.OSType CASE WindowsNT! RegistryGet ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon","DefaultDomainName", RegString!, ls_domaine) CASE Windows! RegistryGet ("HKEY_LOCAL_MACHINE\Security\Provider","Container", RegString!, ls_domaine) END CHOOSE messagebox("info", ls_domaine)
Hors ligne
..pour etre sur, c'est compatible avec toutes les versions windows?
Hors ligne
ouaipppppppp
je viens de tester sous XP, et je retrouve bien mon nom de domaine...
suffit de faire le test sous 98 (s'il y a encore des postes avec ca)...
Hors ligne
petite question :
est ce que cette clef "DefaultDomainName", c'est le nom de domaine auquel tu es effectivement connecté ou
bien celui qui est proposé par défaut au login de windows (ce qui laisserait supposer que tu peux te connecter
à un autre domaine ...)
Hors ligne
DefaultDomainName", c'est le nom de domaine auquel tu es effectivement connecté ...
j'ai fais le test... avec 2 domaines differents... sur la meme machine...
Hors ligne
--------------------------------------------------------------------
Bonjour, peut-on considérer que le problème est Résolu ?
--------------------------------------------------------------------
Hors ligne
Oui pb résolu
Hors ligne
Up du topic.
J'ai un souci, j'utilisais jusque la base de registre pour le nom de domaine comme l'avait indiqué pick ouic.
Seulement ca ne marche plus sous Vista.
Une idée de la localisation de cette information dans la base?
Sinon les API windows doivent pouvoir faire ca, j'ai regardé du coté de Win32_NetworkAdapterConfiguration mais je ne sais pas comment l'implementer et j'ai cru comprendre qu'il s'agissait d'un objet du framework 3.0.
C'est une urgence pour cette apres midi.
Merci d'avance.
Hors ligne
t'as regardé sur le registre ? s'il y avait moyen de trouver un equivalent ?
Hors ligne
Oui je suis tombé sur ce chemin dans le registre mais ca n'a pas marché tout de suite et je n'ai pas approfondi.
ll_ret = RegistryGet ("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Telephony","DefaultDomain", RegString!, is_nom_domaine)
PS : Sinon, la récupération du DNS par l'API win32 m'interesse toujours enormement
Hors ligne
FUNCTION boolean GetComputerNameA(ref string Computer_HostName,ref Ulong HostName_Buffer) LIBRARY "kernel32.dll" ALIAS FOR "GetComputerNameA;ansi"
String GetHostName
ULong HostNamebuffer=512
GetHostName=space(512)
GetComputerNameA(GetHostName,HostNamebuffer)
Hors ligne