begin process at 2010 03 18 04:33:26
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Api Windows

 > OBTENIR LA VERSION DU SYSTEME,SON ENVIRONNEMENT,LE SERVICE PACK ET AURES ...

OBTENIR LA VERSION DU SYSTEME,SON ENVIRONNEMENT,LE SERVICE PACK ET AURES ...


 Description


C'est une traduction conforme (masm32) d'un exemple du SDK utilisant
OSVERSIONINFOEX
                     ToutEnmasm



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip RÉSOUDRE LES PROBLÈMES DE VERSIONS DU SYSTÈME OU DE DLL
Source avec Zip DEXPLORE INTERFACE HELP2 MICROSOFT DOCUMENT EXPLORER
Source avec Zip DEXPLORE INTERFACE HELP2 MICROSOFT DOCUMENT EXPLORER
Source avec Zip TÉLÉCHARGER UN FICHIER DEPUIS UNE URL ET/OU ORGANISER DES CL...
Source avec Zip CONNECTIONS INTERNET HTTP.. DIAL-UP CONNECTIONS

 Sources de la même categorie

Source avec Zip TÉLÉCHARGER UN FICHIER DEPUIS UNE URL ET/OU ORGANISER DES CL... par ToutEnMasm
SCREENSHOT CAPTURE D'ECRAN par VBFRANCE
Source avec Zip Source avec une capture PROGRAMME DE VISUALISATION ET D'ANALYSE SPECTRALE DE FICHIER... par Nasman
Source avec Zip CRÉATION DE GRAPHIQUES AVEC LES API WINDOWS par Nasman
Source avec Zip TABULATIONS EN ESPACES (MASM32) par BruNews

 Sources en rapport avec celle ci

Source avec Zip RÉSOUDRE LES PROBLÈMES DE VERSIONS DU SYSTÈME OU DE DLL par ToutEnMasm
Source avec une capture LECTURE TOUCHE CLAVIER[MASM] par w4kfu
Source avec Zip ECRIRE DANS BDR, DEMO MINIMALE (WIN32) par BruNews
Source avec Zip Source avec une capture RESOLUTION DE SUDOKU par noel70
Source avec Zip CONNECTIONS INTERNET HTTP.. DIAL-UP CONNECTIONS par ToutEnMasm

Commentaires et avis

Commentaire de BruNews le 08/12/2006 17:39:45 administrateur CS

Traduction à la "asm VB" mais assurément pas du code qui serait passé dans un compilo C correct.
Le jour où mon compilo me fera des appels lstrcat, il prend la poubelle illico.
Il y a des registres à employer, mets EDI en fin de chaine et tu écrsi dessus, tu recup ainsi ton EDI toujours au point d'écriture sans reparcourir 50 fois la meme chaine.
invoke lstrcat,addr phrase,addr espace
là c'est le bouquet, non ?
mov byte ptr[edi], 32
add edi, 1
voila remplacé appel strcat...
Sérieux, l'asm est le domaine de l'optimisation maximale, en faire un sous VB n'avance à rien.

Commentaire de ToutEnMasm le 09/12/2006 09:57:01


Rappelle moi le prix de Visual studio,pour voir !?
Si tu veux optimiser le code,aucun problème,tu as le source,bon boulot.
                   ToutEnMasm
                  

Commentaire de ToutEnMasm le 09/12/2006 18:14:55


Cest bientôt Noël,Je vais te faire un petit cadeau.
pour optimser le code utiliser la fonction comme suit
1) créer une locale pointeur
2) ranger l'adresse de phrase dans pointeur
;début des tests
lea eax,phrase
mov pointeur,eax
PuPo case,osvi.dwPlatformId
.if case == VER_PLATFORM_WIN32_NT
3) remplacer tous les lstrcat par la fonction ConcaTene
invoke ConcaTene,pointeur,SADR("Microsoft Windows Server 2003, "),addr pointeur

               ToutEnMasm
;additionne deux chaines terminées par zero
;renvoi le pointeur en bout de chaine écrite dans  padresse
;################################################################
ConcaTene PROC uses esi edi szSomme:DWORD, szAdd:DWORD ,padresse:DWORD
Local  retour:DWORD
         mov retour,0
