begin process at 2008 07 05 00:53:26
1 205 021 membres
10 nouveaux aujourd'hui
14 118 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problème de débutant en codage de driver windows [ Système / Noyau ] (TorTukiTu)

Problème de débutant en codage de driver windows le 28/03/2008 17:39:47

TorTukiTu
Bonjour les gens,

J'ai décidé de créer mon premier driver windows en C : le driver qui dit coucou. J'ai téléchargé le WDK chez microsoft et lancé l'environnement x86 Windows XP (Normal sui sous XP avec un amd64) . voici le code que j'essaye de compiler:

#include <ntifs.h>

NTSTATUS DriverEntry( IN DRIVER_OBJECT theDriverObject, IN PUNICODE_STRING theRegistryPath)
{
    DbgPrint("Hello World");
    return STATUS_SUCCESS;
}

Voici le makefile:

! INCLUDE $(NTMAKEENV)\makefile.def

Et le fichier SOURCES

TARGETNAME=ROOTKIT
TARGETPATH=OBJ
TARGETTYPE=DRIVER
SOURCES=mydriver.c

****************************************************

Je compile avec build et la c'est le drame :

path contains nonexistant c:\program files\ati technologies\ati.ace\core-static,
 removing
BUILD: Compile and Link for x86
BUILD: Loading c:\winddk\6001.18001\build.dat...
BUILD: Computing Include file dependencies:
BUILD: Start time: Fri Mar 28 17:24:09 2008
BUILD: Examining c:\rootkit directory for files to compile.
BUILD: Saving c:\winddk\6001.18001\build.dat...
BUILD: Compiling and Linking c:\rootkit directory
_NT_TARGET_VERSION SET TO WINXP
Compiling - mydriver.c
errors in directory c:\rootkit
c:\winddk\6001.18001\inc\api\winnt.h(466) : error C2054: expected '(' to follow
'BYTE'
c:\winddk\6001.18001\inc\api\winnt.h(467) : error C2085: 'WORD' : not in formal
parameter list
c:\winddk\6001.18001\inc\api\winnt.h(467) : error C2146: syntax error : missing
',' before identifier 'FSHORT'
c:\winddk\6001.18001\inc\api\winnt.h(468) : error C2085: 'DWORD' : not in formal
 parameter list
... ERREURS A GOGO....
c:\winddk\6001.18001\inc\api\winnt.h(3486) : error C1003: error count exceeds 10
0; stopping compilation
Linking Executable - objchk_wxp_x86\i386\rootkit.sys
link : error LNK1181: cannot open input file 'c:\rootkit\objchk_wxp_x86\i386\myd
river.obj'
BUILD: Finish time: Fri Mar 28 17:24:10 2008
BUILD: Done

    3 files compiled - 12 Warnings - 102 Errors
    1 executable built - 1 Error

J'ai cherché désespérément un moyen de résoudre ce problème sur la toile et sur la doc de WDK mais je n'ai pas réussi. Pourriez-vous m'aider plz

Ordinateur : moyen conçu pour accélérer et automatiser les erreurs.

Re : Problème de débutant en codage de driver windows le 28/03/2008 21:12:38

racpp
(Admin CS)
Réponse acceptée !
Salut,
Je n'ai pas encore travaillé avec le WDK mais généralement un code pour driver devrait commencer par:
#include <ntddk.h>


Re : Problème de débutant en codage de driver windows le 29/03/2008 00:31:52

TorTukiTu
Réponse acceptée !

Salut merci de ta réponse rapide


Je sais j'y ait déja pensé, mais ça donne toujours autant d'erreurs.
Je crois que c'est du au compilateur.
J'y connais riens mais est-ce que ça pourrait pas être une histoire d'environnement?


Ordinateur : moyen conçu pour accélérer et automatiser les erreurs.

Re : Problème de débutant en codage de driver windows le 29/03/2008 13:34:01

TorTukiTu
Réponse acceptée !
Re

Bon j'avance un peu . Deja mon header ntddk.h était pourri je sais pas pourquoi mais je l'ai retéléchargé et sa semble mieux marcher. J'ai cependant toujours les erreurs suivantes

C:\driver>build
path contains nonexistant c:\program files\ati technologies\ati.ace\core-static,
 removing
BUILD: Compile and Link for x86
BUILD: Loading c:\winddk\6001.18001\build.dat...
BUILD: Computing Include file dependencies:
BUILD: Start time: Sat Mar 29 13:27:56 2008
BUILD: Examining c:\driver directory for files to compile.
BUILD: Saving c:\winddk\6001.18001\build.dat...
BUILD: Compiling and Linking c:\driver directory
_NT_TARGET_VERSION SET TO WINXP
Compiling - mydriver.c
Linking Executable - objchk_wxp_x86\i386\rootkit.sys
errors in directory c:\driver
c:\driver\bufferoverflowk.lib(gs_support.obj) : error LNK2019: unresolved extern
al symbol _DriverEntry@8 referenced in function _GsDriverEntry@8
c:\driver\objchk_wxp_x86\i386\rootkit.sys : error LNK1120: 1 unresolved external
s
BUILD: Finish time: Sat Mar 29 13:27:57 2008
BUILD: Done

    3 files compiled - 1 Warning
    1 executable built - 2 Errors
******************************************************************************
Est-ce que ça: error LNK2019: unresolved extern
al symbol _DriverEntry@8 referenced in function _GsDriverEntry@8 sa voudrait pas dire que j'ai mal nommé une fonction quelconque? Ou est-ce que c'est encore une histoire de header qu'il ne toruve pas ou qui est mal foutu? Un petit coup de pouce please?

Ordinateur : moyen conçu pour accélérer et automatiser les erreurs.

Re : Problème de débutant en codage de driver windows le 29/03/2008 14:16:16

TorTukiTu
Réponse acceptée !
Re
J'ai galéré mais j'ai trouvé <3
Il y avait une faute dans le livre dans lequel j'aprend! Coquille au niveau de IN DRIVER_OBJECT  qui est en réalité IN PDRIVER_OBJECT Donc sayest sa marche

Ordinateur : moyen conçu pour accélérer et automatiser les erreurs.


Classé sous : error, driver, in, build, winddk

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS