wangchao.org
添加收藏 | 博客
 
购物视频论坛IT业界自然风光美女图片王朝网络小游戏BT下载生活百科编程设计手机图铃小说
 
笑话 | 水库 | 娱乐 | 体育 | 英语 | 宠物 | 美食 | 旅游 | 养生 | 手机 | 数码 | 汽车 | 珠宝 | 美容 | 装修 | 厨房 | 科普 | 动物 | 植物 | 影音 | 百科 | 知道 | 词典
  
 
 您好! 您现在位于: 王朝网络 → 编程设计 → 《Win9x下隐藏程序不出现在CTRL-ALT-DEL对话框中返回上一页 
 
1楼 

Win9x下隐藏程序不出现在CTRL-ALT-DEL对话框中

  网上购物、在线购物、购物搜索 欢迎光临本站购买图书、影视、音乐、数码、百货,手机等商品。

  Windows95/98下怎样隐藏应用程序不让它出现在CTRL-ALT-DEL对话框中?
  把你的应用程序从CTRL-ALT-DEL对话框中隐藏的一个简单办法是去应用程序的标题。假如一个程序的主窗口没以标题,Windows95不把它放到CTRL-ALT-DEL对话框中。清除标题属性的最好地方是在WinMain函数里。
  WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
  {
   try
   {
   Application->Title = "";
   Application->Initialize();
   Application->CreateForm(__classid(TForm1), &Form1);
   Application->Run();
   }
   catch (Exception &exception)
   {
   Application->ShowException(&exception);
   }
   return 0;
  }
  另一种方法是:调用RegisterServiceProcess API 函数将程序注册成为一个服务模式程序。 RegisterServiceProcess是一个在Kernel32.dll里相关但无正式文件的函数。在MS SDK头文件里没有该函数的原型说明,但在Borland import libraries for C++ Builder里能找到。很显然,这个函数的主要目的是创建一个服务模式程序。之所以说很显然,是因为MSDN里实质上对这个函数没有说什么。
  下面的例子代码演示了在Windows95/98下怎样通过使用RegisterServiceProcess来把你的程序从CTRL-ALT-DEL对话框中隐藏起来。
  //------------Header file------------------------------
  typedef DWord (__stdcall *pRegFunction)(DWORD, DWORD);
  
  class TForm1 : public TForm
  {
  __published:
   TButton *Button1;
  private:
   HINSTANCE hKernelLib;
   pRegFunction RegisterServiceProcess;
  public:
   __fastcall TForm1(TComponent* Owner);
   __fastcall ~TForm1();
  };
  
  //-----------CPP file------------------------------
  #include "Unit1.h"
  
  #define RSP_SIMPLE_SERVICE 1
  #define RSP_UNREGISTER_SERVICE 0
  
  __fastcall TForm1::TForm1(TComponent* Owner)
   : TForm(Owner)
  {
   hKernelLib = LoadLibrary("kernel32.dll");
   if(hKernelLib)
   {
   RegisterServiceProcess =(pRegFunction)GetProcAddress(hKernelLib,"RegisterServiceProcess");
   if(RegisterServiceProcess)
   RegisterServiceProcess(GetCurrentProcessId(),RSP_SIMPLE_SERVICE);
   }
  }
  
  __fastcall TForm1::~TForm1()
  {
  if(hKernelLib)
   {
  
  
   if(RegisterServiceProcess)
   RegisterServiceProcess(GetCurrentProcessId(),RSP_UNREGISTER_SERVICE);
   FreeLibrary(hKernelLib);
   }
  }
  //-------------------------------------------------
  注: windows NT下没有RegisterServiceProcess函数。

  Windows95/98下怎样隐藏应用程序不让它出现在CTRL-ALT-DEL对话框中? 把你的应用程序从CTRL-ALT-DEL对话框中隐藏的一个简单办法是去应用程序的标题。假如一个程序的主窗口没以标题,Windows95不把它放到CTRL-ALT-DEL对话框中。清除标题属性的最好地方是在WinMain函数里。 WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { Application->Title = ""; Application->Initialize(); Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } return 0; } 另一种方法是:调用RegisterServiceProcess API 函数将程序注册成为一个服务模式程序。 RegisterServiceProcess是一个在Kernel32.dll里相关但无正式文件的函数。在MS SDK头文件里没有该函数的原型说明,但在Borland import libraries for C++ Builder里能找到。很显然,这个函数的主要目的是创建一个服务模式程序。之所以说很显然,是因为MSDN里实质上对这个函数没有说什么。 下面的例子代码演示了在Windows95/98下怎样通过使用RegisterServiceProcess来把你的程序从CTRL-ALT-DEL对话框中隐藏起来。 //------------Header file------------------------------ typedef DWord (__stdcall *pRegFunction)(DWORD, DWORD); class TForm1 : public TForm { __published: TButton *Button1; private: HINSTANCE hKernelLib; pRegFunction RegisterServiceProcess; public: __fastcall TForm1(TComponent* Owner); __fastcall ~TForm1(); }; //-----------CPP file------------------------------ #include "Unit1.h" #define RSP_SIMPLE_SERVICE 1 #define RSP_UNREGISTER_SERVICE 0 __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { hKernelLib = LoadLibrary("kernel32.dll"); if(hKernelLib) { RegisterServiceProcess =(pRegFunction)GetProcAddress(hKernelLib,"RegisterServiceProcess"); if(RegisterServiceProcess) RegisterServiceProcess(GetCurrentProcessId(),RSP_SIMPLE_SERVICE); } } __fastcall TForm1::~TForm1() { if(hKernelLib) { if(RegisterServiceProcess) RegisterServiceProcess(GetCurrentProcessId(),RSP_UNREGISTER_SERVICE); FreeLibrary(hKernelLib); } } //------------------------------------------------- 注: windows NT下没有RegisterServiceProcess函数。

 
标签: ALT  CTRL  DEL  Win9x  不出  对话  框中  现在  程序  隐藏  
 
您可以将本页贴到其他网站
UBB代码HTML代码
 
 
 
 
 
 
 更多内容
 ·win9x下自动启动程序的10种方法 ·WindowsNT下Service的编程 ·C++ 编程技巧 ·Win98内核分析(Kernel32)
 ·Win2K下的Api函数的拦截 ·Win32下的几种串口通信编程 ·Win 95/NT下OpenGL编程原理 ·Win2K/NT下屏蔽Ctrl+Alt+Del的响
 ·在客户端重新创建对象 ·Web应用程序开发技术 ·用游戏串起程序员的基本功之二 ·数据结构学习(C++)之单链表
 ·八皇后问题求解 ·C++语言代码检查工具PC-Lint四步 ·More Effective C++:不同new和d ·Order by 的数值型灵活使用
 ·WinHelp API命令方法 ·八皇后动态图形的实现 ·八皇后问题 ·1.1 Turbo C语言概述
 ·PE文件格式分析心得 ·OpenBSD 可加载内核模块编程完全 ·POSIX 线程详解(1) ·C 编程最佳实践
 
 
最新评论  点此查看所有评论
 
 
 
 
发表评论(支持UBB码)


验证码:  
 
 
 
© 2005- 王朝网络 版权所有