Editor for device driver work

I *really* hate to ask this question because I know what it can lead to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and then
the
Build utility to actually create the executables. I like VS’s browse stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server 2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.

We (Compuware/Numega DriverStudio) have the same problem, yet we still use
MSVC 6 for everything. What we do is, we use the “build/configurations”
functionality to set up new configurations (IA32-Debug, IA32-Release,
IA64-Debug, IA64-Release, AMD64-Debug, AMD-64 Release, and so on). These
configurations, once set, appear in the “settings for” pulldown list in the
“project/settings” pane, and you can select the current config to be built
if you go to “build/set active configuration”. That allows you to configure
in detail for each different build, and it includes the “custom build” pane,
so that you can put a call to build.exe in there if you don’t feel
comfortable using the IDE to build your drivers. Also note that you can get
the MSVC shell to use whatever compiler you want just by setting your
“tools/options/directories/executable files”.

You can also set up workspaces with multiple projects and use the
“project/dependencies” box to link subprojects in dependency chains. We’re
reasonably comfortable with MSVC 6, so much so that we still didn’t quite
convince ourselves to upgrade to MSVC.NET. We also build with MSVC.NET, but
only the .NET side of the system.

Alberto.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Charles Lane
Sent: Wednesday, March 31, 2004 2:33 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and then
the
Build utility to actually create the executables. I like VS’s browse stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server 2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify us immediately
and then destroy it.

General answer is use any professional editor which contains usable symbol
browser and other things you’re used to. The best but time consuming way is
to download demos for several of them and try to find one which fulfils your
needs.

