@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: Controls the overall device power state !!!!C# Signature: [DllImport("coredll.dll", SetLastError=true)] static extern int SetSystemPowerState(string psState, int StateFlags, int Options); !!!!VB Signature: Declare Function SetSystemPowerState Lib "Coredll" ( _ ByVal psState As String, _ ByVal StateFlags As Integer, _ ByVal Options As Integer) As Integer !!!!User-Defined Types: None. !!!!Alternative Managed API: Do you know one? Please contribute it! !!!!Notes: May be more effective at forcing the device off than holding it on. !!!!Tips & Tricks: '''Conversion table Win32 to .NET''' This is a very handy table when you want to convert C++ to C# .NET using P/Invoke || '''Windows Data Type''' || '''.NET Data Type''' || ||BOOL, BOOLEAN|| Boolean or Int32|| ||BSTR || String|| ||BYTE || Byte|| ||CHAR || Char|| ||DOUBLE || Double|| ||DWORD/LPDWORD || Int32 or UInt32|| ||FLOAT || Single|| ||HANDLE (and all other handle types, such as HFONT and HMENU) || IntPtr, UintPtr, or HandleRef|| ||HRESULT || Int32 or UInt32|| ||INT || Int32|| ||LANGID || Int16 or UInt16|| ||LCID || Int32 or UInt32|| ||LONG || Int32|| ||LPARAM || IntPtr, UintPtr, or Object|| ||LPCSTR || String|| ||LPCTSTR || String|| ||LPCWSTR || String|| ||LPSTR || String or StringBuilder*|| ||LPTSTR || String or StringBuilder|| ||LPWSTR || String or StringBuilder|| ||LPVOID || IntPtr, UintPtr, or Object|| ||LRESULT || IntPtr|| ||SAFEARRAY || .NET array type|| ||SHORT || Int16|| ||TCHAR || Char || ||UCHAR || SByte|| ||UINT || Int32 or UInt32|| ||ULONG || Int32 or UInt32|| ||VARIANT || Object|| ||VARIANT_BOOL || Boolean|| ||WCHAR || Char|| ||WORD || Int16 or UInt16|| ||WPARAM || IntPtr, UintPtr, or Object|| !!!!Sample Code (VB): 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 Const POWER_STATE_RESET as Integer = &H800000 'this wil make the device soft reset! :) Public Sub ForcePower() SetSystemPowerState(Nothing, POWER_STATE_ON, POWER_FORCE) End Sub Public Sub SoftReset() SetSystemPowerState(Nothing, POWER_STATE_RESET, POWER_FORCE) End Sub !!!!Sample Code (C#): const int POWER_STATE_ON = 0x00010000; const int POWER_STATE_OFF = 0x00020000; const int POWER_STATE_SUSPEND = 0x00200000; const int POWER_FORCE = 4096; const int POWER_STATE_RESET = 0x00800000; public int ForcePower() { return SetSystemPowerState(null, POWER_STATE_ON, POWER_FORCE); } public int SoftReset() { // Though I guess this will never really return anything return SetSystemPowerState(null, POWER_STATE_RESET, POWER_FORCE); } Documentation: SetSystemPowerState@msdn on MSDN
Edit coredll.SetSystem...
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.