;éviter un planté toujours néfaste
.if szSomme == 0 || szAdd == 0 || padresse == 0
jmp FindeConcaTene
.endif
mov esi,szAdd
mov edi,szSomme
cld
.LISTALL
@@:
.if byte ptr [edi] != 0 ;debut de chaine a augmenter
;aller en bout de chaine
inc edi
jmp @B
.endif
@@:
.NOLIST
.if byte ptr [esi] != 0
;recopier
movsb
jmp @B
.endif
mov al,0
mov [edi],al
;sauvegarder le pointeur de fin
mov esi,padresse
mov [esi],edi
mov retour,1

FindeConcaTene:
         mov eax,retour
         ret
ConcaTene endp












Commentaire de frobinet le 11/12/2006 10:03:22

Encore une remarque inconstructive de la part de BruNews comme toujours...
Petit parenthèse ce forum à pour but de faire découvrir l'assembleur et de faire avancer les choses pas de critiquer tous les codes en faisant croire que tu es capable de faire mieux.
Tu écrase la créativité de ce forum et à la lecture de tes remarques ça ne donne pas du tout envie de poster la moindre source. Je me suis mis à l'assembleur il y a de ça trois ans et c'est grâce a des personnes comme Iczelion, ToutEnMasm ... que j'ai bien avancé et maintenant MASM32 est pratiquement mon seul logiciel de programmation (même si j'ai la chance par mon travail d'être abonnée à MSDN Architecte).
Un tutoriel ou un programme mis sur un forum n'est pas une solutioon clé en main mais une aide à la réflexion il faut donc qu'il soit avant tout lisible sinon ça repousse les débutant et ça favorise le copier coller totalement idiot.

Commentaire de BruNews le 11/12/2006 21:18:22 administrateur CS

C'est inconstructif de dire ce qui ne va pas ??? c'est nouveau ça.
Ecraser la créativité... je fais dans le binaire pas dans la psy donc je passe.

3 ans que tu fais du sabir masm en obtenant 3 fois moins efficace qu'un compilo C en ayant mis 4 fois plus de temps que codé en C, si ça te convient c'est ok mais les débutants avec un tant soit peu d'ambition doivent savoir que c'est mauvais et pour cela encore faut-il que qlq'un l'ait écrit.

if osvi.dwPlatformId == x
4 fois de suite, bien entendu que j'aurais aussi pu l'évoquer mais je m'étais pourtant abstenu:
cmp  [adr], valeur
jb goINF
je goEQU
ici traitement goSUP

ben oui mais pour cela faut coder vraiment.
Dans tous les cas si tu ne veux pas progresser ne lis pas les comments et basta.
Je note que ToutEnMasm a lui par contre essayé d'en proposer une amélioration et c'est heureux ainsi.

Commentaire de vecchio56 le 11/12/2006 21:34:52 administrateur CS

ToutEnMasm, si la raison qui t'oblige a coder en "assembleur" est le prix trop élevé des IDE pour C/C++, je pense que tu te fourvoies lamentablement
Evidemment MinGW est gratuit, mais aussi depuis peu (enfin pas mal de temps quand même maintenant), le compilateur de VC++ est gratuit, et tu pourra l'utiliser avec une version express de Visual Studio.

Même remarque que BruNews concernant les débutants, aucun intérêt de commencer l'assembleur de cette manière

Finalement, je ne vois pas non plus ce qui justifie de style de programmation

Commentaire de frobinet le 12/12/2006 11:02:51

Désolé de mettre mal exprimé, ce que je voulais dire c'est que je n'apprécie plus la teneur des remarques DESAGREABLES qu'utilise sans arrêt BruNews lorsqu'il laisse une remarque sur le site. Je ne critique pas le fait que le code n'est  pas optimisé, je ne l'ai même pas lu et ça ne m'interresse pas (c'était le seul code de la semaine, c'est de la curosité c'est tout!!!).

En outre, sur un code aussi simple je suis moins regardant du point de vus otpimisation que pour un code demandant des ressources importantes (Cryptographie, 3D..). Mais encore une fois on peut faire une remarque d'optimisation sans non plus avoir une démarche aussi agressive.