Personally, I use Multi-Edit (http://www.multieditsoftware.com/) but I’m
biased. First, I use it for all development for about 15 years and second,
some code I wrote was included in the release recently. It includes BSC
symbol browser and function tooltips. As for DDK support, I use a batch
which sets correct environment and calls build utility. I also use macros
which allow per-project DDK settings (not incuded in release but available
on request).

Note your reason to switch may not be adequate. Batch which prepares
environment (calls DDK setenv) and calls proper compiler used from VS is
proper solution and you won’t get anything better with any other editor.
This solution is equal of starting console with DDK environment and calling
build by hand.

Best regards,

Michal Vodicka
STMicroelectronics Design and Application s.r.o.
[michal.vodicka@st.com, http:://www.st.com]


From: Charles Lane[SMTP:xxxxx@earthlink.net]
Reply To: Windows System Software Devs Interest List
Sent: Wednesday, March 31, 2004 9:32 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: michal.vodicka@st.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Actually, Michal, have you used Whole Tomato ? I like it very much, it sits
on top of the MSVC shell.

Alberto.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Vodicka, Michal
Sent: Wednesday, March 31, 2004 3:03 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

General answer is use any professional editor which contains usable symbol
browser and other things you’re used to. The best but time consuming way is
to download demos for several of them and try to find one which fulfils your
needs.

Personally, I use Multi-Edit (http://www.multieditsoftware.com/) but I’m
biased. First, I use it for all development for about 15 years and second,
some code I wrote was included in the release recently. It includes BSC
symbol browser and function tooltips. As for DDK support, I use a batch
which sets correct environment and calls build utility. I also use macros
which allow per-project DDK settings (not incuded in release but available
on request).

Note your reason to switch may not be adequate. Batch which prepares
environment (calls DDK setenv) and calls proper compiler used from VS is
proper solution and you won’t get anything better with any other editor.
This solution is equal of starting console with DDK environment and calling
build by hand.

Best regards,

Michal Vodicka
STMicroelectronics Design and Application s.r.o.
[michal.vodicka@st.com, http:://www.st.com]


From: Charles Lane[SMTP:xxxxx@earthlink.net]
Reply To: Windows System Software Devs Interest List
Sent: Wednesday, March 31, 2004 9:32 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: michal.vodicka@st.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify us immediately
and then destroy it.

I think this is really the matter of tastes only. I’m happy with MSVC 6
as editor. Other people have other preferences.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From: “Moreira, Alberto”
To: “Windows System Software Devs Interest List”
Sent: Thursday, April 01, 2004 12:07 AM
Subject: RE: [ntdev] Editor for device driver work

> Actually, Michal, have you used Whole Tomato ? I like it very much, it sits
> on top of the MSVC shell.
>
> Alberto.
>
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com]On Behalf Of Vodicka, Michal
> Sent: Wednesday, March 31, 2004 3:03 PM
> To: Windows System Software Devs Interest List
> Subject: RE: [ntdev] Editor for device driver work
>
>
> General answer is use any professional editor which contains usable symbol
> browser and other things you’re used to. The best but time consuming way is
> to download demos for several of them and try to find one which fulfils your
> needs.
>
> Personally, I use Multi-Edit (http://www.multieditsoftware.com/) but I’m
> biased. First, I use it for all development for about 15 years and second,
> some code I wrote was included in the release recently. It includes BSC
> symbol browser and function tooltips. As for DDK support, I use a batch
> which sets correct environment and calls build utility. I also use macros
> which allow per-project DDK settings (not incuded in release but available
> on request).
>
> Note your reason to switch may not be adequate. Batch which prepares
> environment (calls DDK setenv) and calls proper compiler used from VS is
> proper solution and you won’t get anything better with any other editor.
> This solution is equal of starting console with DDK environment and calling
> build by hand.
>
> Best regards,
>
> Michal Vodicka
> STMicroelectronics Design and Application s.r.o.
> [michal.vodicka@st.com, http:://www.st.com]
>
> > ----------
> > From: Charles Lane[SMTP:xxxxx@earthlink.net]
> > Reply To: Windows System Software Devs Interest List
> > Sent: Wednesday, March 31, 2004 9:32 PM
> > To: Windows System Software Devs Interest List
> > Subject: [ntdev] Editor for device driver work
> >
> > I really hate to ask this question because I know what it can lead to…
> > :slight_smile:
> >
> > However.
> >
> > I’ve always used Visual Studio as an editor for device driver files and
> > then
> > the
> > Build utility to actually create the executables. I like VS’s browse stuff
> > and so on.
> > Besides, I’m used to it.
> >
> > Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
> > 2003,
> > XP, 2000
> > and whatever the current AMD beta O/S is supposed to be.) and I think it’s
> > time to say
> > good bye to VS for this sort of thing.
> >
> > (I’m aware that there is a BAT file for using VS with the proper compilers
> > but I think
> > maybe using something closer to Microsoft’s internal process is better.)
> >
> > So.
> >
> > What editor do you find useful for dealing with driver code?
> >
> > Mickey.
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: michal.vodicka@st.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@compuware.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
>
>
> The contents of this e-mail are intended for the named addressee only. It
> contains information that may be confidential. Unless you are the named
> addressee or an authorized designee, you may not copy or use it, or disclose
> it to anyone else. If you received it in error please notify us immediately
> and then destroy it.
>
>
> —
> Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com

> ----------

From: Moreira, Alberto[SMTP:xxxxx@compuware.com]
Reply To: Windows System Software Devs Interest List
Sent: Wednesday, March 31, 2004 10:07 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

Actually, Michal, have you used Whole Tomato ? I like it very much, it
sits
on top of the MSVC shell.

My coworkers use it and I’d agree it makes VS almost usable :wink: There are
things which are helpful and interesting and other which I take as annoying
(spell checker, overcoloring); maybe can be turned off. However, the main
problem is it is build on top of VS which I take as a pain. I need an editor
which can be customized to my needs and not vice versa. I really tried to
use VS years before but found it insufficient and inextendable for me
because extensions are written in BASIC which makes me barf.

Ah, I fool forgot to change address to .nospam in my previous mail and now
will be informed about every idiot in the world who is out of office…

Best regards,

Michal Vodicka
STMicroelectronics Design and Application s.r.o.
[michal.vodicka@st.com, http:://www.st.com]

With VC7 it’s very easy to set up a build environment where you can use
VS as editor (with all its reach functionality) available to you and
still be able to do builds using “build” utility from the DDK. Here is
how I do it for myself. I have installed all 3 DDKs (W2K, XP, NET) under
one root and set global env. variable DDKROOT to C:\DDK. Then I create
an empty “makefile” project in VC7, added “source” and “makefile” files
to it and other files that compose my driver project. Then I’ve created
W2K, XP and NET configurations each with both, free and checked
versions. Then, in Project->Properties->Configuration Properties->NMake
I created following settings (example is given for “XP checked” config):

  1. For “Build Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -beEIFZ
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”
  2. For “Rebuild All Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -cbeZEIF
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”

… and everything started to fly :slight_smile:

Here is a sample of my “sources” file

TARGETNAME = SdFMon
TARGETTYPE = DRIVER
DRIVERTYPE = FS

386_WARNING_LEVEL = /W4 /WX
MSC_OPTIMIZATION = $(MSC_OPTIMIZATION) /Ob1

!IF “$(_NT_TARGET_VERSION)” == “0x500”

UMFSD_WINVERDEF= /DNTVERSION=500 /DWINVER=0x500 /D_WIN32_WINNT=0x0500
BASE_INC= “$(BASEDIR)\inc\ddk\w2k”; “$(BASEDIR)\inc\ifs\w2k”;
“$(BASEDIR)\inc\ddk\wdm\w2k”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\W2K\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Checked\i386
COMMONLIBPATH = …\Libs\W2K\Checked\i386
!ELSE
TARGETPATH = Bin\W2K\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Free\i386
COMMONLIBPATH = …\Libs\W2K\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x501”

UMFSD_WINVERDEF= /DNTVERSION=501 /DWINVER=0x501 /D_WIN32_WINNT=0x0501
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wxp”; “$(BASEDIR)\inc\ifs\wxp”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wxp”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\XP\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Checked\i386
COMMONLIBPATH = …\Libs\XP\Checked\i386
!ELSE
TARGETPATH = Bin\XP\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Free\i386
COMMONLIBPATH = …\Libs\XP\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x502”

UMFSD_WINVERDEF= /DNTVERSION=502 /DWINVER=0x502 /D_WIN32_WINNT=0x0502
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wnet”; “$(BASEDIR)\inc\ifs\wnet”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wnet”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\NET\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Checked\i386
COMMONLIBPATH = …\Libs\NET\Checked\i386
!ELSE
TARGETPATH = Bin\NET\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Free\i386
COMMONLIBPATH = …\Libs\NET\Free\i386
!ENDIF

!ENDIF

TARGETLIBS = $(TARGETLIBS) $(UMFSDLIBPATH)\KmCpp.lib
$(UMFSDLIBPATH)\KmDrvBase.lib $(UMFSDLIBPATH)\KmWrap.lib
$(UMFSDLIBPATH)\KmRtl.lib $(COMMONLIBPATH)\SdFMonLib.lib

DRVBASE_INC = “…..\Inc”; “…\KM_Inc”; “$(DRVSDK)\Common”;
“$(DRVSDK)\KM\Inc\Common”; “$(DRVSDK)\KM\Inc\KmCpp”;
“$(DRVSDK)\KM\Inc\KmRtl”; “$(DRVSDK)\KM\Inc\KmWrap”;
“$(DRVSDK)\KM\Inc\KmDrvBase”

INCLUDES= $(BASE_INC); $(DRVBASE_INC)

UMFSD_BASEDEF= /DRING0 /DNT_UP=0

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
UMFSD_BASEDEF = $(UMFSD_BASEDEF) /DDBG=1
!ENDIF

C_DEFINES=$(UMFSD_BASEDEF) $(UMFSD_WINVERDEF)

SOURCES= SdFMon.rc \
SdFMonRecognizerHookDeviceObject.cpp \
SdFMonFilterDeviceObject.cpp \
SdFMonClose.cpp \
SdFMonCreate.cpp \
SdFMonCleanup.cpp \
SdFMonSetInformation.cpp \
SdFMonWrite.cpp \
SdFMonEnumSupportImp.cpp \
SdFMonLegacyMonitorCallback.cpp \
SdFMonDriverObject.cpp

-----Original Message-----
From: Charles Lane [mailto:xxxxx@earthlink.net]
Sent: Wednesday, March 31, 2004 11:33 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead
to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse
stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think
it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper
compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:
xxxxx@borland.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

And if you want, you can configure as brief. Isn’t it the very base on the PC we could get back to. Also just throw, lot of people uses SlickEdit. I still did not get to the point of finding what is slick about it.
-prokash

Maybe it’s time to get the technology from eVC++ studio or Platform Builder
to VisualStudio. Recently there was feedback from given to most of us, if
not
all of us. I did mention that it would be a great step forward to this,
starting
with punch card (JCL, PROC) then makefile, then wizard, it’s getting better
everyday
so whynot VStudio handles it transperantly. I carry template project file to
have
mix-language compilation, MASM pwb is bit old fashioned. And on my way I
found that
the ml comes for kernl module target is different from ml that comes with
apps dev., if
my memory servers now !!! or at least somewhere 386(p) gets shovled in or
something.

-Different translator(s), different target(s) would be nice to have.
I’M NOT COMPLAINING THOUGH, AS OFTEN IT SOUNDS THAT WAY :slight_smile:
-prokash

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Vladimir
Chtchetkine
Sent: Wednesday, March 31, 2004 12:54 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

With VC7 it’s very easy to set up a build environment where you can use
VS as editor (with all its reach functionality) available to you and
still be able to do builds using “build” utility from the DDK. Here is
how I do it for myself. I have installed all 3 DDKs (W2K, XP, NET) under
one root and set global env. variable DDKROOT to C:\DDK. Then I create
an empty “makefile” project in VC7, added “source” and “makefile” files
to it and other files that compose my driver project. Then I’ve created
W2K, XP and NET configurations each with both, free and checked
versions. Then, in Project->Properties->Configuration Properties->NMake
I created following settings (example is given for “XP checked” config):

  1. For “Build Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -beEIFZ
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”
  2. For “Rebuild All Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -cbeZEIF
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”

… and everything started to fly :slight_smile:

Here is a sample of my “sources” file

TARGETNAME = SdFMon
TARGETTYPE = DRIVER
DRIVERTYPE = FS

386_WARNING_LEVEL = /W4 /WX
MSC_OPTIMIZATION = $(MSC_OPTIMIZATION) /Ob1

!IF “$(_NT_TARGET_VERSION)” == “0x500”

UMFSD_WINVERDEF= /DNTVERSION=500 /DWINVER=0x500 /D_WIN32_WINNT=0x0500
BASE_INC= “$(BASEDIR)\inc\ddk\w2k”; “$(BASEDIR)\inc\ifs\w2k”;
“$(BASEDIR)\inc\ddk\wdm\w2k”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\W2K\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Checked\i386
COMMONLIBPATH = …\Libs\W2K\Checked\i386
!ELSE
TARGETPATH = Bin\W2K\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Free\i386
COMMONLIBPATH = …\Libs\W2K\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x501”

UMFSD_WINVERDEF= /DNTVERSION=501 /DWINVER=0x501 /D_WIN32_WINNT=0x0501
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wxp”; “$(BASEDIR)\inc\ifs\wxp”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wxp”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\XP\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Checked\i386
COMMONLIBPATH = …\Libs\XP\Checked\i386
!ELSE
TARGETPATH = Bin\XP\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Free\i386
COMMONLIBPATH = …\Libs\XP\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x502”

UMFSD_WINVERDEF= /DNTVERSION=502 /DWINVER=0x502 /D_WIN32_WINNT=0x0502
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wnet”; “$(BASEDIR)\inc\ifs\wnet”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wnet”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\NET\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Checked\i386
COMMONLIBPATH = …\Libs\NET\Checked\i386
!ELSE
TARGETPATH = Bin\NET\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Free\i386
COMMONLIBPATH = …\Libs\NET\Free\i386
!ENDIF

!ENDIF

TARGETLIBS = $(TARGETLIBS) $(UMFSDLIBPATH)\KmCpp.lib
$(UMFSDLIBPATH)\KmDrvBase.lib $(UMFSDLIBPATH)\KmWrap.lib
$(UMFSDLIBPATH)\KmRtl.lib $(COMMONLIBPATH)\SdFMonLib.lib

DRVBASE_INC = “…..\Inc”; “…\KM_Inc”; “$(DRVSDK)\Common”;
“$(DRVSDK)\KM\Inc\Common”; “$(DRVSDK)\KM\Inc\KmCpp”;
“$(DRVSDK)\KM\Inc\KmRtl”; “$(DRVSDK)\KM\Inc\KmWrap”;
“$(DRVSDK)\KM\Inc\KmDrvBase”

INCLUDES= $(BASE_INC); $(DRVBASE_INC)

UMFSD_BASEDEF= /DRING0 /DNT_UP=0

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
UMFSD_BASEDEF = $(UMFSD_BASEDEF) /DDBG=1
!ENDIF

C_DEFINES=$(UMFSD_BASEDEF) $(UMFSD_WINVERDEF)

SOURCES= SdFMon.rc \
SdFMonRecognizerHookDeviceObject.cpp \
SdFMonFilterDeviceObject.cpp \
SdFMonClose.cpp \
SdFMonCreate.cpp \
SdFMonCleanup.cpp \
SdFMonSetInformation.cpp \
SdFMonWrite.cpp \
SdFMonEnumSupportImp.cpp \
SdFMonLegacyMonitorCallback.cpp \
SdFMonDriverObject.cpp

-----Original Message-----
From: Charles Lane [mailto:xxxxx@earthlink.net]
Sent: Wednesday, March 31, 2004 11:33 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead
to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse
stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think
it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper
compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:
xxxxx@borland.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@garlic.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Hmm. I’ve used all the versions of VS since 5, CodeWright (several
versions), and SlickEdit 7-9. SlickEdit is the one I keep going back to. I
like CodeWright better when I have to print something, but the last one I
used was obnoxiously unstable when building an external batch file.

Maybe I’ll have to try MultiEdit. I’m always looking for an editor that
fixes the annoyances I have with my current favorite. :slight_smile:

Phil

Philip D. Barila Windows DDK MVP
Seagate Technology, LLC
(720) 684-1842
As if I need to say it: Not speaking for Seagate.

“Vodicka, Michal” <michal.vodicka> wrote in message
news:xxxxx@ntdev…
> General answer is use any professional editor which contains usable symbol
> browser and other things you’re used to. The best but time consuming way
is
> to download demos for several of them and try to find one which fulfils
your
> needs.
>
> Personally, I use Multi-Edit (http://www.multieditsoftware.com/) but I’m
> biased. First, I use it for all development for about 15 years and second,
> some code I wrote was included in the release recently. It includes BSC
> symbol browser and function tooltips. As for DDK support, I use a batch
> which sets correct environment and calls build utility. I also use macros
> which allow per-project DDK settings (not incuded in release but available
> on request).
>
> Note your reason to switch may not be adequate. Batch which prepares
> environment (calls DDK setenv) and calls proper compiler used from VS is
> proper solution and you won’t get anything better with any other editor.
> This solution is equal of starting console with DDK environment and
calling
> build by hand.
>
> Best regards,
>
> Michal Vodicka
> STMicroelectronics Design and Application s.r.o.
> [michal.vodicka@st.com, http:://www.st.com]
>
> > ----------
> > From: Charles Lane[SMTP:xxxxx@earthlink.net]
> > Reply To: Windows System Software Devs Interest List
> > Sent: Wednesday, March 31, 2004 9:32 PM
> > To: Windows System Software Devs Interest List
> > Subject: [ntdev] Editor for device driver work
> >
> > I really hate to ask this question because I know what it can lead
to…
> > :slight_smile:
> >
> > However.
> >
> > I’ve always used Visual Studio as an editor for device driver files and
> > then
> > the
> > Build utility to actually create the executables. I like VS’s browse
stuff
> > and so on.
> > Besides, I’m used to it.
> >
> > Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
> > 2003,
> > XP, 2000
> > and whatever the current AMD beta O/S is supposed to be.) and I think
it’s
> > time to say
> > good bye to VS for this sort of thing.
> >
> > (I’m aware that there is a BAT file for using VS with the proper
compilers
> > but I think
> > maybe using something closer to Microsoft’s internal process is better.)
> >
> > So.
> >
> > What editor do you find useful for dealing with driver code?
> >
> > Mickey.
> >
> >
> > —
> > Questions? First check the Kernel Driver FAQ at
> > http://www.osronline.com/article.cfm?id=256
> >
> > You are currently subscribed to ntdev as: michal.vodicka@st.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
></michal.vodicka>

We have a few dozen developers that almost all use this method of building
our driver.

We also use the fact that you can select different targets and build models,
so we can build x86 for 2K or XP and AMD64 for XP, both debug (checked) and
release version. We used the same method for building with VS 6, and it
worked just fine there too.

We do have a modified version of the base building batch file, but that’s
just so that we can support our daily build scripts, that build all
varieties of the driver, and we just want everyone to use the same scripts,
whether it’s the local test build or the official daily build.

As far as I’m concerned, this works really well. Occasionally, I use Xemacs
instead of VS, simply because I’ve been using one version or other of Emacs
for the last umpteen years, and for SOME things, I just can’t figure out how
to do it in VC++ (or any other non-emacs-like editor). For instance,
keyboard macros rarely do what I expect in other editros. That’s most likely
just because I never have taken the time to fig’re out how to work them, and
fall back to Emacs when I need that sort of thing. But that’s down to about
1-2% of all my editing, the other 98-99% are in the VS.Net editor. It’s not
perfect, but it’s as near as anything else I’ve tried or much better in some
cases (but in those, I’ve usually fallen back to Emacs before I even got
very far).

Question to the original poster: Exactly what are you trying to solve. It
sounds like you’re happy with Visual Studio editing/browsing capabilities,
but want a more extensive build capability. I think you can achieve this on
the existing Visual Studio, with some changes to the setup to compile the
project, similar to what Vladimir described.


Mats

-----Original Message-----
From: Vladimir Chtchetkine [mailto:xxxxx@borland.com]
Sent: Wednesday, March 31, 2004 9:54 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

With VC7 it’s very easy to set up a build environment where
you can use
VS as editor (with all its reach functionality) available to you and
still be able to do builds using “build” utility from the DDK. Here is
how I do it for myself. I have installed all 3 DDKs (W2K, XP,
NET) under
one root and set global env. variable DDKROOT to C:\DDK. Then I create
an empty “makefile” project in VC7, added “source” and
“makefile” files
to it and other files that compose my driver project. Then
I’ve created
W2K, XP and NET configurations each with both, free and checked
versions. Then, in Project->Properties->Configuration
Properties->NMake
[snip details of how to set up things]

Mats.Petersson asked:

Question to the original poster: Exactly what are you trying to solve. It
sounds like you’re happy with Visual Studio editing/browsing capabilities,
but want a more extensive build capability. I think you can achieve this on
the existing Visual Studio, with some changes to the setup to compile the
project, similar to what Vladimir described.

That seems to be the consensus. Now all I have to do is get back to fiddling
with VC6 and see what I can come up with.

Many thanks to all who have replied.

Mickey.

I just came back from a Microsoft conference (Mobile DevCon) where it was
announced during some of the sessions and one of the keynotes that Visual
Studio 2005 (aka Whistler, I think) was going to incorporate stuff from
eVC++ at least for the mobile platform development. MS wants developers to
be able to target all their platforms from one tool. I guess we shall see
how good of a job they do with this… They were showing demos of this
where the presenters were using VC 2005 and deploying applications to
Smartphones and PDAs…

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Prokash Sinha
Sent: Wednesday, March 31, 2004 11:19 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

Maybe it’s time to get the technology from eVC++ studio or Platform Builder
to VisualStudio. Recently there was feedback from given to most of us, if
not
all of us. I did mention that it would be a great step forward to this,
starting
with punch card (JCL, PROC) then makefile, then wizard, it’s getting better
everyday
so whynot VStudio handles it transperantly. I carry template project file to
have
mix-language compilation, MASM pwb is bit old fashioned. And on my way I
found that
the ml comes for kernl module target is different from ml that comes with
apps dev., if
my memory servers now !!! or at least somewhere 386(p) gets shovled in or
something.

-Different translator(s), different target(s) would be nice to have.
I’M NOT COMPLAINING THOUGH, AS OFTEN IT SOUNDS THAT WAY :slight_smile:
-prokash

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Vladimir
Chtchetkine
Sent: Wednesday, March 31, 2004 12:54 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

With VC7 it’s very easy to set up a build environment where you can use
VS as editor (with all its reach functionality) available to you and
still be able to do builds using “build” utility from the DDK. Here is
how I do it for myself. I have installed all 3 DDKs (W2K, XP, NET) under
one root and set global env. variable DDKROOT to C:\DDK. Then I create
an empty “makefile” project in VC7, added “source” and “makefile” files
to it and other files that compose my driver project. Then I’ve created
W2K, XP and NET configurations each with both, free and checked
versions. Then, in Project->Properties->Configuration Properties->NMake
I created following settings (example is given for “XP checked” config):

  1. For “Build Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -beEIFZ
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”
  2. For “Rebuild All Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -cbeZEIF
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”

… and everything started to fly :slight_smile:

Here is a sample of my “sources” file

TARGETNAME = SdFMon
TARGETTYPE = DRIVER
DRIVERTYPE = FS

386_WARNING_LEVEL = /W4 /WX
MSC_OPTIMIZATION = $(MSC_OPTIMIZATION) /Ob1

!IF “$(_NT_TARGET_VERSION)” == “0x500”

UMFSD_WINVERDEF= /DNTVERSION=500 /DWINVER=0x500 /D_WIN32_WINNT=0x0500
BASE_INC= “$(BASEDIR)\inc\ddk\w2k”; “$(BASEDIR)\inc\ifs\w2k”;
“$(BASEDIR)\inc\ddk\wdm\w2k”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\W2K\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Checked\i386
COMMONLIBPATH = …\Libs\W2K\Checked\i386
!ELSE
TARGETPATH = Bin\W2K\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Free\i386
COMMONLIBPATH = …\Libs\W2K\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x501”

UMFSD_WINVERDEF= /DNTVERSION=501 /DWINVER=0x501 /D_WIN32_WINNT=0x0501
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wxp”; “$(BASEDIR)\inc\ifs\wxp”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wxp”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\XP\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Checked\i386
COMMONLIBPATH = …\Libs\XP\Checked\i386
!ELSE
TARGETPATH = Bin\XP\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Free\i386
COMMONLIBPATH = …\Libs\XP\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x502”

UMFSD_WINVERDEF= /DNTVERSION=502 /DWINVER=0x502 /D_WIN32_WINNT=0x0502
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wnet”; “$(BASEDIR)\inc\ifs\wnet”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wnet”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\NET\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Checked\i386
COMMONLIBPATH = …\Libs\NET\Checked\i386
!ELSE
TARGETPATH = Bin\NET\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Free\i386
COMMONLIBPATH = …\Libs\NET\Free\i386
!ENDIF

!ENDIF

TARGETLIBS = $(TARGETLIBS) $(UMFSDLIBPATH)\KmCpp.lib
$(UMFSDLIBPATH)\KmDrvBase.lib $(UMFSDLIBPATH)\KmWrap.lib
$(UMFSDLIBPATH)\KmRtl.lib $(COMMONLIBPATH)\SdFMonLib.lib

DRVBASE_INC = “…..\Inc”; “…\KM_Inc”; “$(DRVSDK)\Common”;
“$(DRVSDK)\KM\Inc\Common”; “$(DRVSDK)\KM\Inc\KmCpp”;
“$(DRVSDK)\KM\Inc\KmRtl”; “$(DRVSDK)\KM\Inc\KmWrap”;
“$(DRVSDK)\KM\Inc\KmDrvBase”

INCLUDES= $(BASE_INC); $(DRVBASE_INC)

UMFSD_BASEDEF= /DRING0 /DNT_UP=0

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
UMFSD_BASEDEF = $(UMFSD_BASEDEF) /DDBG=1
!ENDIF

C_DEFINES=$(UMFSD_BASEDEF) $(UMFSD_WINVERDEF)

SOURCES= SdFMon.rc \
SdFMonRecognizerHookDeviceObject.cpp \
SdFMonFilterDeviceObject.cpp \
SdFMonClose.cpp \
SdFMonCreate.cpp \
SdFMonCleanup.cpp \
SdFMonSetInformation.cpp \
SdFMonWrite.cpp \
SdFMonEnumSupportImp.cpp \
SdFMonLegacyMonitorCallback.cpp \
SdFMonDriverObject.cpp

-----Original Message-----
From: Charles Lane [mailto:xxxxx@earthlink.net]
Sent: Wednesday, March 31, 2004 11:33 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead
to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse
stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think
it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper
compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:
xxxxx@borland.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@garlic.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@koolspan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

> announced during some of the sessions and one of the keynotes that Visual

Studio 2005 (aka Whistler, I think)

Whidbey

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

I knew it was one of those Northwest landmasses.

Whidbey = island
Whistler = mountain

;->

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Maxim S. Shatskih
Sent: Thursday, April 01, 2004 8:06 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Editor for device driver work

announced during some of the sessions and one of the keynotes that Visual
Studio 2005 (aka Whistler, I think)

Whidbey

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@koolspan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

Yup, that would really be fantastic. And it is obvious to guess the
direction. Couple months ago, I tried to see what is the cost of
Codewarrior for symbian, an hefty (5K usd). I use the other version(s),so
I thought it would be nice to have a fairly same UI, so less hastle…

Also it would be nice to have both the krnl and usrmode. But then there is
the
marketing ( how many ways you can slice a pie …)

thanks for the news !
-prokash

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Paul Benware
Sent: Thursday, April 01, 2004 4:26 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

I just came back from a Microsoft conference (Mobile DevCon) where it was
announced during some of the sessions and one of the keynotes that Visual
Studio 2005 (aka Whistler, I think) was going to incorporate stuff from
eVC++ at least for the mobile platform development. MS wants developers to
be able to target all their platforms from one tool. I guess we shall see
how good of a job they do with this… They were showing demos of this
where the presenters were using VC 2005 and deploying applications to
Smartphones and PDAs…

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Prokash Sinha
Sent: Wednesday, March 31, 2004 11:19 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

Maybe it’s time to get the technology from eVC++ studio or Platform Builder
to VisualStudio. Recently there was feedback from given to most of us, if
not
all of us. I did mention that it would be a great step forward to this,
starting
with punch card (JCL, PROC) then makefile, then wizard, it’s getting better
everyday
so whynot VStudio handles it transperantly. I carry template project file to
have
mix-language compilation, MASM pwb is bit old fashioned. And on my way I
found that
the ml comes for kernl module target is different from ml that comes with
apps dev., if
my memory servers now !!! or at least somewhere 386(p) gets shovled in or
something.

-Different translator(s), different target(s) would be nice to have.
I’M NOT COMPLAINING THOUGH, AS OFTEN IT SOUNDS THAT WAY :slight_smile:
-prokash

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Vladimir
Chtchetkine
Sent: Wednesday, March 31, 2004 12:54 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Editor for device driver work

With VC7 it’s very easy to set up a build environment where you can use
VS as editor (with all its reach functionality) available to you and
still be able to do builds using “build” utility from the DDK. Here is
how I do it for myself. I have installed all 3 DDKs (W2K, XP, NET) under
one root and set global env. variable DDKROOT to C:\DDK. Then I create
an empty “makefile” project in VC7, added “source” and “makefile” files
to it and other files that compose my driver project. Then I’ve created
W2K, XP and NET configurations each with both, free and checked
versions. Then, in Project->Properties->Configuration Properties->NMake
I created following settings (example is given for “XP checked” config):

  1. For “Build Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -beEIFZ
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”
  2. For “Rebuild All Command Line”
    call $(DDKROOT)\BIN\setenv.bat $(DDKROOT) WXP checked
    cd $(ProjectDir)
    build -cbeZEIF
    copy “$(ProjectDir)\bin\XP\checked\i386*.pdb” “$(XPSYM)\sys*.pdb”

… and everything started to fly :slight_smile:

Here is a sample of my “sources” file

TARGETNAME = SdFMon
TARGETTYPE = DRIVER
DRIVERTYPE = FS

386_WARNING_LEVEL = /W4 /WX
MSC_OPTIMIZATION = $(MSC_OPTIMIZATION) /Ob1

!IF “$(_NT_TARGET_VERSION)” == “0x500”

UMFSD_WINVERDEF= /DNTVERSION=500 /DWINVER=0x500 /D_WIN32_WINNT=0x0500
BASE_INC= “$(BASEDIR)\inc\ddk\w2k”; “$(BASEDIR)\inc\ifs\w2k”;
“$(BASEDIR)\inc\ddk\wdm\w2k”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\W2K\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Checked\i386
COMMONLIBPATH = …\Libs\W2K\Checked\i386
!ELSE
TARGETPATH = Bin\W2K\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\W2K\Free\i386
COMMONLIBPATH = …\Libs\W2K\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x501”

UMFSD_WINVERDEF= /DNTVERSION=501 /DWINVER=0x501 /D_WIN32_WINNT=0x0501
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wxp”; “$(BASEDIR)\inc\ifs\wxp”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wxp”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\XP\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Checked\i386
COMMONLIBPATH = …\Libs\XP\Checked\i386
!ELSE
TARGETPATH = Bin\XP\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\XP\Free\i386
COMMONLIBPATH = …\Libs\XP\Free\i386
!ENDIF

!ELSEIF “$(_NT_TARGET_VERSION)” == “0x502”

UMFSD_WINVERDEF= /DNTVERSION=502 /DWINVER=0x502 /D_WIN32_WINNT=0x0502
/DRTL_USE_AVL_TABLES=1
BASE_INC= “$(BASEDIR)\inc\ddk\wnet”; “$(BASEDIR)\inc\ifs\wnet”;
“$(BASEDIR)\inc\ifs\flt”; “$(BASEDIR)\inc\ddk\wdm\wnet”

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
TARGETPATH = Bin\NET\Checked
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Checked\i386
COMMONLIBPATH = …\Libs\NET\Checked\i386
!ELSE
TARGETPATH = Bin\NET\Free
UMFSDLIBPATH = $(DRVSDK)\KM\Libs\NET\Free\i386
COMMONLIBPATH = …\Libs\NET\Free\i386
!ENDIF

!ENDIF

TARGETLIBS = $(TARGETLIBS) $(UMFSDLIBPATH)\KmCpp.lib
$(UMFSDLIBPATH)\KmDrvBase.lib $(UMFSDLIBPATH)\KmWrap.lib
$(UMFSDLIBPATH)\KmRtl.lib $(COMMONLIBPATH)\SdFMonLib.lib

DRVBASE_INC = “…..\Inc”; “…\KM_Inc”; “$(DRVSDK)\Common”;
“$(DRVSDK)\KM\Inc\Common”; “$(DRVSDK)\KM\Inc\KmCpp”;
“$(DRVSDK)\KM\Inc\KmRtl”; “$(DRVSDK)\KM\Inc\KmWrap”;
“$(DRVSDK)\KM\Inc\KmDrvBase”

INCLUDES= $(BASE_INC); $(DRVBASE_INC)

UMFSD_BASEDEF= /DRING0 /DNT_UP=0

!IF “$(DDKBUILDENV)” == “checked” | “$(DDKBUILDENV)” == “chk”
UMFSD_BASEDEF = $(UMFSD_BASEDEF) /DDBG=1
!ENDIF

C_DEFINES=$(UMFSD_BASEDEF) $(UMFSD_WINVERDEF)

SOURCES= SdFMon.rc \
SdFMonRecognizerHookDeviceObject.cpp \
SdFMonFilterDeviceObject.cpp \
SdFMonClose.cpp \
SdFMonCreate.cpp \
SdFMonCleanup.cpp \
SdFMonSetInformation.cpp \
SdFMonWrite.cpp \
SdFMonEnumSupportImp.cpp \
SdFMonLegacyMonitorCallback.cpp \
SdFMonDriverObject.cpp

-----Original Message-----
From: Charles Lane [mailto:xxxxx@earthlink.net]
Sent: Wednesday, March 31, 2004 11:33 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Editor for device driver work

I *really* hate to ask this question because I know what it can lead
to…
:slight_smile:

However.

I’ve always used Visual Studio as an editor for device driver files and
then
the
Build utility to actually create the executables. I like VS’s browse
stuff
and so on.
Besides, I’m used to it.

Now I’m knee-deep in multiple platform stuff (x86, amd64, ia64, server
2003,
XP, 2000
and whatever the current AMD beta O/S is supposed to be.) and I think
it’s
time to say
good bye to VS for this sort of thing.

(I’m aware that there is a BAT file for using VS with the proper
compilers
but I think
maybe using something closer to Microsoft’s internal process is better.)

So.

What editor do you find useful for dealing with driver code?

Mickey.


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:
xxxxx@borland.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@garlic.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@koolspan.com
To unsubscribe send a blank email to xxxxx@lists.osr.com


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@garlic.com
To unsubscribe send a blank email to xxxxx@lists.osr.com