C# 在Windows7中写入并行端口
我需要在C代码中通过并行端口输出8位数据。我使用的是Windows7 Ultimate,有一个Intel 945GCNL主板,它有一个并行端口,配置为地址0378-037F。端口初始化为内核(启动时,所有引脚D0-D7均为高电平)。即使使用下面给出的代码,我也无法写出数据C# 在Windows7中写入并行端口,c#,windows-7,parallel-port,C#,Windows 7,Parallel Port,我需要在C代码中通过并行端口输出8位数据。我使用的是Windows7 Ultimate,有一个Intel 945GCNL主板,它有一个并行端口,配置为地址0378-037F。端口初始化为内核(启动时,所有引脚D0-D7均为高电平)。即使使用下面给出的代码,我也无法写出数据 using System; using System.Runtime.InteropServices; public class PortAccess { [DllImport("inpout32.dll", Ent
using System;
using System.Runtime.InteropServices;
public class PortAccess
{
[DllImport("inpout32.dll", EntryPoint="Out32")]
public static extern void Output(int adress, int value);
}
switch(j)
{
case 0:
PortAccess.Output(888, 24);
break;
case 1:
PortAccess.Output(888, 36);
break;
case 2:
PortAccess.Output(888, 66);
break;
case 3:
PortAccess.Output(888, 129);
break;
case 4:
PortAccess.Output(888, 0);
break;
case 5:
PortAccess.Output(888, 129);
break;
case 6:
PortAccess.Output(888, 195);
break;
case 7:
PortAccess.Output(888, 231);
break;
case 8:
PortAccess.Output(888, 255);
break;
}
我尝试使用codeproject上提供的代码,尽管程序没有生成任何错误,但我无法观察任何输出。我甚至在system32文件夹中安装了input32.dll。下面给出了将十六进制值输出到并行端口的代码部分
using System;
using System.Runtime.InteropServices;
public class PortAccess
{
[DllImport("inpout32.dll", EntryPoint="Out32")]
public static extern void Output(int adress, int value);
}
switch(j)
{
case 0:
PortAccess.Output(888, 24);
break;
case 1:
PortAccess.Output(888, 36);
break;
case 2:
PortAccess.Output(888, 66);
break;
case 3:
PortAccess.Output(888, 129);
break;
case 4:
PortAccess.Output(888, 0);
break;
case 5:
PortAccess.Output(888, 129);
break;
case 6:
PortAccess.Output(888, 195);
break;
case 7:
PortAccess.Output(888, 231);
break;
case 8:
PortAccess.Output(888, 255);
break;
}
所有的数据引脚都保持高位,无法控制它们。请提供帮助。是否有适用于windows 7的Input32.dll。我安装了一个适用于Windows 98/2000/NT/XP的,但它不工作。是否有适用于Windows 7的inpout32.dll。我安装了一个适用于Windows 98/2000/NT/XP的,但它不工作。