我正在尝试构建一个翻译助手,它可以在其他编译的 C# 应用程序(.exe)中读取,并显示来自 EXE 的表单,单独显示,旁边还有一个带有英语列的表格,它将显示当前的英语单词显示,另一列是翻译人员可以输入的值。完成翻译后,翻译人员可以将翻译导出为 resx 文件,以添加到项目中,也可以作为 Excel 文件进行记录。
我是 C# 新手,因此不确定我的结构是否正确,我设计的方式是在编译器期间将 dll 插入到 .exe 中,然后使用此 dll,翻译应用程序可以提取字符串。这适用于大多数字符串,但它会卡在有多个字符串可以在不同时间出现在同一个文本框中[例如断开连接、连接等]。我已经尝试到处搜索,但我无法找到有关如何从应用程序中提取所有字符串并能够识别它们属于哪种形式的信息,以便创建我的应用程序?
我面临的另一个问题是,实际上显示翻译后的字符串,如果我正在构建的应用程序可以显示翻译后的字符串的外观示例,它将会受益匪浅,因为某些语言的翻译可能会过长。但我发现我只能阅读已编译应用程序的各个方面并创建一个实例,但无法翻译它。
我正在使用 Reflection 阅读 exe,并且从网上了解到我需要使用反射.emit 来修改表单。但我发现从表单中识别的每一个字符串都被提取为一个实例,因此更改字符串只是更改字符串的实例,而不是表单本身的实例。因此我无法正确显示。
我已经尝试了 3 周来解决最后两个问题,提前感谢您帮助我解决这个问题。