程序关联实现

2016-02-19 12:46 1 1 收藏

下面图老师小编跟大家分享程序关联实现,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - 编程语言 】

程序中readme是个.sos文件,点吉它实现如下:
  

  

  基本实现如下:

  unit Unit1;

  interface

  uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,
  Registry,shlobj, StdCtrls, ExtCtrls;

  type
  TForm1 = class(TForm)
  Memo1: TMemo;
  Panel1: TPanel;
  Button1: TButton;
  procedure Button1Click(Sender: TObject);
  procedure FormCreate(Sender: TObject);
  private
  procedure reg;
  { Private declarations }
  public
  { Public declarations }
  end;

  var
  Form1: TForm1;

  implementation

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  {$R *.dfm}
  procedure TForm1.reg;
  var
  reg: TRegistry;
  begin
  reg := TRegistry.Create;
  reg.RootKey := HKEY_CLASSES_ROOT;
  reg.OpenKey('.sos', true);
  reg.WriteString('', 'myzip');
  reg.CloseKey;
  reg.OpenKey('myzipshellopencommand', true);
  //用于打开.sos文件的可执行程序
  reg.WriteString('', '"' + application.ExeName + '" "%1"');
  reg.CloseKey;
  reg.OpenKey('myzipDefaultIcon',true);
  //取当前可执行程序的图标为.sos文件的图标
  reg.WriteString('',''+application.ExeName+',0');
  reg.Free;
  //立即刷新
  SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  end;
  procedure TForm1.Button1Click(Sender: TObject);
  begin
  reg;
  end;

  procedure TForm1.FormCreate(Sender: TObject);
  var
  sFile: string;
  begin
  if ParamCount 0 then
  begin
  (* 取得参数内容 *)
  sFile := ParamStr(1);
  if LowerCase(ExtractFileExt(sFile))='.sos' then memo1.Lines.LoadFromFile(sfile);
  end;
  end;

  end.

来源:https://www.tulaoshi.com/n/20160219/1601887.html

延伸阅读
在声明区中声明如下(在.bas档中用Public,在Form中用Private) PrivateDeclareFunctionShellExecuteLib"shell32.dll"Alias"ShellExecuteA"(ByValhWndAsLong,ByVallpOperationAsString,ByVallpFileAsString,ByVallpParametersAsString,ByVallpDirectoryAsString,ByValnShowCmdAsLong)AsLong 在程序中 Intranet: Sh...
木马的介绍 因为本文是探讨木马程序,所以在介绍之前有一些木马构成的基本知识事先说明。一个完整的木马系统由硬件部分,软件部分和具体连接部分组成。这里主要对软件部分介绍,它主要有控制端程序、木马程序(后台服务程序)、木马配制程序组成。控制端用以远程控制服务端的程序;木马程序是潜入服务端内部,获取其操作权限的程序;...
具体的实现方法如下: ①:在你的窗体加入代码。如果是多个窗口,可以将此代码放到模块中。 代码如下: '声明API函数 PrivateDeclareSubInitCommonControlsLib"comctl32.dll"() PrivateSubForm_Initialize() InitCommonControls EndSub 注意:千万不要在Form_load()事件下写InitCommonCon...
标签: Delphi
  随着Internet/intranet的发展,多层应用和分布式瘦客户数据库应用程序逐渐得到广泛应用。在多层应用的开发方式中,Delphi提供了Midas构件,第三方提供了Asta 、Midware等。经过使用,相比较而言,Asta所提供的构件易学易用方便灵巧,客户端程序无须任何数据库引擎或动态连结库即可方便的实现多层应用,且客户、服务器可实现实时信息...
在Office2000中,就用户界面丰富程度而论,Word以56个工具栏(Toolbar)、50个弹出式菜单(Popup Menu)雄居首位,但Excel(工具栏40个、弹出式菜单51个)和PowerPoint(工具栏43个、弹出式菜单25个)也相差不远。大多数用户可能从来没有见过所有这些工具栏,甚至许多用户不知道Office提供了这么多命令工具。 虽然我们可以用菜单隐藏...

经验教程

731

收藏

95
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部