Quel type de projet choisir dans VS2008 ??

Résolu
Messages postés
12
Date d'inscription
samedi 27 décembre 2003
Statut
Membre
Dernière intervention
21 octobre 2010
-
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
-
Bonjour à tous, je voudrais savoir si il était possible de créer un projet qui lors de son exécution, ne soit pas visible (genre vbscript). Peut être est-ce une option à activer?
Merci de votre aide.

12 réponses

Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
Public








Class

Form1



' If you just want the hot key, with no modifier








' use zero for the fsModifiers value (But this is a BAD IDEA).








Private





Const

NoModKey


As





Integer

= 0



' Modifier key constants








Private





Const

MOD_ALT


As





Integer

= 1



Private





Const

MOD_CONTROL


As





Integer

= 2



Private





Const

MOD_SHIFT


As





Integer

= 4



Private





Const

MOD_WIN


As





Integer

= 8



' Value indicating Windows Message is a hot key.








Protected





Friend





Const

WM_HOTKEY


As





Integer

= 786



' Unique ID for the atomic hot key.








Protected





Friend

hotkeyID


As





Short








' Register hotkey








Protected





Friend





Declare





Function

RegisterHotKey


Lib





"user32"

(


ByVal

hwnd


As

IntPtr,


ByVal

id


As





Integer

,


ByVal

fsModifiers


As





Integer

,


ByVal

vk


As

Keys)


As





Integer








' Add global name for hotkey








Protected





Friend





Declare





Function

GlobalAddAtomA


Lib





"kernel32"

(


ByVal

lpString


As





String

)


As





Short








' Delete hotkey atom.








Protected





Friend





Declare





Function

GlobalDeleteAtom


Lib





"kernel32"

(


ByVal

nAtom


As





Integer

)


As





Short








' Unregister hotkey.








Protected





Friend





Declare





Function

UnregisterHotKey


Lib





"user32"

(


ByVal

hwnd


As

IntPtr,


ByVal

id


As





Integer

)


As





Integer 

 










Private





Sub

hotkey_Load()



' GlobalAddAtom adds the String to the System global








' atom table, and returns a unique number to identify








' it the atom table.


hotkeyID = GlobalAddAtomA(





"GlobalHotKeyFor_MyUniqueAppName"

)



If

hotkeyID = 0


Then


MessageBox.Show(





"Unable to generate the requested hotkey unique ID."

,


"Error Making Hotkey ID"

)



Else








' Register the hot key combo used to show the form.








' I used Alt key modifier and the F1 key, Alt + F1,








' but you can use any key combo.








If

RegisterHotKey(


Me

.Handle, hotkeyID, MOD_ALT, Keys.F1) = 0


Then


MessageBox.Show(





"Unable to register the requested hotkey."

,


"Error Registering Hotkey"

)



Else








'mettre la ligne suivante en commentaire pour la production


MessageBox.Show(





"The following Hotkey was registered for this application: "

&


"Keys: Alt + F1"

,


"Hot Key Registered"

)



End





If








End





If








End





Sub








Private





Sub

Form1_Closing(


ByVal

sender


As





Object

,


ByVal

e


As

System.ComponentModel.CancelEventArgs)


Handles





MyBase

.Closing



' READ ME:








' You MUST unregister your Hot Key, or your application will leak memory. 

 










If





Me

.hotkeyID <> 0


Then


UnregisterHotKey(





Me

.Handle, hotkeyID)



' Also delete the hot key atom.


GlobalDeleteAtom(hotkeyID)








End





If








End





Sub 

 










Protected





Overrides





Sub

WndProc(


ByRef

m


As

System.Windows.Forms.Message)



' Check for our Windows Message Hotkey.








If

m.Msg = WM_HOTKEY


Then








' Do something.








Me

.Show()



Me

.TopLevel =


True








End





If








' Return key messages to the application.








MyBase

.WndProc(m)



End





Sub








Private





Sub

Form1_Load(


ByVal

sender


As

System.Object,


ByVal

e


As

System.EventArgs)


Handles





MyBase

.Load



Me

.TopLevel =


False








' invisible dans la barre de taches et dans la liste des programmes ouvert


hotkey_Load()








End





SubEnd







Class









Au contraire des chasseurs qui ne sont pas des lapins, les pollueurs, eux, sont des ordures



/B>
Messages postés
12
Date d'inscription
samedi 27 décembre 2003
Statut
Membre
Dernière intervention
21 octobre 2010

Merci beaucoup, ça marche nickel ! ^^
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
11
Ca marche, mais c'est long ^^

Voici ma version:

Private Sub Form_Load(...) Handles Me.Load
Me.Opacity = 0
End Sub

Private Sub Form_Shown(...) Handles Me.Shown
Me.Visible = False
Me.Opacity = 1
End Sub

La procédure Form_Shown n'est même pas indispensable suivant ce que tu veux faire...
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
Kevin.Ory , avec mon code la fenètre est invisible dans la barre de taches ,
dans la listes de taches du gestionnaire de taches, et pour l'utilisateur.

Au contraire des chasseurs qui ne sont pas des lapins, les pollueurs, eux, sont des ordures

/B>
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
11
"la fenètre est invisible dans la barre de taches"
Moi aussi

"dans la listes de taches du gestionnaire de taches"
Moi aussi

"et pour l'utilisateur"
C'est à dire? Invisible à l'écran? Moi aussi

Elle est aussi invisible dans le menu Alt-Tab
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
et comment tu la fait devenir visible???


la mienne c'est facile tu tapes Alt+F1






Au contraire des chasseurs qui ne sont pas des lapins, les pollueurs, eux, sont des ordures



/B>
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
11
La mienne tu fais Me.Visible = True. Après un double-clique sur l'icône dans la systray par ex...
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
mwouais donc il y a quelque chose de visible
(ton icone dans la systray par exemple)

Au contraire des chasseurs qui ne sont pas des lapins, les pollueurs, eux, sont des ordures

/B>
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
11
Mais lol... elle n'est pas obligatoire l'icône dans la systray. Si tu veux la rendre visible par la systray, un autre programme ou avec un bind clavier, à toi de voir, mais ce n'est pas demandé dans ce cas.
Champiouf voulais rendre une form invisible, je le fais en 3 lignes, si il veut ajouter un bind clavier, il pourra le demander  et on le lui donnera....
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
c'est sur que ton code est plus court

Au contraire des chasseurs qui ne sont pas des lapins, les pollueurs, eux, sont des ordures

/B>
Messages postés
12
Date d'inscription
samedi 27 décembre 2003
Statut
Membre
Dernière intervention
21 octobre 2010

Je veux bien le code pour le bind Kevin.
Merci à vous deux pour vos réponses ^^
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Salut,

A partir d'un projet vide, ajoute la référence System.Windows.Forms et une page de code vide et colle s'y le code suivant :
Public Module Program
  Public Sub Main()
    System.Windows.Forms.Application.Run()
    
' Ton code ici
  End Sub

End Module
<!-- Coloration syntaxique vb/vba/vb.net : http://charles.racaud.free.fr/code-syntaxing/ -->Coloration syntaxique vb/vba/vb.net

__________
  Kenji