Précédent   Forum des professionnels en informatique > Logiciels > Autres Logiciels
Autres Logiciels Bureautique, navigateurs, clients mails, traitements de textes, tableurs, multimédia, logiciels divers, etc...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/08/2005, 00h39   #1
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Par défaut Capture écran dans le menu contextuel

Bonjour à tous, je recherche un logiciel de capture d’écran (gratuit de préférence) qui ajoute dans le menu contextuel de Windows une commande pour capturer l’écran.
Y a des gens qui connaissent ça ici ?
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 02h28   #2
Membre actif
 
Avatar de SteelBox
 
Inscription : novembre 2002
Messages : 445
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 445
Points : 152
Points : 152
Je connais pas, non, mais c'est pas vraiment difficile à faire si tu connais un peu le C++ ou .net.
Il y a surement une API Windows pour faire une capture d'écran et ensuite, pour ajouter une entrée dans le menu contextuel, il faut ajouter ton programme dans la base de registre dans HKEY_CLASSES_ROOT (la démarche est décrite partout sur le web).
Bonne chance
__________________
La vitesse de la lumière étant supérieure à celle du son, il apparaît normal que beaucoup de gens paraissent brillants jusqu'à ce qu'ils l'ouvrent.
SteelBox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 02h37   #3
Membre chevronné
 
Inscription : décembre 2002
Messages : 1 057
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : décembre 2002
Messages : 1 057
Points : 779
Points : 779
Envoyer un message via MSN à portu
La touche Print Screen marche plutot bien chez moi
portu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 10h47   #4
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Bonjour SteelBox, l’ennuie s’est que je ne connaît rien en C++.

Bonjour portu, se n’est pas une touche clavier que je recherche, s’est ajouter une fonction pour capturer l’écran dans le menu contextuel de Windows.
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 11h24   #5
Membre chevronné
 
Inscription : décembre 2002
Messages : 1 057
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : décembre 2002
Messages : 1 057
Points : 779
Points : 779
Envoyer un message via MSN à portu
Je sais ! je voulais juste dire pourquoi ce casser la tête à faire click droit click gauche pour faire une capture d'écran ?
portu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 15h00   #6
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Ben tout simplement par ce que je préfère le clique droit que la touche Print Screen.
Si quelqu’un pourrait m’aider a faire sa en C++ ?
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 16h11   #7
Membre Expert
 
Avatar de Juju_41
 
Homme
Développeur en systèmes embarqués
Inscription : février 2003
Messages : 973
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France

Informations professionnelles :
Activité : Développeur en systèmes embarqués

Informations forums :
Inscription : février 2003
Messages : 973
Points : 1 162
Points : 1 162
Bonjour

Je pense que le gros problème du menu contextuel pour faire les captures d'écran, c'est qu'en fonction de l'endroit où sera fait le clic droit, le menu contextuel ne sera pas le même
Exemple : clic droit sur un fichier, sur la barre de taches, sur une image d'une page web, sur tel ou tel composant ...

Je ne sais pas si il y a une solution pour faire apparaitre la capture d'écran sur tous ces menus ... et même si c'était possible, je pense qu'il y aurait pas mal de clés a manipuler dans le registre

Si tu tiens vraiment à faire des captures d'écran à la souris sans utliser le clavier, tu peux faire un petit programme en ce que tu veux (C++, Java, Delphi etc ...) qui afficherait une icone dans la zone de notification, et qui, lorsqu'on cliquerai sur cette icone ferait une capture d'écran.
Juju_41 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2005, 16h35   #8
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Bonjour Juju_41 et merci, je n’ai pas besoin que la fonction de capture d’écran s’affiche dans tout les menu, mais seulement quand je clique droit sur un espace vide du bureau.
Quand à faire un petit programme en C++ je veux bien mais je ne connaît rien à ce langage, a vrai dire je n’ai jamais vraiment programmer il met arriver de faire quelques petite modification sur des source récupérer sur le Web mais uniquement en HTML, JavaScipt, un peut de PHP, un peut de DOS, mais vraiment du bricolage de base.
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2005, 13h05   #9
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Ou peut être existe il une commande MS DOS qui agisse comme la touche "Print Screen", quelqu'un connaît sa ?
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2005, 13h14   #10
Membre chevronné
 
Inscription : décembre 2002
Messages : 1 057
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : décembre 2002
Messages : 1 057
Points : 779
Points : 779
Envoyer un message via MSN à portu
je peux te le faire, ton mail stp .
portu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2005, 19h33   #11
Membre du Club
 
