BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 nov. 2007 à 10:06
Une dll comme tout binaire contient du code interne et/ou des appels externes.
Pour les appels externes, il y a une source de aardman sur cppfrance.
Code interne (appels BIOS ou autre), il faut décompiler.
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 17 nov. 2007 à 09:50
Ce que je voulais dire c'est qu'on fait un appel a une dll -> qui fait des appels au BIOS ...
Peut on indentifier ces appels ?
Peut on faire ces appels directement sans passer par la DLL ?
(en théorie ça doit être possible mais j'ai jamais vu d'exemple)
Bonne journée
Afyn - Navedac
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 17 nov. 2007 à 09:43
Reconstituer le code bien entendu, ça s'appelle décompiler.
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 17 nov. 2007 à 09:28
Bonjour
Et a partir d'une DLL existante win (par exemple winmm.dll) peut on "extraire" les appels -> en asm et reconstituer certaines fonctions de cette DLL ? (à tire decuriosité)
Afyn - Navedac
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 16 nov. 2007 à 17:39
Il y a un winsock.ocx ou machin de ce genre deja dsipo pour VB me semble.
jijidiscover
Messages postés65Date d'inscriptionjeudi 4 octobre 2007StatutMembreDernière intervention24 mars 2009 16 nov. 2007 à 17:22
j'ai besoin d'un aytre dll, celui ci permet la recherche d'une hôte sur le réseau à partir de son @IP.
c'est disponible ?
VBEnJ0Y
Messages postés25Date d'inscriptionsamedi 11 mars 2006StatutMembreDernière intervention 5 octobre 2006 7 avril 2006 à 17:25
Waoouuuh ! Ca c'est de la prog, chapeau à toi pour la DLL !
Décidément l'ASM c'est pas pour moi ^^
@+
VBEnJ0Y
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 6 mars 2006 à 22:09
ZED71, tu peux éventuellement essayer ma dll, qui est plus ou moins équivalente à celle de BruNews en ce qui concerne le calcul de la vitesse du processeur:
Mais elle risque de ne pas mieux marcher que la sienne.
zed71
Messages postés3Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 6 mars 2006 6 mars 2006 à 21:26
Pour des vieilles machines si, en plus c'est pour une application qui ne nécessite pas un système supérieur.
Nico
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 6 mars 2006 à 10:12
En 2006 on n'a vraiment plus à prendre en charge Win98 et autres antiquités de ce genre.
zed71
Messages postés3Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 6 mars 2006 6 mars 2006 à 09:57
Bonjour
J'ai cette clé, mais le problème c'est pour windows 98 antérieur, la clé n'existe pas. Donc je cherche un autre moyen.
Soit à l'aide de la fonction external dll, sinon il a la possibilité de lancer un exe. L'idéal serait un petit exe qui trouve la vitesse du CPU et la met dans le registre au même endroit que dans les autres versions de windows. La clé est
HKEY_LOCAL_MACHINE,HARDWARE\DESCRIPTION\System\CentralProcessor\0', '~MHz'
Ca doit pas être compliqué à faire mais je sais pas faire.
J'ai pas trouvé d'exe qui fasse ça. Finalement ça serait pas mal comme programme, ce serait une sorte de "mise à jour" windows puisque les versions postérieures ont cette clé.
Merci
Nico
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 6 mars 2006 à 09:29
Salut ZED71.
Si tu est un peu plus doué pour lire la base de registre, je devrait pouvoir te trouver une clé qui contient la vitesse du processeur en MHz. Je te l'amène demain.
zed71
Messages postés3Date d'inscriptionsamedi 4 mars 2006StatutMembreDernière intervention 6 mars 2006 4 mars 2006 à 15:49
Bonjour
Je voudrais utiliser ce dll pour récupérer la vitesse CPU dans u script inno setup.
J'ai mis les lignes suivantes :
function CpuSpeed(): cardinal;
external 'bnCpuSpeedMghz@files:bn2VB.dll stdcall';
Mais ça marche pas, la valeur rendue est 3 au lieu de 900.
Je suis débutant, si quelqu'un peut m'aider.
Merci
Nico
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 31 août 2005 à 11:13
BruNews, encore bravo pour ta dll qui rend la mienne obsolète.
Mais mon timer consomme en apparence beaucoup d'UC.
Je vérifie en permanence que le temps n'est pas dépassé (en ASM) en tournant sur un sleep(0).
D'après la doc Win32, les Sleep(0) propose à Windows d'executer un trhead de priorité équivalente.
Il peut donc y avoir des dépassements du fait de trheads long...
Le problème d'un timer précis est qu'il faut vérifier en permanence que le temps n'est pas dépassé, d'où forcément une consommation d'UC importante...
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 12 mars 2004 à 19:03
Bon .. et mes tests sur les Timers ... Abandonnés ?
Dommage. (pour moi)
A+
Afyn
Navedac
c3rb3r3
Messages postés38Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention25 janvier 2006 20 janv. 2004 à 18:52
Réellement une dll très pratique, je te remmercie beaucoup.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 12 déc. 2003 à 17:00
CODE COMPLET DE LA DLL DANS ZIP.
cs_azerty25
Messages postés1114Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention 6 mai 2007 12 déc. 2003 à 06:38
toi aussi tu comprend pas ?! le dll n'est pas en vb, il va pas la mettre ici ! mais par contre, elle est ici en tant que dll pour pouvoir utiliser les fonctions
cs_hakim0
Messages postés123Date d'inscriptionmercredi 27 août 2003StatutMembreDernière intervention12 août 20081 11 déc. 2003 à 23:25
mais ou est le Code source?? du DLL
cs_azerty25
Messages postés1114Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention 6 mai 2007 9 déc. 2003 à 09:26
LOl, c'est clair, réfléchissez avant de parler, mais BruNews, tu devrai mettre tes sources sur asmfr comme sa elles seront au bon endroit et on te repocherai pas de ne pas partager ;-)
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 8 déc. 2003 à 20:11
Bon jack je viens de verifier, il y a actuellement 1515 lignes d'ASM pour la DLL, tu penses que VB est l'endroit pour ce genre chose ?
Si je ne me gourre pas, il me semble que VB n'est qu'une suite de scripts qui appellent des modules qui eux contiennent du vrai code executable, que ce soit ceux de sa virtual machine ou nimporte quel autre. Il me semble donc que ce qui est a partager sur vbfrance c'est la maniere de se servir d'un composant depuis vb et non le code source de celui-ci sinon il y aurait peu de sources sur tout le reseau CS mis a part cppfrance et asmfr.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 déc. 2003 à 19:58
Manque toujours la source du DLL ...
Je te rappelle que vbfrance fait partie de "Codes-Sources" et dedans, il y a Source. C'est dommage de ne pas partager ...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 8 déc. 2003 à 19:08
Je vais faire quelques tests sur ce sujet.
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 8 déc. 2003 à 18:39
Quelle est la précision qu'on pourrait obtenir ? et avec quelle priorité ?
Jusqu'a maintenant, j'arrive à obtenir environ 300 µs avec les API waitable timer, et je me demandais si avec une DLL en asm on pouvait gagner un peu .
merci
A+
Afyn
Navedac
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 8 déc. 2003 à 09:10
pour un prog 'user mode' donc qui va tourner en Ring3 et sur systeme multitache preemptif, irrealisable.
Afyn
Messages postés608Date d'inscriptionsamedi 3 août 2002StatutMembreDernière intervention22 décembre 2016 8 déc. 2003 à 09:06
C'est possible de faire un timer en asm qui serait précis à la microseconde prés ?
A+
Afyn
cs_azerty25
Messages postés1114Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention 6 mai 2007 8 déc. 2003 à 07:01
Re
Dsl j'avais pas vu qu'il y avait déja la version 9, cette fois ci il me donne la bonne mesure ;) Pile tout bon
17 nov. 2007 à 10:06
Pour les appels externes, il y a une source de aardman sur cppfrance.
Code interne (appels BIOS ou autre), il faut décompiler.
17 nov. 2007 à 09:50
Peut on indentifier ces appels ?
Peut on faire ces appels directement sans passer par la DLL ?
(en théorie ça doit être possible mais j'ai jamais vu d'exemple)
Bonne journée
Afyn - Navedac
17 nov. 2007 à 09:43
17 nov. 2007 à 09:28
Et a partir d'une DLL existante win (par exemple winmm.dll) peut on "extraire" les appels -> en asm et reconstituer certaines fonctions de cette DLL ? (à tire decuriosité)
Afyn - Navedac
16 nov. 2007 à 17:39
16 nov. 2007 à 17:22
c'est disponible ?
7 avril 2006 à 17:25
Décidément l'ASM c'est pas pour moi ^^
@+
VBEnJ0Y
6 mars 2006 à 22:09
http://www.vbfrance.com/code.aspx?ID=33376
Mais elle risque de ne pas mieux marcher que la sienne.
6 mars 2006 à 21:26
Nico
6 mars 2006 à 10:12
6 mars 2006 à 09:57
J'ai cette clé, mais le problème c'est pour windows 98 antérieur, la clé n'existe pas. Donc je cherche un autre moyen.
Soit à l'aide de la fonction external dll, sinon il a la possibilité de lancer un exe. L'idéal serait un petit exe qui trouve la vitesse du CPU et la met dans le registre au même endroit que dans les autres versions de windows. La clé est
HKEY_LOCAL_MACHINE,HARDWARE\DESCRIPTION\System\CentralProcessor\0', '~MHz'
Ca doit pas être compliqué à faire mais je sais pas faire.
J'ai pas trouvé d'exe qui fasse ça. Finalement ça serait pas mal comme programme, ce serait une sorte de "mise à jour" windows puisque les versions postérieures ont cette clé.
Merci
Nico
6 mars 2006 à 09:29
Si tu est un peu plus doué pour lire la base de registre, je devrait pouvoir te trouver une clé qui contient la vitesse du processeur en MHz. Je te l'amène demain.
4 mars 2006 à 15:49
Je voudrais utiliser ce dll pour récupérer la vitesse CPU dans u script inno setup.
J'ai mis les lignes suivantes :
function CpuSpeed(): cardinal;
external 'bnCpuSpeedMghz@files:bn2VB.dll stdcall';
Mais ça marche pas, la valeur rendue est 3 au lieu de 900.
Je suis débutant, si quelqu'un peut m'aider.
Merci
Nico
31 août 2005 à 11:13
Afyn, pour ce qui est du timer tu peux toujours regardé sur http://www.vbfrance.com/code.aspx?ID=33376.
Mais mon timer consomme en apparence beaucoup d'UC.
Je vérifie en permanence que le temps n'est pas dépassé (en ASM) en tournant sur un sleep(0).
D'après la doc Win32, les Sleep(0) propose à Windows d'executer un trhead de priorité équivalente.
Il peut donc y avoir des dépassements du fait de trheads long...
Le problème d'un timer précis est qu'il faut vérifier en permanence que le temps n'est pas dépassé, d'où forcément une consommation d'UC importante...
12 mars 2004 à 19:03
Dommage. (pour moi)
A+
Afyn
Navedac
20 janv. 2004 à 18:52
12 déc. 2003 à 17:00
12 déc. 2003 à 06:38
11 déc. 2003 à 23:25
9 déc. 2003 à 09:26
8 déc. 2003 à 20:11
Si je ne me gourre pas, il me semble que VB n'est qu'une suite de scripts qui appellent des modules qui eux contiennent du vrai code executable, que ce soit ceux de sa virtual machine ou nimporte quel autre. Il me semble donc que ce qui est a partager sur vbfrance c'est la maniere de se servir d'un composant depuis vb et non le code source de celui-ci sinon il y aurait peu de sources sur tout le reseau CS mis a part cppfrance et asmfr.
8 déc. 2003 à 19:58
Je te rappelle que vbfrance fait partie de "Codes-Sources" et dedans, il y a Source. C'est dommage de ne pas partager ...
8 déc. 2003 à 19:08
8 déc. 2003 à 18:39
Jusqu'a maintenant, j'arrive à obtenir environ 300 µs avec les API waitable timer, et je me demandais si avec une DLL en asm on pouvait gagner un peu .
merci
A+
Afyn
Navedac
8 déc. 2003 à 09:10
8 déc. 2003 à 09:06
A+
Afyn
8 déc. 2003 à 07:01
Dsl j'avais pas vu qu'il y avait déja la version 9, cette fois ci il me donne la bonne mesure ;) Pile tout bon