begin process at 2010 09 09 14:50:28
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Système

 > [C/WIN32][VISTA] EXEMPLE D'UTILISATION DES TRANSACTIONS.

[C/WIN32][VISTA] EXEMPLE D'UTILISATION DES TRANSACTIONS.


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Système Classé sous :transacted, ktm, transaction, vista, api Niveau :Initié Date de création :22/12/2008 Vu / téléchargé :1 719 / 74

Auteur : deck_bsd

Ecrire un message privé
Site perso
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Yop à tous,

Voici un programme qui ne sert à rien en tant que tel, mais sont but est de montré comment créer et utiliser les transactions.

Qu'est ce qu'une transaction ? : C'est un objet kernel qui permet de régrouper plusieurs instructions et de valider leur actions uniquement lorsque l'on fait un commit. Elles sont gérées par l'infrastructure KTM (Kernel Transaction Management).

A quoi elles servent ? : A rendre les applications plus sécurisée, plus fiable. Imaginez (comme dans cet exemple) que vous avez codé un programme qui crée des clefs dans la bdr et que on le sais pour quel raison il survient une erreur , dans ce cas vous pouvez soit annuler ces actions ou revenir en arrière dans votre programme.

Remarque : Ce programme montre l'utilisation de transaction dans le cadre de la bdr, mais ce n'est pas le seul domaine de présence des transactions, elles sont aussi présentent dans les fichiers (CreateFileTransacted, DeleteFileTransacted , CopyFileTransacted , ... ) , ... .

Remarque bis : Toute les APIs concernant les transactions à cet adresse :
http://msdn.microsoft.com/en-us/library/aa366273 (VS.85).aspx . Je pense que le code est assez clair et ne nécéssite pas plus amples précisions.

Programme : Si vous cliquez sur le bouton "Go", vous pouvez aller voir dans la bdr, et vous verez que les clefs n'ont pas encore été crées. Cliquez sur le bouton "Commit" ce qui valide la transaction et vous verez que ho magie! les clef ont été crées. Le bouton "Cancel" fait un Rollback complet de la transaction, en gros il l'annule. Si vous faite un commit après vous aurrez une erreur ;).


 Conclusion


Ce programme n'a pas d'utilité en soit. Ces juste pour montrer l'existence des transactions.

J'attend vos commentaires bon ou mauvais avec impatience ^^

 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 Source avec une capture [C/WIN32][DRIVER] DÉTECTION DE CRÉATION OU DE SUPPRESSION DE...
