问题标签 [react-os]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 有人用 ReactOS 试用过他们的软件吗?
免费的 MS Windows 替代操作系统ReactOS刚刚发布了一个新版本。他们有一个庞大而活跃的开发团队。
- 你试过你的软件了吗?
- 如果是这样,您的建议是什么?
- 是时候开始调查它作为一个严肃的 Windows 替代品了吗?
c++ - 在 ReactOS 上运行 ELF 二进制文件
请耐心回答,因为我对这一切都不熟悉,并且希望我的基础知识 100% 正确。我是一名机械工程师,所以不要苛刻。我正在学习一些非常基本的低级内容,并且有兴趣了解与编译器后端相关的概念。C/C++ 编译器输出可能是专门为计算机体系结构量身定制的机器代码。这也意味着如果两者都运行在相同的硬件上,例如 i7 处理器,它在 Windows 和 Linux 中应该是相同的。但是二进制格式的形式还有另一层区别。也就是说,我们在 Linux 上有 ELF(Executable and Linkable Format),在 Windows 上有 PE/COFF(Portable Executable)。
因此,我觉得 Linux 和 Windows 上的编译器的后端工作方式不同,并以 ELF 或 PE/COFF 格式发出二进制文件。
ReactOS是 Windows 的克隆,并且在一定程度上与 Windows 二进制兼容。
理论上是否有可能在 ReactOS 中拥有一个能够理解 ELF 并正确加载它的 LOADER?
我知道我们需要有一层将 Linux API 映射到 ReactOS API 的软件。如果存在这样的映射层,我的问题有意义吗?
windows - IDA 可以在 ReactOS 中运行吗?
我有一个项目,我将使用 vagrant 分发逆向工程环境,出于许可原因,我担心使用 Windows 映像作为 vm 基础。
我想使用 ReactOS 来运行 IDA(免费软件版本)并且对兼容性感兴趣。IDA 在 ReactOS 下是否以“稳定”的方式运行?
c++ - 默认 MINMAXINFO 值?
我目前正在编写一段代码,通过有效地为该过程重新实现 DefWindowProc 来规避用于移动和调整 Windows 大小的模式循环。
我遇到的第一个问题是使用 MINMAXINFO。似乎 Windows 在将消息发送到 WindowProc 之前使用默认值填充了它,因此简单地将消息发送到不覆盖这些值的窗口不会有任何好处。考虑到这不会像将桌面窗口大小设置为最大值和零设置为最小值那么简单,我检查了 ReactOS 在其源代码中是如何做到这一点的......好吧,我不明白他们为什么这样做他们在计算时所做的事情。
特别是,他们在调用 AdjustWindowRectEx 时选择否定 WS_BORDER 样式。他们对名为“xinc”和“yinc”的变量的使用对我来说似乎也很不寻常。
基本上,我希望使用过代码的人(或者更一般的 MINMAXINFO)可以解释我所缺少的内容。ReactOS:WinPosGetMinMaxInfo
translation - 在哪里可以找到 .RC 文件的在线翻译工具?
我检查了一些在线翻译工具,但任何人都支持 .RC 文件。
任何人都有支持这种格式的翻译工具的 URL 或任何其他想法来改进 ReactOS 项目中的翻译?
问候,赛巴门
git - 如何将包括所有标签和分支的 reactos 源签出为 SVN 工作副本或 git clone?
到目前为止,我的研究结果是:
查看http://svn.reactos.org/svn/reactos/trunk/reactos/,http://svn.reactos.org/svn/reactos/trunk/和http://svn.reactos.org/svn/ reactos导致重定位错误(
/li>- 到目前为止我发现的 git 克隆(不受欢迎的解决方案,因为依赖镜像可用性和更新活动并不好):
- https://github.com/mirror/reactos:仅镜像主干
- https://github.com/svn2github/reactos只镜像trunk/reactos
subgit configure --svn-url <tried all URLs listed above> reactos
失败,因为svn checkout
子命令失败- 使用http://svn2github.com/创建克隆失败并显示错误消息
Cannot connect to SVN repository at http://svn.reactos.org/svn/reactos/
编辑 1:ReactOS 团队提供了一个只读的 git 镜像,可在http://git.reactos.org/?p=reactos.git;a=summary浏览,但没有 git 的结帐 URL(我可以自己弄不明白)。
react-os - 如何下载 ReactOS 内核源代码?
我想下载一个项目的 ReactOS 内核源代码(因为 Windows_NT 是封闭源代码)。我只想要内核源代码,别无其他。
winapi - SHLoadIndirectString() 如何在内部工作?
我一直在尝试从桌面应用程序获取系统上安装的所有 UWP 应用程序的显示名称(应用程序的用户友好名称)。我正在尝试使用SHLoadIndirectString()
从与这些应用程序对应的注册表项获得的资源字符串。让我们以 windows 计算器为例。
SHLoadIndirectString() 用法
它的资源字符串可以从HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\Repository\Packages\Microsoft.WindowsCalculator_10.1705.1301.0_x64__8wekyb3d8bbwe\DisplayName
注册表项中获取。我系统上的资源字符串是@{Microsoft.WindowsCalculator_10.1705.1301.0_x64__8wekyb3d8bbwe?ms-resource://Microsoft.WindowsCalculator/Resources/AppStoreName}
要获得显示名称,我会这样做SHLoadIndirectString(@{Microsoft.WindowsCalculator_10.1705.1301.0_x64__8wekyb3d8bbwe?ms-resource://Microsoft.WindowsCalculator/Resources/AppStoreName})
。
实验观察
- (实验 1)我用于
SHLoadIndirectString()
两个不同的用户(U1 和 U2)。U1 的语言设置为英语,U2 的语言设置为法语(FR-fr)。当 SHLoadIndirectString() 从 U1 运行时,它返回Windows Calculator
,而对于 U2,我得到了Calculatrice Windows
. 因此,相同资源字符串的返回值取决于当前用户的语言设置。 - (实验2)我在U2中安装了一个UWP应用,对DiplayName中的资源字符串做了SHLoadIndirectString()。我在 U1 中遇到错误,但在 U2 中,它正确地给了我所需的字符串。
- (实验 3)当我将资源文件的路径添加
(resources.pri)
到资源字符串时,我在 U1 中没有错误。之前的资源字符串是@{DJiT.edjing-DJmixerconsolestudio-PlayMixRecordShar_5.1.12.0_x64__3nf5xjt6s13jt?ms-resource://DJiT.edjing-DJmixerconsolestudio-PlayMixRecordShar/Resources/AppName}
,我后来@{C:\\Program Files\\WindowsApps\\DJiT.edjing-DJmixerconsolestudio-PlayMixRecordShar_5.1.12.0_x64__3nf5xjt6s13jt\\resources.pri?ms-resource://DJiT.edjing-DJmixerconsolestudio-PlayMixRecordShar/Resources/AppName}
在传递给 之前对其进行了SHLoadIndirectString()
。
寻找解决方案
- SHLoadIndirectString() 的文档说它的返回值取决于
Shell environment or ResourceContext
,但没有给出每个细节的详细信息。 尝试重新创建 windows NT API 以运行 windows 应用程序的两个项目是ReactOS和wine。我查看了他们的源代码以找到 的实现
SHLoadIndirectString()
,但代码似乎所做的只是在删除开头LoadLibrary()
的符号后对资源字符串执行 a 操作。@
这没有任何意义,为什么系统中会有这样的dll,因为每个应用程序的资源字符串都不一样?
virtualbox - 与 VirtualBox 和 ReactOS 共享文件夹
我想在 Arch Linux 上的计算机和带有 ReactOS 的虚拟机之间拥有共享文件夹,但我不知道该文件夹在 ReactOS 中的位置。
它出现在哪里?
react-os - ReactOS – ntdll.dll 存根在哪里?
我只是在github上搜索ReactOS源代码,在ntdll中找不到系统调用存根。这是如何实施的?我可以看到SharedUserData->SystemCall
被设置为KiIntSystemCall
/KiFastSystemCall
但我无法追踪它的任何使用或调用存根的实际位置。我期待在构建 ntdll 时组装和链接的 asm 文件中看到它们的大列表。