Soft reset et hard reset (vb.net)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 33 326 fois - Téléchargée 22 fois

Contenu du snippet

Plusieurs fois demandées, voici les instructions permettant à un PDA d'effectuer logiciellement un Soft Reset et un Hard Reset

Source / Exemple :


#Region "Reset"
    Public Declare Function KernelIoControl Lib "coredll.dll" (ByVal dwIoControlCode As Integer, ByVal lpInBuf As IntPtr, ByVal nInBufSize As Integer, ByVal lpOutBuf As IntPtr, ByVal nOutBufSize As Integer, ByVal lpBytesReturned As IntPtr) As Boolean
    Public Sub EffectuerSoftReset()
        KernelIoControl(16842812, IntPtr.Zero, 0, IntPtr.Zero, 0, IntPtr.Zero)
    End Sub

    Public Declare Function SetSystemPowerState Lib "coredll.dll" (ByVal psState As String, ByVal StateFlags As Integer, ByVal Options As Integer) As Integer
    Public Sub EffectuerHardReset()
        SetSystemPowerState("ResetCold", 0, 4096)
    End Sub
#End Region

Conclusion :


Attention à l'utilisation du Hard Reset ;)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
mardi 17 février 2009
Statut
Membre
Dernière intervention
17 février 2009

Bonjour,
Voilà je suis débutant dans la programmation et je suis en possession d'un pocket pc hp ipaq h5550. Je suis tomber sur ce programme qui a l'air de bien marcher et je voudrais savoir coment transférer ce programme sur le pocket pc. Cette question à l'air banal pour vous mais moi je galère un peu!lol

Merci d'avance
Messages postés
24
Date d'inscription
jeudi 4 novembre 2004
Statut
Membre
Dernière intervention
4 février 2010

Merci pour l'adresse, c'est un bon site.
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
1
Oui c'est une bonne remarque je pense que c'est des reste des versions précédentes, afin d'assurer une compatibilité récurente
Pour information ma bible c'est http://pinvoke.net/
Messages postés
24
Date d'inscription
jeudi 4 novembre 2004
Statut
Membre
Dernière intervention
4 février 2010

Merci !
Juste le &H20000 et le &H200000 ont le même effet (du moins sur mon X51V) de mettre l'appareil en veille.
Par rapport à ton code, le KernelIoControl semble équivalent au &H800000, non ?
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
1
Declare Function SetSystemPowerState Lib "Coredll" ( _
ByVal psState As String, _
ByVal StateFlags As Integer, _
ByVal Options As Integer) As Integer

Const POWER_STATE_ON As Integer = &H10000
Const POWER_STATE_OFF As Integer = &H20000
Const POWER_STATE_SUSPEND As Integer = &H200000
Const POWER_FORCE As Integer = 4096

SetSystemPowerState(Nothing, POWER_STATE_OFF, POWER_FORCE)

(autres valeurs )
0xFFFF0000 // power state mask
0x00010000 // on state
0x00020000 // no power, full off
0x00040000 // critical off
0x00080000 // boot state
0x00100000 // idle state
0x00200000 // suspend state
0x00800000 // reset state
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.