有没有人有任何谷歌破解配置的例子?我可以很好地构建它,但是,文档有限.我想看一些示例,例如如何修改崩溃报告发送到的位置.
.NET应用程序与堆栈跟踪崩溃:
调用堆栈:
Layouts!Layouts.Ribbon.SizeAndPositionControlViewModel+OnLayoutSelectionChanged>d__5.MoveNext()
mscorlib_ni!System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__0(System.Object)
WindowsBase_ni!System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
Run Code Online (Sandbox Code Playgroud)
callstack的其余部分是Windows代码并不重要.
这是第一个调用暗示的内容:在OnLayoutSelectionChanged()实例中的async方法SizeAndPositionControlViewModel失败的方法MoveNext().MoveNext()碰巧是LINQ方法中的Microsoft代码Any.
d__5表示什么?
我有一个OutOfMemoryException,我想分析应该创建的数组的大小和类型.
我为这种情况创建了一个演示目的转储,我能够获得以下信息:
0:000> !pe
Exception object: 023f389c
Exception type: System.OutOfMemoryException
Message: <none>
InnerException: <none>
StackTrace (generated):
SP IP Function
0015EE44 0099007F OOM2!OOM2.Program.Main()+0xf
StackTraceString: <none>
HResult: 8007000e
0:000> !u 0099007F
Normal JIT generated code
OOM2.Program.Main()
Begin 00990070, size 22
00990070 baffffff7f mov edx,7FFFFFFFh
00990075 b90241a478 mov ecx,offset mscorlib_ni+0x4102 (78a44102)
0099007a e8192194ff call 002d2198 (JitHelp: CORINFO_HELP_NEWARR_1_VC)
>>> 0099007f 8bc8 mov ecx,eax
...
Run Code Online (Sandbox Code Playgroud)
所以我可以看到创建了一个新数组,大小为7FFFFFFF,这是20亿个项目.(请忽略这样一个事实:您甚至无法在32位.NET应用程序中创建该大小的byte [],因此在此示例中类型可能根本不重要.)
我现在已经读过数组的类型在ECX寄存器中,但遗憾的mscorlib_ni+0x4102 (78a44102)是不是很有帮助.
我尝试过!mln,!mdt甚至不切实际!ip2mt,但没有一个显示预期byte或byte[]输出.有没有办法从mscorlib的原生图像中获取类型?
之前我曾与C#合作过,我考虑过了
Calendar cal = Calendar.getInstance();
Run Code Online (Sandbox Code Playgroud)
根据GoF Singleton模式(维基百科)成为单身方法,我想知道如何创建两个日历,因为Date有些不赞成.
从文档中
使用默认时区和区域设置获取日历.
和重载
getInstance(TimeZone zone)
getInstance(Locale aLocale)
Run Code Online (Sandbox Code Playgroud)
在我看来,这是对单例模式的概括,以便为每个时区和语言环境创建单例.但是我想在同一时区里有两个日历.
但是,当我进行测试时
@Test
public void test()
{
Calendar cal = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
assertTrue(cal == cal2);
}
Run Code Online (Sandbox Code Playgroud)
它失败了,告诉我这个getInstance()方法实际上不是单例模式getInstance()方法,而是其他方法.
那么,一般来说,是否getInstance()根据Java中的单例模式表示单例?如果是这样,Java文档中的关键措辞是什么,以找出它是或不是单身?如果没有,我如何识别Java中的单例模式?或者是Calendar唯一的例外?
我不想在每次getInstance()接听电话时都进行单元测试.
我读过这个答案"在Java中实现单例模式的有效方法是什么?" ,这与C#完全相同,这与Calendar实现相矛盾.
我有一个应用程序,有时会在Win XP机器上导致BSOD.试图找到更多信息,我加载了生成的*.dmp文件(来自C:\ Windows\Minidump),但是在执行此操作的大部分读取时收到此消息:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y <symbol_path> argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Run Code Online (Sandbox Code Playgroud)
这意味着什么,我该如何"修复"它?
我正在寻找一个连接到与C#一起使用的Bugzilla的库.我确实找到了Bugzilla C#Proxy,但它并不是我想要的.我无法通过Google搜索找到任何其他内容.有人有任何其他建议吗?谢谢.
我完全迷失了如何构建Google的破解版.有一个sln文件,但它取决于一个似乎没有相关sln的库.它似乎使用了一种叫做gyp的东西,我还没弄清楚如何开始工作.我试过了
python gyp ..\breakpad\src\client\windows\breakpad_client.gyp
Run Code Online (Sandbox Code Playgroud)
这只是给出以下错误
Traceback (most recent call last):
File "gyp", line 18, in <module>
sys.exit(gyp.main(sys.argv[1:]))
File "pylib\gyp\__init__.py", line 445, in main
options.circular_check)
File "pylib\gyp\__init__.py", line 84, in Load
depth, generator_input_info, check, circular_check)
File "pylib\gyp\input.py", line 2165, in Load
VerifyNoGYPFileCircularDependencies(targets)
File "pylib\gyp\input.py", line 1429, in VerifyNoGYPFileCircularDependencies
' '.join(bad_files)
gyp.input.CircularException: Some files not reachable, cycle in .gyp file dependency
graph detected involving some or all of:
..\breakpad\src\client\windows\sender\crash_report_sender.gyp
..\breakpad\src\client\windows\h
andler\exception_handler.gyp ..\breakpad\src\client\windows\breakpad_client.gyp
..\breakpad\src\client\windows\unittests\client_tests.gyp
..\breakpad\src\client\windows\crash_generation\crash_generation.gyp
Run Code Online (Sandbox Code Playgroud)
这是我无法理解的.我似乎也找不到任何文件.任何帮助,将不胜感激.
简短的问题
如何从可执行文件(.EXE/.DLL)获取有关多个代码签名证书的信息?
预期答案
最终接受的答案应该提出一种方法来获得C#中的所有证书.概念/伪代码是可以的,我不指望你写完整的源代码.
有关建议工具的中间答案,请参阅Security.StackExchange上的问题.
很长的问题
我正在研究是否可以在插件(.DLL)上使用多个代码签名证书来检查它是否已经过官方测试.这是程序:
似乎可以使用第二次签署DLL
signtool /v /f <pfx> /as <dll>
Run Code Online (Sandbox Code Playgroud)
这可能有用的迹象:
但是,有一些问题显示第二个签名:
X509Certificate.CreateFromSignedFile()方法只能返回一个证书目前我实际上是在EXE文件而不是DLL文件上尝试我的代码,但这应该不重要.EXE已使用受信任的根证书和时间戳签名.第二个签名是使用我自己的证书创建的,遵循这些步骤,目前没有时间戳.
在问这个问题之前我做了些什么:
到目前为止我发现的唯一相关问题是如何使用时间戳正确地进行双重签名,但它没有答案.
在Microsoft Technet上,我可以读到taskkill有一个/f参数来强制终止进程.我想知道这在内部是做什么的,以了解这种行为的影响.
taskkill(没有/f)不只是向进程发送WM_CLOSE消息,否则我的应用程序会询问是否保存打开的文档.这使我假设它已经在TerminateProcess(MSDN)级别上运行.但是,TerminateProcess没有强制kill的参数.
那么,内部做什么taskkill和taskkill /f做什么?
我读了相关的问题C#Process.Kill()和Taskkill之间的差异,但它没有答案.
当捕获转储文件并对其进行分析时(例如在WinDbg中),我经常会收到警告:数据可能不准确,或者命令可能无法访问,因为当收集转储文件时,进程位于GC的中间.
在进行内存分析时,我们经常这样做是因为进程中的内存很高而且内存压力很高,我猜这会强制.NET到GC.
如何在GC期间避免转储?有没有办法知道何时可以安全地捕获转储文件?