我正在尝试从.exe文件中提取嵌入式资源。我可以像这样从C#代码中轻松获取嵌入式资源:
string changeLog;
/* Get the changelog embedded resource */
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("SIPBandVoIPClient.CHANGELOG.md"))
using (var reader = new StreamReader(stream))
{
changeLog = reader.ReadToEnd();
}
但是,现在我正在尝试从JavaScript / nodeJS中获取嵌入式资源。
我只是尝试“抓”一些我知道在文件中的文本,但找不到。也许是base64编码的?
编辑:我尝试以另一种方式嵌入资源-通过使用Visual Studio中的属性部分,而不是将文件添加到项目中并将其标记为资源。
现在,我可以像这样访问它:
string changeLog = Encoding.UTF8.GetString(Resources.CHANGELOG);
此外,我可以在.exe中逐字查找文本。在文本之前,有一些(二进制?)数据,如下所示:
(对屏幕截图表示歉意,我认为由于不可打印的字符,文本本身无法很好地呈现)
我想知道是否有一种方法可以将其从任何二进制垃圾转换为可用于搜索.exe的标签。我当然可以搜索“对该项目的所有值得注意的更改...”,然后进行备份,但是似乎容易出错。知道在哪里准确停车也很方便。
我确实考虑过使用node-ffi模块,并连接到Windows Api功能,但是,这仅是Windows,并且我认为我需要Linux支持。