[成功]又一次自己编译Mono,这次是在Windows上,玩Bundle

作者:V君 发布于:2017-10-30 21:07 Monday 分类:折腾手记

目标 -- 将 .net 应用程序用只用一个 exe 承载, 并极大缩减体积, 且能保证工作正常.


(这次不是针对性的解决问题, 不TL;DR (´∀((☆ミつ 


篇幅较长, 进来看

阅读全文>>

标签: 软件开发 C# 命令行 软件故障诊断

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

批量下载在漫画的通用解决方法,包括脚本生成内容

作者:V君 发布于:2017-10-25 13:43 Wednesday 分类:折腾手记

TLDR:

由于太过简单(也就百来行代码),写得还有点丑,就不传到SVN上了 (´∀((☆ミつ

流程大概如下:
  1. CsQuery解析HTML
  2. jurassic解析Javascript
  3. Newtonsoft解析Json对象
  4. PLINQ多线程下载图片文件

进来听我扯扯

阅读全文>>

标签: 软件开发 javascript C# Chrome 爬虫 HTML Web技术

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

使用程序包管理控制台批量安装/更新/修复NuGet包

作者:V君 发布于:2017-8-27 20:24 Sunday 分类:折腾手记

TL;DR

准备好你的 packages.config 配置文件,可以从以前的项目中直接拷贝或自己写。

去程序包管理控制台执行 Update-Package 就能把配文件中的所有包的更新到最新版本。

接下来执行 Update-Package -Reinstall 把配置文件中的包装上。

如果你改变了目标框架,需要重新选择依赖库,可以再次执行 Update-Package -Reinstall。

 

听我扯扯:

在过去新建项目,添加 NuGet 包时只能去包管理器界面一个个手动搜索添加。

当改变了目标框架,只好一个个手动卸载再走一遍上述步骤。 要不要这么麻烦?

依旧喂狗到爆栈,找到批量安装更新全部包的方法,从此再也不需要这么麻烦手动安装了。

标签: 软件开发 VisualStudio

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

使用StackStrace获取属性名称的惨痛教训

作者:V君 发布于:2017-7-21 18:04 Friday 分类:折腾手记

TL;DR: 改用 CallerMemberName 的方式.


必须扯,内容再少也要扯!

 

一直以来, 封装配置访问类时, 根据同样的只读属性名称去字典值或查数据库.

尽管比较新的 nameof 关键字可用, 但还是需要重复打字, 这非常不爽.


于是自作聪明的咱就抓取上一个堆栈帧, 取出方法名的方式代替Key.

定义一个无参方法 GetValue ,里面去抓 StackTrace, 

一般情况下, 只读属性的方法名是 get_XXXX, 这种情况直接去掉头就可以吃了.

然后只读属性的 getter 就直接无参调用 GetValue(),

看到一大堆只读属性调用同一个无参方法是不是很魔法啊? 乂目

  public string ConfA => GetValue();
  public string ConfB => GetValue();
  public string ConfC => GetValue(); 


然而, 二般情况出现了... 优化编译并 IL-Repack 之后 --

 只读访问器的堆栈帧不见了!!! EXM?!

错误地取到上一个方法的名字, 导致配置读不出来 囧....

即使在 GetValue 方法加上了 NotInlining 的特性, 问题仍旧存在...

放狗出去找爆栈, 在不太相关的问题上看到有说用 CallerMemberName 可以.

用了之后才知道爽, 问题解决了!

标签: 软件开发 C#

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

板载集成网卡问题导致Flash加载失败

作者:V君 发布于:2017-6-23 16:57 Friday 分类:挖坑经验

终更:

关闭中断调整之后用了几天, 问题又出现了, 无论高级选项怎么整都没用.

只好花点钱搞一张独立网卡, 装上之后禁用原来的集成网卡, 问题解决...

推定集成网卡有毛病 _(:з」∠)_


原标题:

莫名其妙:有线网卡驱动设置「中断调整」Interrupt Moderation导致Flash加载失败EXM???


原内容:

TL;DR: 去属性高级,将其关闭,Flash 加载失败的问题解决. 不知道为啥!


点击查看原图



必须扯扯排查过程, 信息量太少了! (´∀((☆ミつ


一个WEB项目测试过程中发现 Flash 上传组件不工作, 右键显示为「影片未加载」.

然后发现只有这台机出现问题, 别的机器都好好的.

不仅上传组件, 所有的在线Flash都受影响.


试着直接在浏览器上输入 swf 的完整 url -- 失败

换IE/FF/360(测试的机器啥都有) -- 统统失败

试着在 Fiddler 中的 Composer 中发出请求, 得到的是超时代替的 504 错误.

最后 telnet 手动发起 HTTP 请求 -- 却能收到响应数据,尽管是一坨乱码,swf 是二进制的嘛!


排除了网络和 Sockets 组件的问题.

这时候只能怀疑是系统里面 Sockets 到浏览器之间出毛病了, 比如 wininet.dll 之类的.

这是没法轻易修复了, 就重装了系统.....


装完之后现象依旧存在, 三脸懵逼.


和重装之前没有变化的只剩下IP了.

由于我们为了方便访问, 设置了固定IP, 试着改一下IP,

居然成功访问了一次, 清除缓存之后又不行了.


只好发挥死马精神, 掏出一个 USB-WiFi 拇指头插上,禁用有线网卡 -- 故障现象消失

反过用有线网卡来能复现故障现象 -- 难道是有线网卡的锅???


抱着疑虑去看看调整MAC地址这类做法能不能打醒, 就去到网卡属性高级了.

眼前一亮, 发现好多奇怪的束手束脚设置, 比如节能啦,调整啦,减负啦 的.

一口气把能关的全部关掉, 然后居然 -- Flash 正常加载了... EXM???


清空缓存, 把配置打回去, 能复现, 这说明问题肯定在某些选项中.

见到「中断调整」这个选项比较不顺眼, 单独关掉之后 -- Flash 加载出来了!

又把它打开,清除缓存 -- 可复现!


于是就懵逼到这里. _(:з」∠)_ (´∀((☆ミつ




标签: 软件开发 软件故障诊断 HTTP Web技术

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

Powered by emlog 去你妹的备案 sitemap