0
点赞
收藏
分享

微信扫一扫

怎样从零开始写一个带有右键菜单的桌面程序(C#版本)


草稿箱里放了很久了,具体自己都不记得了,只是知道该怎么做。

可能除了我自己别人都看不懂,只能记给自己看了。


preface

原创,带有长期以来多次自己的各种摸索和探索,其中也一一揭示了知识的很多内容,如果按部就班完成而且步骤都理解了之后,应该会对Windows桌面程序的相关内容有一个本质的理解。

-----

background

1.有如图一个文件夹,做项目时公司的设计师会给我们很多的PSD文件和png文件,每个文件都有两个psd和png的各一份。于是文件夹就变成了这样。


2.文件太多,难以分辨,找得好烦,于是我写了一个exe文件,每次都toggle Hide/show psd文件。


3.我想必须得有一个exe文件,这多low啊。如果我能做成右键菜单的形式多好呢,是吧、


4.于是就开始了漫漫研究琢磨之路,多次尝试,多次不了了之。


----

演化步骤:

1.

1.1,怎样在Windows里各种情况下出现相应的右键菜单?

注册表

具体见另一篇博文。

1.2 怎样制作带有多个安装step的那种桌面程序安装包?

InstallShield Limited Edition for Visual Studio

1.3 InstallShield Limited Edition for Visual Studio要怎么安装?怎么激活?

 ****

1.4  InstallShield要怎么使用?各个项分别是做什么的?

******

1.5 做成的安装包怎样写写入注册表,以实现可以出现右键菜单的功能?

写入注册表


1.6 右键菜单确实出来了,我怎样使我点击菜单的这个项,就可以触发我写的程序?

*****

toggle/command

里面的(Default)  E:/ddddddddd.exe


1.7 1.6里面是不是少了一些什么?  

确实少了,少了很重要的东西,参数。  E:/ddddddddd.exe %1


1.8  我看懂了后面是软件执行的参数,那么,不同的信息,用什么参数来表示。?

%v.   %1等。具体我暂时还不知道很多。


1.9  理解到这里,真的就这么完成了吗?

wocao,真的什么都完成了,全程走下来什么都懂了。



1.10   应该还有点什么延伸或者遗漏的吗?

当然有,比如关于InstallShield里面的environment variables(环境变量)的相关设置。

这个写好后应该注册表里面的value值就不用写死的了,写死显然是很愚蠢的。


  1.10.2   C#里怎样读写注册表?然后根据注册表的配置内容,程序执行不同的操作

这个。。。 其实只要如何读写注册表即可。

实例代码如下:

//RegistryKey subKey = Registry.LocalMachine.OpenSubKey(@"HKEY_CLASSES_ROOT\Directory\Background\shell\TogglePSD");


举报

相关推荐

0 条评论