Windows 7 windows下的D访问并行口

Windows 7 windows下的D访问并行口,windows-7,d,parallel-port,Windows 7,D,Parallel Port,我可以像这样在Ubuntu中用D访问并行端口 import std.stdio; import core.bitop; // parallel port address const uint port = 0x0c000; void main() { /* permission related stuff under linux */ /* data */ ubyte data = 0b_11111111; outp(port, d

我可以像这样在Ubuntu中用D访问并行端口

import std.stdio;
import core.bitop;

// parallel port address 
const uint port = 0x0c000;

void main()
{
    /*
        permission related stuff under linux
    */

    /* data */
    ubyte data = 0b_11111111;
    outp(port, data);
}
但我想在windows上读写并行端口。当我尝试此代码时,会收到此错误消息

object.Error: Privileged Instruction
----------------
41377C
4135F3
4025BC
4021B3
4BD6F9
1553C6
----------------

是否有一种简单的方法可以使用D访问windows上的并行端口?谢谢..

Windows不允许用户模式程序直接访问硬件。您将需要编写一个驱动程序(.sys文件),很可能是用C语言编写的(使用WINDDK)。您还需要购买代码签名证书,以允许您的驱动程序在64位Windows版本上运行(或禁用驱动程序签名,如果您只需要在计算机上运行它)。

我下载了Windows驱动程序工具包7.1.0。但我对C和windows驱动程序编程一无所知。坦率地说,我在Ubuntu下做编程相关的工作。但是英特尔还没有为我的新电脑发布Ubuntu图形驱动程序。我认为有些人已经为并行端口编写了设备驱动程序。我下载了这个,它似乎工作。我想做的是用并行端口控制LED。但我还没有在实验板上试过。你的回答对我帮助很大。谢谢。