De plus, on est sur un site assembleur, on n'a pas à critiquer le choix des personnes qui programment en assembleur. "Le C/C++ est mieux y en a qui sont gratuit (MingGW, VC++, LCC, SDCC...)", et alors je ne vois pas ce que cette remarque viens faire sur un site assembleur. Je ne vais pas sur un site VB pour dire que je trouve nul ceux qui programme avec ça, c'est leur choix (c'est même quelque fois imposé par le travail, et alors ?). Si vous ne pouvez plus vous passer du C/C++ y a un site qui est fais pour vous "www.cppfrance.com". ça aussi c'est récurent dans vos remarques et je ne vois vraiement pas en quoi ça fais avancé le codage en assembleur.

ça fais trois ans que je programme en MASM mais l'assembleur je l'utilise depuis plus de quinze ans pour les microcontroleurs (512 octets pour faire tenir un programme, le mieux c'est l'assembleur). Bien sûr que j'utilise le C++ comme tous programmeurs mais si j'ai envie de faire de l'assembleur j'ai peut être le droit ou faut-il que je vous fasse une demande ?

"Ecraser la créativité... je fais dans le binaire pas dans la psy donc je passe." bah non justement c'est ça le problème, si les programmeurs ne laissent pas de codes sur le sites car ils savent que c'est pour ce faire rembarrer, je ne vois plus l'interet du site.

Allez voir d'autres forum de programations assembleur, vous verrez que les aides apporté sont beaucoup plus motivants. J'ai lu par exemple avec grand plaisirs des batailles entre programmeurs sur des optimisations différentes entre AMD et INTEL qui donnent vraiement envie d'aller plus loin.

"Finalement, je ne vois pas non plus ce qui justifie ce style de programmation" Désolé ce n'était pas en relation avec la news c'était pour passer un message à BruNews c'est tout !



Commentaire de ToutEnMasm le 12/12/2006 14:59:22


Salut,

Il faut reconnaitre qu'un forum qui incite a venir poster des sources est plus vivant qu'un forum ou les gens s'invectivent ou croient tout savoir.
Petite citation d'un pro de l'assembleur (traduction de l'anglais).
"l'assembleur est le langage ou on est un éternel débutant".
          
                         ToutEnMasm





Commentaire de ToutEnMasm le 12/12/2006 15:10:41


J'allais oublier,
Pour le style,la raison en est que je suis un artiste "du copier coller."
Faire en 10 mn ce que les autres font un temps certain est le but de mon IDE,c'est ce qui donne ce style.
                          ToutEnMasm

Commentaire de BruNews le 12/12/2006 19:44:03 administrateur CS

Bon remettons tout à plat.
Faut pas s'arrêter au style du commentaire mais à ce qui est dit techniquement, il est bien clair que je n'ai envie d'agresser personne. Le manque de temps fait que je rédige concis voila tout.
Ce n'est pas moi qui vais dire qu'il ne faut plus coder en asm, je suis payé pour cela, alors...
Par contre tout ce que je produis doit être vérifié comme meilleur que ce qu'aurait produit le compilo, à cette fin que je fais toujours les fonctions en C et que je regarde le listing asm obtenu. Si ça me semble nickel ça reste en l'état (c'est rare mais ça arrive) mais sinon quand on code on code vraiment.
Qlq'un peut-il croire qu'une boite emploiera au tarif qu'on demande pour produire en asm si elle obtient mieux avec un mec qui codera en C pour moins cher ?
Je répète que coder en asm à notre époque n'a plus d'autre sens qu'obtenir les perfs maximales et c'est le seul but à avoir. Qu'un exemple de source ne semble pas le nécessiter ne change en rien le propos, on publie dans un but pédagogique et on se doit donc de faire au mieux. Le meilleur challenger qu'on puisse avoir étant un compilo C, par force on doit comparer au compilo.

Commentaire de ToutEnMasm le 13/12/2006 09:35:21


Une petite contribution sur l'ambiance dans les forums permettant une utile comparaison des points de vues de chacun.
C'est le même code qu'içi(commentaires en anglais mais sur un forum US.
http://www.manoscoder.gr/mbbs/forums/thread-view.asp?tid=53&posts=8&start=1

                    ToutEnMasm

Commentaire de frobinet le 13/12/2006 12:35:21

Juste pour finir je voudrai résumé qu'il est souhaitable que les personnes qui s'exprime sur un forum quelqu'ils soient le fasse sans reflexion qui peuve être blaissante ou finir par être saoulante.

Et je voulais juste signaler que même si il est évident que tu ne trouvera jamais dans mes codes "invoke lstrcat,addr phrase,addr espace" je préfère souvant prendre le risque de la lisibilité par rapport à la performance pur (par exemple j'utilise pas mal les .WHILE et autres cochonneries je te l'accorde) car pour mon entreprise il est important qu'une autre personne puisse me relire (en plus a part mon chef qui programme à longueur de journée en asm NEC, rien que le mot assembleur fait fuir le reste de mes collègues, ça aide pas).

Juste pour anecdote j'ai galéré et je n'ai d'ailleur toujours pas trouvé la solution sur la création d'un ActiveX qui me renverrai un évènement, la seule source que j'ai trouvé est une source qui est infesté de MACRO à tout vas avec une refonte vulgaire de tous les includes (mixage entre C et ASM) qui posent des problèmes de compatibilité avec la version ml que j'utilise et en plus le programme est buggé, après plus d'une semaine à essayé de décortiqué le programme j'ai finis par le mettre à la poubelle, il faut quand même que quand on poste une source de cette nature il faut que ce soit digeste car si seul les spécialistes peuvent le comprendre, ça sert à rien.
Je suis venu à MASM par envie pas par nécessité, on peut avoir des avis différents car des besoins différents.

"l'assembleur est le langage où on est un éternel débutant" je pense que l'on peut l'élargir à toute l'informatique et à l'électronique. Tantôt professeur, tantôt élève.

Il est vrai que je me suis emporté pour une remarque toute a fais justifié et je m'en excuse, aller BON NOEL à TOUS !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

étapes pour compiler un programme masm sous dos? [ par samsara ] salut les amis, je suis une vraie débutante et j'aimerais savoir comment compiler mon programme sur masm.Dans le dos je fais : "masm montre.asm " (mo curseur personalisé masm [ par Cendra ] je cherche a mettre un curseur personalisé ( curseur.cur ) dans un de mes programmes mais j'ai du mal a utiliser l'api LoadCursorA ....on m'a parler d Hide Window sous Masm [ par Stormy ] StormyJ'ai une application parfaitement fonctionnelle sous masm32. Je souhaite la rendre "cachée" soit en mode Hide. Celle-ci comporte plusieurs zones Cherche site internet sur le Masm [ par flagyg ] bonjours,je suis débutant en masm et j'aimerais un site inernet(ou un livre)pour commencer alors si vous connaissez ça,merci d'avance !!!! Image jpg en Masm32 [ par phoenix1969asm ] Tout d'abord Merci pour l'aide que vous allez m'apporterje debute est je dois dire que je nage un peu ...je souhaiterai afficher une image Jpg de mani DOCUMENTATION [ par bymo ] Pourquoi sur ce site n'y a t il pas une bibliothèque en français de documentation sur les différents assembleurs:MASM, TASM, NASM, FASM... et autres.C MASM32 et les types enumération. [ par frobinet ] Bonjour,comment peut on traduire la séquence suivante qui provient du C en language assembleur MASM32 :enum enum_field_types { FIELD_TYPE_DECIMAL, FIE masm32, include [ par coockiesch ] Hello!!!Plein de bonne volonté, j'ai dl un tuto pour ASM Win32... Voici mon code:.386.MODEL FLAT, STDCALLOPTION CASEMAP : NONEINCLUDE \masm32\in rs232 & assembleur& c++ version microsoft [ par elbair32 ] bonjour;je n'arrive pas à ecrire une fonction sur c++ en utilisant dedant des mnemoniques Tasm pour gérer les ports série je sais comment sa se fait e Problème sur les thèmes XP [MASM32] [ par frobinet ] Bonjour,je recherche des infos pour appliquer les thèmes XP en assembleur pour les boutons...J'ai vu qu'il faut utiliser les fonctions OpenThemeData,D


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales