Newbies useful tip - With credits to Mark Roddy...

Hi. :slight_smile:

As some of you may already know, I’m kind of novice to
Device Driver development (just a couple of months or so).

While I’ve been already using Visual C++ and the “batch file
technique” to compile and build my research projects, I still
had a small problem: sometimes I needed to locate a structure
or data definition, and it was really annoying to had to perform
a search for *.c and *.h files in the C:\NTDDK folder, then
open the file and do another search to find it within the file…

OK, by this time you’re all laughing at my innocence :slight_smile: but I
really *did* that until yesterday, when I read a mail from Mr.
Mark Roddy, who pointed out his site as an answer for a
C++ - related question posed here by another newbie like
me (who prefers C++, God knows why? ;).

Anyway, I went to Mr. Roddy’s site and found up the solution
to my problem - I just had to add the following lines to my
‘sources’ file:

Setup Visual C++ Source Browsing

(-n = Do *NOT* truncate .bsc file)

BROWSER_INFO=1
BROWSERFILE=$(TARGETNAME).bsc -n

/W3 = Set Warning Level 3

/WX = Treat Warnings as Errors

MSC_WARNING_LEVEL=/W3 /WX

and voilá! There I was, «able to point at any data structure
type or function or constant and right click on it and go to its
definition. In addition, a CallGraph or CallersGraph is available
for all functions as well as a reference list for all data structures
and functions. Life is complete, all is bliss.»

Amen!!! :)))

Thank you very, very much, Mr. Roddy.

Miguel Monteiro
xxxxx@criticalsoftware.com
www.criticalsoftware.com

«Humour and love are God’s answers
to Human weaknesses»


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Hi, Miguel,

If you use MSVC++, you can set yourself a “Utility” project (File, New,
Project, Utility Project), and you will have many IDE facilities available,
including the class view and even some browsing. You can still build from
the command line. Or you can set it as a normal DLL project, and then you
put the call to build.exe in your Project/Settings/CustomBuild property
sheet, in which case you will be able to run the build by clicking the build
button on the IDE. Or you can go one step further and use CodeWright. In
either case, you will have a fair amount of editing and browsing features
available. Last but not least, you can use the utility we (Numega) ship with
DriverWorks, to make an MSVC project for your driver - but that’s a bit
iffier, some drivers won’t be amenable to that approach.

Hope this helps,

Alberto.

-----Original Message-----
From: Miguel Monteiro [mailto:xxxxx@criticalsoftware.com]
Sent: Thursday, April 05, 2001 7:48 AM
To: NT Developers Interest List
Subject: [ntdev] Newbies useful tip - With credits to Mark Roddy…

Hi. :slight_smile:

As some of you may already know, I’m kind of novice to
Device Driver development (just a couple of months or so).

While I’ve been already using Visual C++ and the “batch file
technique” to compile and build my research projects, I still
had a small problem: sometimes I needed to locate a structure
or data definition, and it was really annoying to had to perform
a search for *.c and *.h files in the C:\NTDDK folder, then
open the file and do another search to find it within the file…

OK, by this time you’re all laughing at my innocence :slight_smile: but I
really *did* that until yesterday, when I read a mail from Mr.
Mark Roddy, who pointed out his site as an answer for a
C++ - related question posed here by another newbie like
me (who prefers C++, God knows why? ;).

Anyway, I went to Mr. Roddy’s site and found up the solution
to my problem - I just had to add the following lines to my
‘sources’ file:

Setup Visual C++ Source Browsing

(-n = Do *NOT* truncate .bsc file)

BROWSER_INFO=1
BROWSERFILE=$(TARGETNAME).bsc -n

/W3 = Set Warning Level 3

/WX = Treat Warnings as Errors

MSC_WARNING_LEVEL=/W3 /WX

and voil?! There I was, ?able to point at any data structure
type or function or constant and right click on it and go to its
definition. In addition, a CallGraph or CallersGraph is available
for all functions as well as a reference list for all data structures
and functions. Life is complete, all is bliss.?

Amen!!! :)))

Thank you very, very much, Mr. Roddy.

Miguel Monteiro
xxxxx@criticalsoftware.com
www.criticalsoftware.com

?Humour and love are God’s answers
to Human weaknesses?


You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com