关于启动程序的问题(100分)

  • 主题发起人 主题发起人 johnlee4u
  • 开始时间 开始时间
J

johnlee4u

Unregistered / Unconfirmed
GUEST, unregistred user!
一是我要启动的程序一开始需要输入密码,我希望能够通过我的程序自动完成这个过程。
二是怎么样能够让别人不能终止我的程序和这个生成的程序。

谢谢
 
1.sendmessage,wm_settext
2.closewindow?fogot,yet:(
 
1)用 sendmessage(hfocus,wm_char,str,0);
hfocus 为程序的输入焦点
wm_char为消息
str为你的密码
2)不让别人终止你的程序.
把x按钮取消其功能.
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMSysCommand(var Msg: Twmsyscommand); message WM_SYSCOMMAND;

public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}
procedure TForm1.WMSysCommand(var Msg:Twmsyscommand);
begin
if Msg.CmdType <> SC_close then inherited;
end;

end.
 
还有几个问题
一是sendmessge、postmessage的参数怎么使用,能不能具体说一下,我的意思是针对我的要做的程序,我需要调用的程序一开始就输入用户名和密码(分别输入),再点确定按钮。如果我用shellexcute来调用程序,接下来该怎么办?
二是我主要是想让别人不能关闭我打开的那个程序,该怎么办?
三是顺便问一下,我下载了新的delphibbs数据库,怎么把它和以前那个合并在一起?
 
>>一是我要启动的程序一开始需要输入密码,
我希望能够通过我的程序自动完成这个过程。

可通过 在 Program单元的语句 application.run执行加一个判断:跳出一个窗口
要求输入密码,正确泽执行否则不执行.
if Form_password.showmodal then application.run;
在 Form_password 中放一个Edit
if Edit.Text='正确密码
'then Form_Password.mordualresult=mrok
else Form_Password.mordualresult=mrcancel;

>>二是怎么样能够让别人不能终止我的程序和这个生成的程序
这不太现实,正常情况下,连Explorer 都可通过强行中止的方法关闭,何况你的程序.
(Ctrl+Alt+Del --->运行程序列表中选中Explorer-->结束任务)
如果你指别人通过鼠标点击右上角的 X 不能关闭窗口,可通过窗口的Onclose事件
实现。该事件中的一个参数值设置为忽略关闭消息。具体语法HELP中有。

如果让别人不可通过Ctrl+Alt+Del 的方法结束任务,则只要发条消息给系统:“现在处于屏保状态,不理你”:-[

下面的过程可以使系统键生效或失效:(摘抄)

type
TKeyState = ( kbOn, kbOff );

procedure SetSystemKey( value : TKeyState );
var
NoUse : integer;
begin
case value of
kbOn : SystemParametersInfo( SPI_SCREENSAVERRUNNING, 0, @NoUse, 0);
kbOff : SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @NoUse, 0);
end;
end;
 
多人接受答案了。
 
后退
顶部