Inscription : août 2005
Messages : 62
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 62
Points : 47
Points : 47
si tu connais en delphi je crois que ce code que j'ai trouvé sur developpez.comva t'aider
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
unit Unit1;

interface

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls, ExtCtrls,ShellAPI, Buttons, ComCtrls, ShellCtrls,
  Menus, XPMan;
   Const WM_MYMESSAGE=WM_USER+100;
type
    TForm1 = class(TForm)
    Timer1: TTimer;
    SaveDialog1: TSaveDialog;
    ShellTreeView1: TShellTreeView;
    StatusBar1: TStatusBar;
    ShellComboBox1: TShellComboBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    GroupBox1: TGroupBox;
    XPManifest1: TXPManifest;
      procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
 
    private
    { Déclarations privées }
     notifyStruc : TNotifyIconData;
    procedure TrayMessage( Var Msg: TMsg; Var Handled: Boolean );
    public
    { Déclarations publiques }
    end;

var
    Form1: TForm1;

implementation

uses JPeg,ClipBrd;
{$R *.dfm}

var UneFois:Boolean=False;
    AFaire :Boolean=False; 
//************************************************************
procedure TForm1.Timer1Timer(Sender: TObject);
var BitMap   :TBitMap;
    Image       :TJpegImage;
    NomFichier :string;
    i           :Integer;
begin
    if AFaire and ClipBoard.HasFormat(cf_BitMap)
    then begin
    BitMap:=TBitMap.Create;
    Image :=TJpegImage.Create;
    try
        BitMap.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0);
        Image.CompressionQuality:=100;
        Image.Assign(BitMap);
        if not DirectoryExists(ShellTreeView1.Path+'\Capture') then
          CreateDir(ShellTreeView1.Path+'\Capture');
        I:=1;
        repeat
        NomFichier:=ShellTreeView1.Path+'\Capture\IMAGE'+IntToStr(i)+'.JPG';
        Inc(i);
        until not FileExists(NomFichier);
        try
        Image.SaveToFile(NomFichier);
        except
        end;
    finally
        BitMap.Free;
        Image .Free;
    end;
    end;
    AFaire:=False;

    if ((GetAsyncKeyState(VK_SNAPSHOT) and 32768) <> 0) 
    then begin
    if not UneFois
    then begin
        UneFois:=True;
        AFaire:=True;
    end;
    end
    else begin
    UneFois:=False;
    end;
end;
//************************************************************
procedure TForm1.FormCreate(Sender: TObject);
begin
 notifyStruc.cbSize:=SizeOf(notifyStruc);
    notifyStruc.Wnd:=Handle;
    notifyStruc.uID:=1;
    NotifyStruc.uFlags := NIF_ICON or NIF_TIP or NIF_MESSAGE;
    NotifyStruc.uCallbackMessage := WM_MYMESSAGE;
    NotifyStruc.hIcon :=Form1.Icon.Handle;//icone qui apparaitra dans le systray.
    NotifyStruc.szTip:='Nom du programme';
    Shell_NotifyIcon(NIM_ADD,@NotifyStruc);//ajoute la petite icône dans la barre des taches
    Application.OnMessage:=TrayMessage;
    end;
procedure TForm1.TrayMessage( Var Msg: TMsg; Var Handled: Boolean );//procedure pour les action sur l'icone
begin
   if  (Msg.lParam=WM_RBUTTONDOWN) then ShowMessage('Bouton droit pressé!');
   if  (Msg.lParam=WM_LBUTTONDOWN) then {WM_LBUTTONDOWN = Bouton gauche}


end;


procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
if (@NotifyStruc<>NIL) then
   Shell_NotifyIcon(NIM_DELETE,@NotifyStruc);// supprime la petite icône de la barre des taches
end;

procedure TForm1.ShellTreeView1Change(Sender: TObject; Node: TTreeNode);
begin
StatusBar1.SimpleText:=ShellTreeView1.Path+'....';
end;


end.
le code verifie si on appyuie sur la touche Impr ecran et sauvgarde une copie de l'écran dans un dossier specifier. donc vous pouvez changer l'évenemnt qui déclanche la capture d'écran
hassanibi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2005, 19h35   #12
Inactif
 
Inscription : août 2005
Messages : 1 054
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 1 054
Points : 285
Points : 285
Merci à vous, mais hélas je ne sais pas compiler.
Furius est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h52.


 
 
 
 
Partenaires

Hébergement Web