一句话的问题

一句话的问题

很多问题的解决方案,虽然非常有用,但是概括起来不需要多少字,都汇总在这里。

[toc]

最稳定的给自己的推送接口

通过qq邮箱SMTP,发给自己(同一个邮箱),通过qq的QQ邮箱提醒接收

最方便地换硬盘重装系统

利用win10自带的 备份与恢复(win7) 借来一个大容量移动硬盘先备份,换硬盘之后恢复。

将旧电脑系统连带硬盘迁移到新电脑

使用下面命令准备系统:然后直接移动硬盘过去。

1
%windir%\system32\sysprep\sysprep.exe /generalize /oobe /shutdown

出现问题:

  1. 为单个用户安装的appx会造成问题,先卸载
  2. 千万要先把微软账户退出改用本地账号啊!!!不然被微软联网登录卡得进不去账号
  3. 电脑真的第一次开机要保证不能换任何配件!才能激活。激活之后再换硬盘。

ida出现import site failed

清空自己的PYTHONHOME才行 或者通过bat启动

1
2
3
set PYTHONHOME=
set PYTHONPATH=
start C:\Users\warren\my_programs\IDA_Pro_v7.0_Portable\ida.exe

SD卡作为内部存储

stackoverflow

不需要改initrd,或者什么vold.fstab了。现在的安卓系统内置支持了。害的我还折腾,root手机。 sm set-force-adoptable true大法, sm partition disk:179,64 mixed 60表示留下60%的空间,将SD卡40%的空间用作内部存储。sm partition disk:179,64 private表示将整个SD卡用作内部存储。

Magisk的通用安装方法

system as root可能指没有boot分区,直接将system作为根目录。而不是像通常的boot目录作为initramfs只读启动,再挂载system分区。这种情况要patch recovery分区,开机的时候用进入recovery的方式开机。

找到当前手机rom刷机包,提取boot.img打patch,解锁手机后fastboot刷入。

红米6这样操作后似乎没了基带。注意考虑基带问题。

三星手机似乎非常复杂。

git从commit中提取patch

这里

1
git format-patch -1 HEAD

想要把多个commit放到一个patch里,就先check out新branch,然后squash成一个,最后提取patch。

screen让ssh退出还能运行命令

1
screen

启动screen然后运行自己的命令,然后Ctrl-a, d就可以detach,安全离开ssh

1
screen -r

恢复之前的screen

移动硬盘被占用

  1. 任务管理器-资源监视器-CPU-句柄-搜索盘符
  2. 弹出失败时去事件查看器eventvwr.msc找Windows日志-系统-来源是Kernel-PnP的事件,会显示哪个进程拒绝了弹出

cmd启动UWP程序

例如Microsoft.WindowsTerminal_8wekyb3d8bbwe!App

用管理员cmd,cd到C:\ProgramData\Microsoft\Windows\AppRepository\Packages 然后dir看目录名字就可以了。或者everything搜。或者先pin到开始菜单再拖到桌面得到快捷方式,在看属性。

1
explorer shell:appsFolder\Microsoft.WindowsTerminal_8wekyb3d8bbwe!App

diff导出单个文件的patch

单个文件或文件夹

1
"diff.exe" -Naru --strip-trailing-cr orig-file-path new-file-path > result.patch

Visual Studio 字符集 Character Set

https://stackoverflow.com/questions/9349342/about-the-character-set-option-in-visual-studio

https://stackoverflow.com/questions/3298569/difference-between-mbcs-and-utf-8-on-windows

听说tchar不太好,Multi byte在GBK环境下可能不是指utf-8. 推荐处理windows API时全用wchar的版本。

输出方面,直接使用wchar版本输出函数,可能导致每个字符带一个空字符。使用 setmode(_fileno(stdout), _O_U16TEXT); 启用UTF-16输出。

system("chcp 65001") 可以配合在不带L的字符串常量,使用不带w的输出函数输出中文正常。(这可能和源代码的编码有关?)

猜测:codepage决定了multibyte的解码。

TODO: locale和chcp 、code page和setmode什么关系。

:涉及 setlocale(LC_ALL, "chinese"); _setmode(_fileno(stdout), _O_U16TEXT); 等操作

https://stackoverflow.com/questions/2492077/output-unicode-strings-in-windows-console-app