做了个小工具:锁屏后立即关闭显示器

作者:V君 发布于:2018-7-15 9:17 Sunday 分类:我的应用

点击查看原图

TL;DR

 [ 本体 ][ 源代码 ]


效果:


用法: 打开之后放一边, 最小化会缩小到托盘, 加入任意参数可以自动最小化, 方便自启动

环境: 只需要 .NET 2.0 ,Win7以上无需考虑兼容性.


闲话时间:

当显示器超过两个的时候, 需要一个个关掉太麻烦了.

尽管可以设置锁频1分钟之后自动关闭但还是不爽, 这货就诞生了.

依旧是强迫症的风格, 图标只留Win32资源, 启动之后用API读取并应用到主窗体和托盘图标.

标签: Interop Winform 小工具

评论(0) 引用(0) 浏览(68)

造一个轮子:自动嵌入专辑封面到音频文件

作者:V君 发布于:2018-5-22 10:16 Tuesday 分类:我的应用

TL;DR

[ 本体 ][ 源代码 ]

效果:对指定的音频文件嵌入专辑封面图片并另存.

用法:参见代码或无参执体输出的用法提示 可能频繁改动 (´∀((☆ミつ

  -尽管如此还是列举一下初衷:当准备好一堆MP3或M4A还是其他格式(得按需修改源码)

  -且还准备好一堆同名的jpg图片作为专辑封面时,你可能需要一个工具来执行批量嵌入.

  -可以使用目前已实现的操作捷径[embcover_mp3_jpg_dir]或[embcover_m4a_jpg_dir]

  -栗子:在z:\mp3andjpg里面准备一堆MP3并放入同名的jpg图片

  -执行:Id3TagBatchProcess.exe embcover_mp3_jpg_dir z:\mp3andjpg\ z:\embedded\

  -刷一下屏就可以在z:\embedded\得到自动嵌入好专辑封面的输出.

  -为了满足即兴操作还提供了[embcover]操作,分别将源文件,图片,输出和可选的mime

  -作为参数传入就可以执行单个文件的专辑封面嵌入

限制:尚不明确,使用了[ taglib sharp ]几乎所有常见的格式都支持

环境:需要.NET 4.6. XP? 那是什么? 好吃吗 (´∀((☆ミつ


扯一句:

 只是为了将自己REMIX的游戏BGM导入猪圈云,并带上自己盖了章的专辑封面

 网上兜了一圈发现并没有满意的工具, 不爽就自己现炒个轮子, 这次是个粗暴的万向轮

标签: 音乐 多媒体 批量音频编辑

评论(0) 引用(0) 浏览(161)

丢掉花生壳吧!自己实现DDNS

作者:V君 发布于:2017-8-27 23:20 Sunday 分类:我的应用

TL;DR

[源代码] 按需修改,尚未提供直接可用的二进制版本

效果:自动将当前IP地址更新到指定DNS记录,并持续监视确保同步。

用法:

 首次启动应用程序会自动创建数据库,然后因未填入配置而停止运行。

 在数据库填入配置并重新运行即可。

 加参数 --no-enter 可以禁用回车键退出,方便linux开机自启动和nohup后台运行

限制:

 目前只实现了 GoDaddy 的域名 API,且需要一个获取当前IP的途径,

 因此没有直接可用的二进制版本。

环境:需要.NET 4.5,兼容 mono

 

不吐不快!

虽然早就知道各种实名制要求的政策出来了,但是没有影响就一直无视。

直到花生壳帐号一个个挂掉,最后到本博客的花生壳也不幸遭到屏蔽,

去花生壳实名认证发现要上传身份证照片以及手持纸条的照片,泥马,这就像x贷一样哇!

如果只是绑定手机号,给你就给你吧,要求不能太过分,再见花生壳!


找别的法子实现 DDNS 吧!

首先想到的是三方DDNS,

比如不存在的 dyndns 啦、无缘无故封帐号的 afraid 啦、没用过的 2233 拉。

纠结这些不靠谱的东西时,灵光一闪:

如果直接把IP通过域名提供商的API捅进去,是不是可以把DDNS搞定?!

赶紧放狗出去找找看可能性,结果就找到了狗爹的API,很全哇!

于是这个小工具就诞生辣!

标签: 我的应用 个人服务器 C# mono DDNS

评论(3) 引用(0) 浏览(990)

软件开发辅助工具 - 将EntityFramework实体文档注释搬进数据库(MSSQL)

作者:V君 发布于:2017-1-9 21:22 Monday 分类:我的应用

TL;DR
[ 本体 ][ 源代码 ]

效果:生成SQL用于更新表和字段说明.
用法:直接运行,在弹出的打开对话框选择定义实体的程序集. (记得启用XML文档生成)
限制:尚不明确.
环境:需要.NET 4.5.2以上, 作为开发者不需要啰嗦更多.


 

扯扯:

 

点击查看原图

 

点击查看原图

 

虽然用上Code-first之后各种便利,然而当需要生成数据库注释用来给运维之类的提供方便时.
咕狗了之后发现并没有现成的工具,懵逼了一会儿. 又查了一下更新数据库注释的方法.
嗯嗯 MSSQL 比 MySQL 做起来方便多了. 于是这个小工具就诞生辣.


首先将打开对话框指定的程序集载入

 遍历所有类 -> 筛选出有[TableAttribute]特性定义的类
  遍历属性 -> 筛选出可读可写的非导航属性
 收集表名,成员名(如果指定了Column特性,将取其指定的列名)

 按对应定义抓取XML文档里的注释

 基于上述信息构建数据库更新SQL脚本. 
  (由于M$SQL新增和更新的分别是两个存储过程, 于是简化处理, 先新增再更新. 
   ((报已存在的错误提示无视掉就可以了 _(:з」∠)_

 将SQL输出到窗体控件

由用户自行丢进SSMS执行,结束.


做这东西过程中遇到了几个有趣的现象, 尽管不是很高深.


0) 嵌套类全名用加号分隔类名
 但是XML文档中仍然是用点分隔类名

1) 基类在不同的程序集
 这时候就要按属性信息的定义类(DeclaringType)去找程序集对应的XML来读取注释了

2) 继承来自泛型的成员
 在XML中泛型以"MyGenericClass`1"的方式表示,
 需要区分泛型然后获取泛型定义(GetGenericTypeDefinition)
 再读取全名才能得到XML中的名字格式,
 如果直接取全名将会得到类似"MyGenericClass[Int32]"的格式.



标签: 软件开发 C# 数据库 ORM

评论(0) 引用(0) 浏览(572)

无缝循环播放 - 蛋疼小工具

作者:V君 发布于:2016-4-25 18:26 Monday 分类:我的应用

TL;DR
[ 本体 ][ 源代码 ]
效果:对指定的音频文件做无缝循环播放.
用法:一个可选参数, 用来指定音频文件. 可以无参数打开然后拖进去.
限制:目前只支持WAV(PCM)格式.
环境:需要.NET 2.0, win7以上可以直接使用. XP需要安装.NET 2.0才能用


扯一句:

 只是为了在挖坑时循环播放某游戏的BGM,

 一直在用的播放器循环有缝隙, 不爽就自己现炒个轮子.

标签: 软件开发 C# 多媒体 无缝循环播放 音频

评论(0) 引用(0) 浏览(858)

Powered by emlog 去你妹的备案 sitemap