8 Replies - 1616 Views - Last Post: 02 October 2012 - 11:10 AM Rate Topic: -----

#1 turboscrew  Icon User is offline

  • D.I.C Addict

Reputation: 100
  • View blog
  • Posts: 615
  • Joined: 03-April 12

Windows driver development ide?

Posted 30 September 2012 - 12:24 PM

I have written a couple of windows (NT/2000) drivers aeons ago using VS6.
At the time it was practically not possible to develope windows drivers without a VS.
Later I remember seeing that you can't develope a windows driver using VS express editions.

Now:
Any idea if windows drivers can be practically developed using non-MS IDE?
(Code::blocks or the like...)
Are there such IDEs that can handle the MS development kits?

Is This A Good Question/Topic? 0
  • +

Replies To: Windows driver development ide?

#2 Skydiver  Icon User is online

  • Code herder
  • member icon

Reputation: 3548
  • View blog
  • Posts: 10,989
  • Joined: 05-May 12

Re: Windows driver development ide?

Posted 30 September 2012 - 12:35 PM

All you really need is the appropriate versioned Microsoft compiler and you can use any editor that you want. Life is much easier though if you use Visual Studio because of the other features it has that integrates well with the compiler and debugger. Consider that Microsoft still builds everything using the command line interface using its build.exe and makefiles. For more modern projects, it uses msbuild.exe using the more modern XML project files, but still at the command line. It's just the IDE that makes things a little bit more productive by not having to change focus from your editor to a build command prompt, and then to a debugger.
Was This Post Helpful? 3
  • +
  • -

#3 turboscrew  Icon User is offline

  • D.I.C Addict

Reputation: 100
  • View blog
  • Posts: 615
  • Joined: 03-April 12

Re: Windows driver development ide?

Posted 01 October 2012 - 05:03 AM

So why does it say:

Quote

Visual Studio (2005, 2008 or 2010). The Express edition won't work.

Windows Driver Kit (ask google for the latest version, or download version 7.1.0).

on this web-page

and on WDK8-page

it says:

Quote

Before you install the WDK, you must first install Visual Studio 2012 Professional, Visual Studio 2012 Premium, or Visual Studio 2012 Ultimate.


It's just that where I live, MS Visual studio is expensive.
The price range:
VS 2010 Professional costs about 850 eur (= 1,095.29 USD)
VS 2010 Ultimate with MSDN costs about 14 442 eur (18,607.29 USD).

A bit expensive for a home toy?
Was This Post Helpful? 0
  • +
  • -

#4 Skydiver  Icon User is online

  • Code herder
  • member icon

Reputation: 3548
  • View blog
  • Posts: 10,989
  • Joined: 05-May 12

Re: Windows driver development ide?

Posted 01 October 2012 - 08:03 AM

Express does not support extensions (aka plugins). The instructions there include installing VisualDDK which is an extension. You do not need debug drivers. You could use the windbg or kd to debug drivers.
Was This Post Helpful? 1
  • +
  • -

#5 turboscrew  Icon User is offline

  • D.I.C Addict

Reputation: 100
  • View blog
  • Posts: 615
  • Joined: 03-April 12

Re: Windows driver development ide?

Posted 01 October 2012 - 10:03 PM

OK, thanks fellas.
I guess I'll try first with 2010 express.
It should work as even a project with some manual "hacking" of the makefile?
Was This Post Helpful? 0
  • +
  • -

#6 Skydiver  Icon User is online

  • Code herder
  • member icon

Reputation: 3548
  • View blog
  • Posts: 10,989
  • Joined: 05-May 12

Re: Windows driver development ide?

Posted 01 October 2012 - 10:39 PM

VS2010 doesn't do makefiles anymore. It uses .vcxproj files now and depends on msbuild.exe.

Unfortunately, the Windows DDK for Windows XP, Vista, and Windows 7 still use the old reliable build.exe and sources files. The sources files are basically makefiles as you may recall.
Was This Post Helpful? 1
  • +
  • -

#7 turboscrew  Icon User is offline

  • D.I.C Addict

Reputation: 100
  • View blog
  • Posts: 615
  • Joined: 03-April 12

Re: Windows driver development ide?

Posted 02 October 2012 - 04:26 AM

View PostSkydiver, on 02 October 2012 - 08:39 AM, said:

VS2010 doesn't do makefiles anymore. It uses .vcxproj files now and depends on msbuild.exe.

Unfortunately, the Windows DDK for Windows XP, Vista, and Windows 7 still use the old reliable build.exe and sources files. The sources files are basically makefiles as you may recall.


Thanks for warning.
How about VS2008 express? Do you happen to know?
If that gives as much headache as the newer versions, I guess I'll go with code::blocks. :shuriken:
People seem to have written drivers with it - even for windows.
I found some talk about that in the code::blocks forum. (Your comments encouraged me to put in some more effort...)
Was This Post Helpful? 0
  • +
  • -

#8 Skydiver  Icon User is online

  • Code herder
  • member icon

Reputation: 3548
  • View blog
  • Posts: 10,989
  • Joined: 05-May 12

Re: Windows driver development ide?

Posted 02 October 2012 - 09:22 AM

I don't recall much of VS2008. At that time, I was in a major NAnt and jam kick and building everything on the command line that I hardly ever fired up VS2008 to create any projects.

Code::blocks will probably work, but my understanding is that it has its own .cbp files. So you are in the same boat as having .vcxproj files for VS2010 -- you'll have to create the project so that it emulates what build.exe and what its sources files does.

Nothing is really magical about build.exe and the sources file, it just make it convenient that you put one line: TARGET=DRIVER and the build system knows the appropriate header and lib paths to use, and more importantly the correct #defines, compiler flags, and linker flags. All that information is in the makefile.def and supporting makefiles. You can pull all those settings from the makefiles and transfer them to your IDE of choice.

My only concern with the compiler is that some Windows header files are using some Microsoft specific extensions. For example __declspec(uuid("some guid")).

When you choose an IDE, be sure that you can tell the IDE which compiler to use. This will give you the flexibility to change compilers in case your first choice of compilers doesn't support the Microsoft extensions that you will invariably encounter. I believe that Code::blocks supports this. (At least, it did when I switch from the in-the-box MinGW gcc to a latest release MinGW gcc about a month ago.)
Was This Post Helpful? 1
  • +
  • -

#9 turboscrew  Icon User is offline

  • D.I.C Addict

Reputation: 100
  • View blog
  • Posts: 615
  • Joined: 03-April 12

Re: Windows driver development ide?

Posted 02 October 2012 - 11:10 AM

Thanks again.
So I'll still better off by fighting VS2010 express?
This way or that way I'll always face the struggle - I can just choose my battlefield. :lol:
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1