更改另一个流程区域设置
时间:2020-03-06 14:30:32 来源:igfitidea点击:
从我自己的"类似于键记录器"的过程中,我发现另一个进程的语言环境是错误的(即,通过嗅探几个键,我发现前台进程的语言环境应该是设置为另一个的语言环境)。最好的方法是什么?
解决方案
我会在该过程中使用setLocale对其进行更改,并通过某种形式的IPC将该过程通知给该过程,例如:
- 信号
- 插座
- 管道
从谁知道的过程
我们没有指定操作系统或者任何东西,但是在Linux中,这很难,除非目标进程愿意提供帮助(即,有一些IPC机制可供我们要求该进程为我们完成)
我们可以做的是像调试器或者strace一样添加到进程,然后调用适当的系统调用(如setlocale())。
目标进程的结果当然是不确定的,因为它可能不希望其区域设置发生变化:)