Bonjour,
Je veux créer una application Windows (avec un Form) qui doit tourner en
mode service système et Systray.
Le modele n'existe pas dans Visual Basic 2005 Express.
Dois je déja créer un projet avec "Application windows" ou "Application
console" ?
Avez vous un exemple de code?
Merci de vos réponses
Jean-Luc
Bonjour,
Je veux créer una application Windows (avec un Form) qui doit tourner en
mode service système et Systray.
Le modele n'existe pas dans Visual Basic 2005 Express.
Dois je déja créer un projet avec "Application windows" ou "Application
console" ?
Avez vous un exemple de code?
Merci de vos réponses
Jean-Luc
Bonjour,
Je veux créer una application Windows (avec un Form) qui doit tourner en
mode service système et Systray.
Le modele n'existe pas dans Visual Basic 2005 Express.
Dois je déja créer un projet avec "Application windows" ou "Application
console" ?
Avez vous un exemple de code?
Merci de vos réponses
Jean-Luc
Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object, ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" a écrit dans le message de news:
uBv%
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>
Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object, ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" <info@w3design.fr> a écrit dans le message de news:
uBv%23npH1JHA.4412@TK2MSFTNGP06.phx.gbl...
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>
Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object, ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" a écrit dans le message de news:
uBv%
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>
Je te conseille de regarder de ce coté ci:
http://www.dotnet-tech.com/tutoriels/service-windows/
http://msdn.microsoft.com/fr-fr/library/system.serviceprocess.servicebase.aspx
Le principe du service est de créer une classe héritant de
System.ServiceProcess.ServiceBase.
Cette classe doit surcharger les méthodes OnStart et OnStop
Voici un petit exemple d'utilisation:
Public Class MainService
Protected Overrides Sub OnStart(ByVal args() As String)
' Ajoutez ici le code pour démarrer votre service. Cette méthode
doit
' démarrer votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a
démarré.", EventLogEntryType.Information, 15)
End Sub
Protected Overrides Sub OnStop()
' Ajoutez ici le code pour effectuer les destructions nécessaires à
l'arrêt de votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a été
arrêté.", EventLogEntryType.Information, 15)
End Sub
End Class
Ensuite le tout est de l'installer au niveau système ... N'hésite pas à
revenir pour plus de détails.
"Stéphane" wrote:Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object,
ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As
System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" a écrit dans le message de news:
uBv%
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner
> en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>
Je te conseille de regarder de ce coté ci:
http://www.dotnet-tech.com/tutoriels/service-windows/
http://msdn.microsoft.com/fr-fr/library/system.serviceprocess.servicebase.aspx
Le principe du service est de créer une classe héritant de
System.ServiceProcess.ServiceBase.
Cette classe doit surcharger les méthodes OnStart et OnStop
Voici un petit exemple d'utilisation:
Public Class MainService
Protected Overrides Sub OnStart(ByVal args() As String)
' Ajoutez ici le code pour démarrer votre service. Cette méthode
doit
' démarrer votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a
démarré.", EventLogEntryType.Information, 15)
End Sub
Protected Overrides Sub OnStop()
' Ajoutez ici le code pour effectuer les destructions nécessaires à
l'arrêt de votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a été
arrêté.", EventLogEntryType.Information, 15)
End Sub
End Class
Ensuite le tout est de l'installer au niveau système ... N'hésite pas à
revenir pour plus de détails.
"Stéphane" wrote:
Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object,
ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As
System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" <info@w3design.fr> a écrit dans le message de news:
uBv%23npH1JHA.4412@TK2MSFTNGP06.phx.gbl...
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner
> en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>
Je te conseille de regarder de ce coté ci:
http://www.dotnet-tech.com/tutoriels/service-windows/
http://msdn.microsoft.com/fr-fr/library/system.serviceprocess.servicebase.aspx
Le principe du service est de créer une classe héritant de
System.ServiceProcess.ServiceBase.
Cette classe doit surcharger les méthodes OnStart et OnStop
Voici un petit exemple d'utilisation:
Public Class MainService
Protected Overrides Sub OnStart(ByVal args() As String)
' Ajoutez ici le code pour démarrer votre service. Cette méthode
doit
' démarrer votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a
démarré.", EventLogEntryType.Information, 15)
End Sub
Protected Overrides Sub OnStop()
' Ajoutez ici le code pour effectuer les destructions nécessaires à
l'arrêt de votre service.
EventLog.WriteEntry("MonServicePerso", "Le service perso a été
arrêté.", EventLogEntryType.Information, 15)
End Sub
End Class
Ensuite le tout est de l'installer au niveau système ... N'hésite pas à
revenir pour plus de détails.
"Stéphane" wrote:Bonjour Jean-Luc,
Je ne peux pas t'aider en ce qui concerne le mode Service.
(à part de mettre le Form en .Visible = False et .ShowInTaskbar = False)
Par contre, pour mettre une application dans Systray, je fais ainsi.
En espérant que cela puisse te servir,
Stéphane.
PS :
Côté concepteur :
- ajout d'un contrôle ContextMenuStrip dans mon Form
Name : ContextMenuStrip_NotifyIcon
Items :
1 ToolStripMenuItem Restaurer (Name : RestaurerToolStripMenuItem)
1 ToolStripSeparator
1 ToolStripMenuItem Quitter (Name : QuitterToolStripMenuItem)
RestaurerToolStripMenuItem.Fonts.Bold : True
- ajout d'un contrôle NotifyIcon dans mon Form
Name : NotifyIcon
Visible : False
Icon : Choisir son icône
Text : Texte à afficher dans le systray si besoin
ContextMenuStrip : ContextMenuStrip_NotifyIcon
Côté code :
Private Sub Form_Main_Resize(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Me.Resize
If Me.WindowState = FormWindowState.Minimized Then
Me.NotifyIcon.Visible = True
Me.NotifyIcon.Text = Me.Text 'si besoin
Me.ShowInTaskbar = False
End If
End Sub
Private Sub Form_Main_FormClosed(ByVal sender As Object, ByVal e As
System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
Me.NotifyIcon.Visible = False
'LibSre la m,moire avant de quitter
Me.Dispose(True)
End
End Sub
Private Sub NotifyIcon_MouseDoubleClick(ByVal sender As System.Object,
ByVal
e As System.Windows.Forms.MouseEventArgs) Handles
NotifyIcon.MouseDoubleClick
RestoreWindow()
End Sub
Private Sub RestoreWindow()
Me.NotifyIcon.Visible = False
Me.WindowState = FormWindowState.Normal
Me.ShowInTaskbar = True
Me.Activate()
End Sub
Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
Me.NotifyIcon.Visible = False
Me.Close()
End Sub
Private Sub RestaurerToolStripMenuItem_Click(ByVal sender As
System.Object,
ByVal e As System.EventArgs) Handles RestaurerToolStripMenuItem.Click
RestoreWindow()
End Sub
"Ggr" a écrit dans le message de news:
uBv%
> Bonjour,
> Je veux créer una application Windows (avec un Form) qui doit tourner
> en
> mode service système et Systray.
> Le modele n'existe pas dans Visual Basic 2005 Express.
> Dois je déja créer un projet avec "Application windows" ou "Application
> console" ?
> Avez vous un exemple de code?
>
> Merci de vos réponses
>
> Jean-Luc
>