2015-11-01 3 views
-1

J'essaye de créer un handle pour le périphérique Windows Phone. Mais CreateFileW renvoie -1 et le code d'erreur est 3 ERROR_PATH_NOT_FOUND. Toute aide à ce problème?Le handle CreateFileW() renvoie -1

Mon code:

handle = CreateFileW("\\\\.\\NOKIA_TOUCH", GENERIC_READ Or GENERIC_WRITE, FILE_SHARE_READ Or FILE_SHARE_WRITE, IntPtr.Zero, 3, 0, IntPtr.Zero) 
If handle = -1 Then 
    ShowMsg(Marshal.GetLastWin32Error) 
Else 
    ShowMsg("Success!") 
End If 

EDIT: P/Invoke code:

<DllImport("kernelBase.dll", CharSet:=CharSet.Unicode, ExactSpelling:=False, PreserveSig:=True, SetLastError:=True)> 
Public Shared Function CreateFileW(ByVal lpFileName As String, ByVal dwDesiredAccess As Integer, ByVal dwShareMode As Integer, ByVal lpSecurityAttributes As IntPtr, ByVal dwCreationDisposition As Integer, ByVal dwFLagsAndAttributes As Integer, ByVal hTemplateFile As IntPtr) As IntPtr 
End Function 
+0

Pouvez-vous [modifier] cela et nous montrer le code pour le p/Invoke? – theB

+1

C'est la syntaxe C, vous n'échappez pas aux barres obliques inverses dans Basic. Utilisez '" \\. \ NOKIA_TOUCH "' –

+0

Merci @ hans-passant, mais maintenant le code d'erreur est 2. 'ERROR_FILE_NOT_FOUND' – Clocker

Répondre

0

Il est peu probable de travailler (vous n'avez probablement pas la capacité de sécurité pour parler au conducteur Nokia) et même si cela fonctionne pendant le débogage sur votre appareil, vous ne pourrez pas le soumettre au Windows Store (sauf si vous travaillez pour un OEM qui a besoin d'utiliser ce pilote).

Qu'est-ce que vous essayez de faire avec le pilote qui ne peut pas être fait par l'API publique?

+0

Je ne vais pas soumettre l'application au magasin. J'ai besoin d'accéder au driver à cause des boutons capacitifs de contrôle du rétro-éclairage. – Clocker