为什么我在调用DLL时会出这样的错误?(50分)

  • 主题发起人 主题发起人 ymfmm
  • 开始时间 开始时间
Y

ymfmm

Unregistered / Unconfirmed
GUEST, unregistred user!
var
Form1: TForm1;

function scan(Path:string;ImageType,isNewID,x0,y0,w0,h0,DPI,Bright,Contrast:longint):smallint;stdcall;
far;external 'uniscan.dll'name 'scan';

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
scan('c:/img/f', 2, 0, 0, 0, 200, 280, 100, 0, 0);
end;

只要一运行就会弹出这样的错误:
Unable to create process:与系统连接的设备不能正常运转。

到底是怎么回事呢?
 
硬件设备没有联接好???
 
这个是动态库里面的问题呀。。
C:/Img/F是目录还是文件?后面那些都是什么?
估计你需要看动态库源码或者介绍了。·
是不是扫描的?那么是否真的涉及硬件设备?
 
to yzhshi
C:/Img/F是文件
我的一个同事可以用VB调用该动态链接库呀,后面跟的是参数,Delphi中语法检查可以通过,
可是一运行就出错
是紫光系列扫描仪的扫描函数
 
function scan(Path:string;ImageType,isNewID,x0,y0,w0,h0,DPI,Bright,Contrast:longint):smallint;stdcall; far;external 'uniscan.dll'name 'scan';
~~~~~~~~
刚才又看了一下,对于DLL,最好不使用String作为参数。改用pChar。
 
首先问,你的那个dll放在什么地方了,然后看看这个函数的参数对不对,名字对不对
 
能问一下你是在做有关扫描仪的东西吗?知道如何控制高速扫描仪吗?
 
后退
顶部