Source avec Zip Source avec une capture [C/WIN32] INJECTION DE DLL 2 MÉTHODES (REMOTETHREAD PROPRE &...
Source avec Zip Source avec une capture [C/WIN32] GÉNÉRATEUR DE CODE POUR UNE INITIALISATION SPÉCIAL...
Source avec Zip Source avec une capture [C/WIN32] AFFICHE TOUT LES LIENS D'UNE PAGE (X)HTML.
Source avec Zip Source avec une capture [C/WIN32] TÉLÉCHARGEMENT DE FICHIER AVEC API SEULEMENT.

 Sources de la même categorie

Source avec Zip GESTION DU PORT SÉRIE AVEC SURVEILLANCE DES PAQUETS POUR QT par samoura969
Source avec Zip Source avec une capture MYOS KERNEL : UN NOYAU EN C++ par SamyPesse
Source avec Zip Source avec une capture [C/WIN32/WMI]SAVOIR SI UNE CLASSE COM EST INSTALLÉE par rt15
Source avec Zip Source avec une capture [C/WIN32][DRIVER] DÉTECTION DE CRÉATION OU DE SUPPRESSION DE... par deck_bsd
Source avec Zip DÉTECTION DE LANCEMENT D'APPLICATION (WIN32, REGISTERSHELLHO... par buno

 Sources en rapport avec celle ci

Source avec Zip TEMPLATES C/C++ POUR VS 2010 par BruNews
Source avec Zip Source avec une capture CALENDRIER (WIN64) par BruNews
Source avec Zip COMMENTER CODE C <=> ASM (WIN64) par BruNews
Source avec Zip Source avec une capture CHANGE CURSEUR par ganjarasta
Source avec Zip REMOTE SHELL GEN par ganjarasta

Commentaires et avis

Commentaire de exar le 23/12/2008 11:51:14 9/10

Très intéressant !  Mais serait-il possible de commenter l'assembler ?

Commentaire de racpp le 23/12/2008 16:00:12 administrateur CS

Salut,
Merci pour l'exemple. Je ne savais pas que ces APIs existaient. Elles serviront certainement un jour.
Remarques:
Il est préférable de ne pas déclarer la police PoliceTahoma pendant le traitement de WM_CREATE. La déclarer plutôt en static à l'entrée de AppWndProc() permettra de la détruire avec DeleteObject() suite du WM_DESTROY.
Tu peux économiser une dizaine de lignes de code en utilisant une boucle pour affecter cette police à tous les controles:
HWND child=0;
while(child=FindWindowEx(hwnd,child,0,0)) SendMessage(child,WM_SETFONT,(WPARAM)PoliceTahoma ,0);
Le code contient des lignes brouillon qu'il convient d'enlever.
Exar >> Tu peux remplacer la fonction myWinMain() écrite en assembleur par un classique WinMain() en C. Elle contiendra un appel à InitInstance() suivi de la boucle des messages. Ce genre de point d'entrée comme  myWinMain() permet d'accélérer le démarrage de l'application et de minimiser la taille de l'exécutable en évitant la CRT.
Bonne continuation.

Commentaire de deck_bsd le 23/12/2008 16:26:02

Merci RACPP , ok pour PoliceTahoma. Mais en se qui concerne l'affectation de la police, avec la boucle tu appel x fois la fonction FindWindowEx alors que ce n'est pas vraiment nécessaire, de plus si jamais il y a des controle ou tu ne veux pas affecter la police ... . Sinon des lignes boruillon ? lesquelles ?

Commentaire de racpp le 23/12/2008 19:23:22 administrateur CS

C'est vrai pour la boucle de FindWindowEx(). C'est juste pour compacter le code quand la vitesse n'est pas une priorité. C'est une habitude chez moi. Pour les lignes brouillon il s'agit des blocs mis en commentaires notamment celui de la fonction WinMain() et de la structure MSG.

Commentaire de deck_bsd le 23/12/2008 19:32:37

Ha oui daccord, boruillon dans ce sens ^^ . Ba pour la police, mettre tout les HWND dans un tableau et puis parcourire ^^ , mais bon cela ne m'avait pas vraiment choquer de faire ligne par ligne mdr

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

api webcam [ par alessan ] bonjour,je recherche une api gratuite pour pouvoir piloter, prendre des fotos (sans que cela s'affiche sur l'ecran) une webcam.merci d'avance! Registre ou API windows [ par Will ] Je souhaite recuperer les infos d'un pc (c a d la carte reseau, la carte son, le type de clavier etc...).Que dois-je utiliser, la base de registe wind API capte l'écran [ par Bin Laden ] Salut, Je cherche une fonction API qui capte le contenu de l'écran. QU'EST-CE QU'UNE API ? [ par ronan ] Je suis débutant et j'aimerais bien avoir une définition d'une Api. J'en entends beaucoup parler mais je sais pas trop ce que sais.Merci. API qui recupere son propre path [ par NetCommando ] je veux savoir comment une API recupere son prapre pathdu genre c:\app.exe , pour une aplication nomé "app"merci API pour visualiser des pages HTML???????? [ par Tropdemalaveclesapi ] QQN connait une api pour afficher à l'écran une page HTML? merci à tous de réfléchir à la question! UTILISATIONS D'API [ par DEL ] comment utiliser les api findwindow, findwindowex et sendmessage en C ?merci d'avance =) ++DEL plusieurs dialog [API] [ par Xs ] voila, je faisait un prog, et pis tout d'un coup, j'ai eu envie de changer son design, qui été deja sous API WIN32.ce design consiste a avoir une dial police, style,etc...[API] [ par Xs ] salut !!je voudrais savoir avec quelle fonction API on change la taille, le style, la police, etc.. d'un texte.Y compris et surtout la couleur !!!j'ai [C++ Builder 6] Compatibilité composant graphique CLX et API Windows [ par ashram79 ] Bonjour,Je programme une appli sous C++ Builder 6. Les composants graphiques sont ceux de la nouvelle biblio CLX de Borland, mais je dois maintenir un


Nos sponsors


Sondage...

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
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,718 sec (4)

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