问题标签 [undocumented-behavior]
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.
matlab - Matlab 图“年龄”
这是“Matlab 记录较少部分的专家”的问题:是否有(未记录的?)方法来确定一个数字的开放时间(即数字的“年龄”)?
macos - 如何在二进制可执行文件中找到隐藏或未记录的选项/标志?
许多 CLI 程序都记录了标志和选项的语法,通常在手册页中或使用-h
or--help
标志可用。但是通常有一些非常有用、非常强大的选项是故意未记录的,但我发现查找这些选项非常困难且耗时。
请注意,出于我最初的目的,我专门寻找在 Darwin 上执行此操作的方法(i/mac[h][ ]OS [X],或者这些天所谓的任何东西......),我会接受特定于该平台的答案。但真正理想的是可以跨平台和架构工作的东西。
所以我想知道是否有任何工具或轻松自动化的方法可以在我拥有的无数开发、调试和系统工具中找到程序的隐藏标志(但我不熟悉),或者至少是否有特定的一个或多个二进制可执行文件中的模式,人们可以依靠它来自动化“通过”二进制文件以找到可能的候选者的过程。
我知道对于大致相同数量的语言和平台,有 ±100 亿个选项解析函数、库和技术;getopt
并getopt_long
与许多其他人一起想到,通常称为涉及一个或多个术语组合的事物opt[s]
orarg[s]
和get
or parse
。因此,再次限制我的问题的范围,我今天特别寻找的是 Apple 产品上的实用程序的隐藏选项,所以如果它对我的目的有帮助(限制可接受答案的范围),让我们假设目标程式):
- 是用 [Objective-]C[++] 语言家族编写的(不过 Swift 也有加分!)。
- 可能是代码设计的,并且可能会或可能不会被剥离调试信息。
- 不是故意混淆的。
- 我们至少
r-x
可以访问该程序,因此我们可以制作一个可以修改的副本。 - 因此,我们可以自己剥离或删除签名,等等;但是,由于代码设计的限制,我们可能无法执行这些修改版本的二进制文件。这是一个软要求,因为我们可以禁用签名要求,但最好不要。
- 同样,出于同样的原因,我们可能无法从其他地方执行任意代码/未签名的应用程序,我正在寻找的最佳答案不涉及很多额外的软件。至少,请不要只是告诉我去购买 IDA Pro 的副本。
- 我们可能,但可能没有,可以访问源代码(duh)。
我目前执行此操作的过程通常包括:
- 复制可执行文件。
- 删除无关的东西,比如代码签名,我通常也
strip
会这样做。 - 围绕已知选项的上下文进行搜索,手动搜索并尝试可能的候选人。
也就是说,我发现了一些有用的选项,例如xip -x和pkgutil --expand-full,例如:
(很明显,花哨的 Unicode 表示变化。)
但到目前为止,我发现这些东西的确切位置几乎没有押韵或理由。之后的所有试验和错误。此外,对于基于 C++ 的东西(比如基于 LLVM 的工具,其中一些有-print-all-options
选项,但有些没有),它更具挑战性。
我真的很想找到一种方法来列出所有Apple 系统实用程序等的所有选项的完整列表。或者至少是类似的东西。可能的?
matlab - Matlab估计保存到磁盘所需的时间
简单的问题:
是否有任何(未记录的?)方法来估计(估计)Matlab 将一个非常大的变量从工作区保存到磁盘需要多长时间,有点像 Windows 用于文件传输?
谢谢
instance-variables - 直接读取实例变量
由于某种原因,此代码将起作用:
我看到,这个特性已经在标准库规范中使用了,但它似乎没有被记录。所以,问题是,该功能的状态是什么,应该使用它吗?
windows-10 - Windows 10 未记录的凭据提供程序 API
我正在开发一个凭证提供程序。它工作正常,但在调试阶段之一,我一直在跟踪对我的提供者QueryInterface
方法的调用,并发现了一些有趣的 IID,它被要求:
其中一些内部有痕迹credprovhost.dll
,我可以提出一些建议:
但这一个8A4E89FE-C09D-475E-88CB-F8F11E047C50
在 call 周围没有任何痕迹,只出现在Windows 10
.
会是什么呢?????请有任何建议。
macos - 以编程方式在 macOS 10.14 上调整抗锯齿
我正在寻找一种方法来调整以编程方式绘制的文本 macOS Mojave 中的文本笔画粗细,默认配置为无子像素抗锯齿。
您曾经能够使用私有 API 调整亚像素抗锯齿算法:CGContextSetFontSmoothingStyle
. 当子像素抗锯齿关闭时,API 什么也不做。虽然没有记录,但它被 webkit 在公开发布的代码中使用:https ://opensource.apple.com/source/WebCore/WebCore-351.9/platform/graphics/mac/FontMac.mm.auto.html
我知道这是可能的,因为 System Prefs>General 具有“在可用时使用字体平滑”,这在子像素抗锯齿关闭时确实会产生影响。但它似乎不会影响我用CTFontDrawGlyphs
or呈现的文本CGContextShowGlyphsAtPositions
。
从反汇编系统首选项看来,它似乎改变了AppleFontSmoothing
用户默认值(https://imgur.com/a/WrMKRWa)。在我的应用程序中更改该用户默认值似乎没有任何效果。
matlab - griddedInterpolant 如何处理应该被拒绝的输入?
的文档griddedInterpolant
指出该pchip
方法“需要至少 4 个(网格)点”。但是,当我使用 2 点向量运行它时,它是这样的:
请注意,该方法仍然是pchip
.
这非常令人困惑。为什么它不抛出错误?
matlab - 如何在图形中添加“教程消息 div”?
安装 R2018b 后,我打开的第一个图包含一条有趣的消息(显示为蓝色):
之所以有趣,是因为它包含文本换行、透明度、即使文本调整大小时图像仍保持恒定宽度的事实(这让我想起了 CSS3 flexbox,因此是标签)等。
动画的最后一部分是慢动作,以更好地显示 div 的大小如何跟随图形的大小。
以防万一,我使用的是 Win 10 v1803。
问题:
我想知道我们如何在我们的图形中绘制类似的、自定义的div(因为没有更好的词)。(重要的是要强调这不是一个UIFigure
!)
到目前为止我发现了什么:
了解更多链接打开页面:
web
然而,要么或docroot
(甚至)的入口点中的断点doc
没有被命中。假设这个元素是
Child
图中的一个,我试图找到它的句柄:但是,使用使这些控件不可见
set(h(2:end), 'Visible', false)
并不会使 div 消失。将图形另存为
.fig
或为其生成代码,不会留下该 div 的任何痕迹。当
uiinspect
-ing 这个数字时,这个 div 没有显示(或者至少,我找不到它)。我不知道我究竟做了什么让它再次出现,但由于它设置为在您第一次启动 R2018b 时出现,我怀疑删除
prefdir
(显然,在备份它之后)并重新启动 MATLAB 可能会恢复它。- 我唯一没有尝试过的是将 java 调试器附加到 MATLAB 并尝试将调用者跟踪到
com.mathworks.mlservices.MLHelpServices.setCurrentLocation
(frommlservices.jar
),这会打开帮助浏览器。
matlab - 为 matlab 匿名函数设置“帮助”
我有一个很长的匿名函数,我想知道是否可以(轻松地)修改帮助输出:
我知道长匿名函数可能是一件相当不寻常的事情——尽管如此:只要函数句柄存在,这是否可以通过未记录的函数来实现?
编辑:评论者要求一个用例:我阅读了具有多个输出的匿名函数(这里是关于 matlab 艺术的 Lorem),例如
而且我想确保我记得第二个输出参数是什么,稍后,你知道......因为人类忘记了东西
matlab - 自动回答 input()
这是一个可能开箱即用的问题:我想input()
在 Matlab 中自动“回答”一个命令。这怎么可能实现?
背景:我需要使用一段静态代码,但希望实现自动化。
我尝试使用 Java 机器人在控制台中输入内容,但是这只应在输入功能生效时运行,因此也会暂停所有命令,因此无法输入其他内容:
编辑:修改示例以包括嵌套函数调用input()
作为 GUI 调用它的示例