我用做了一个小程序EXE文件,在自己的电脑上能用,
但是在被人没有安装Delphi的机器里打开后,功能却失效再怎么点按钮没反应!
不知道上为什么- -

解决方案 »

  1.   

    unit untSpeed;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TfrmSpeed = class(TForm)
        btnSlowSpeed: TButton;
        btnRestore: TButton;
        btnFastSpeed: TButton;
        btnTest: TButton;
        procedure btnSlowSpeedClick(Sender: TObject);
        procedure btnRestoreClick(Sender: TObject);
        procedure btnFastSpeedClick(Sender: TObject);
        procedure btnTestClick(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      frmSpeed: TfrmSpeed;implementationUses unitPortTalk;{$R *.dfm}procedure Speed(count : word);
    begin
      if not OpenPortTalk then exit;
      OutPortb($43, $34);        //写8253控制寄存器,设置写0定时器
      OutPortb($40, lo(count));  //写定时值低位
      OutPortb($40, hi(count));  //写定时值高位
      ClosePortTalk;
    end;procedure TfrmSpeed.btnSlowSpeedClick(Sender: TObject);
    begin
      Speed($6000);  //变慢
    end;procedure TfrmSpeed.btnRestoreClick(Sender: TObject);
    begin
      Speed($2ea5);
    end;procedure TfrmSpeed.btnFastSpeedClick(Sender: TObject);
    begin
      Speed($500);
    end;procedure TfrmSpeed.btnTestClick(Sender: TObject);
    const
      myData = $C602;
    begin
      if not OpenPortTalk then exit;
      OutPortb($378, $34);        //写
      OutPortb($379, lo(myData));  //写定时值低位
      OutPortb($37A, hi(myData));  //写定时值高位
      ClosePortTalk;
    end;end.就是这个
      

  2.   

    怎样看delphi生成的EXE运行后调用了delphi的什么东西
      

  3.   

    你的unitPortTalk.pas中是否调用了其他的DLL、ocx等Delphi之外的组件?
      

  4.   

    代码就在上面了,你可以帮我看下,应该没调用DLL、ocx等Delphi之外的组件!!!
      

  5.   

    楼主是不是在做加速外挂之类的东西啊!?
      没效果会不会是OutPortb这个函数的原因啊!