草庐IT

Gradle堆栈信息

全部标签

windows - Win32 堆栈部分基地址

我知道要找到一个文本(代码)部分的基地址,应该寻找.text部分的虚拟地址(除非启用了ASLR),但是堆栈呢?堆栈内存是否与堆一起存储在.data段中?如果是这样,我应该寻找.data部分虚拟地址以了解堆栈基地址 最佳答案 堆栈不是一个部分。为每个线程动态分配一个堆栈。(如果它是一个部分,那么每个进程只能有一个线程。) 关于windows-Win32堆栈部分基地址,我们在StackOverflow上找到一个类似的问题: https://stackoverflo

windows - Windows x86 堆栈中的堆栈是如何定义的?

首先我要证明我对堆栈的理解很差,然后我要问一个不太连贯的问题,但不能很好地回答,因为这个问题不够具体,无法引出一个精心设计的问题回答。那么,当程序运行时,函数会被压入堆栈-这意味着堆栈指针会递增或递减?栈内存分配到底存放了什么?指向变量数据的指针,指向程序其余部分的指针?我只是不明白堆栈中到底存储了什么(什么数据类型,什么类型的引用,它们是如何存储的)我希望一个函数存储它的局部变量指针和一个指向调用它的地址的指针,以便它可以返回.此外,windowsx86虚拟内存分配实际上将单个虚拟内存块映射到任意多个物理内存地址,因此堆栈在windowsx86系统的物理内存中是否连续?最后,假设堆栈

windows - 编剧如何从焦点窗口获取文本信息?

屏幕阅读器通过我认为是WindowsAPI的方式访问其他程序中的信息。任何人都可以评论这是如何完成的并提供一些文档的链接吗?有什么我应该注意的严重限制吗?如果您了解这在其他操作系统中的工作原理,您也会感兴趣。 最佳答案 大多数屏幕阅读器使用UIAutomation访问其他程序中的信息。一些应用程序不以这种方式提供辅助信息(糟糕的程序员!糟糕!糟糕!),所以一些屏幕阅读器使用mirrordrivers拦截低级绘图操作,然后从那里重新生成应用程序的信息。(我不推荐这样做;它很痛苦,容易挂起你的系统,并且在Windows8及更高版本中不受

windows - 为多个gradle任务创建一个临时目录

我在Windows环境中使用gradle。我希望我的gradle脚本创建一个临时目录,不同的任务以不同的顺序对其执行操作,然后在完成后将其删除(可选)。我如何在gradle脚本中创建这个临时目录?我最初的想法是Task.temporaryDir,但是该目录仅在任务期间存在。如果这很明显,我深表歉意,我是Windows的新手,昨天才开始使用gradle。 最佳答案 如果您需要在项目结构之外创建一个临时目录,可以通过添加来完成:deftempDir=File.createTempDir()tempDir.deleteOnExit()//

windows - 程序集 - 如何修改堆栈大小?

我是汇编编程的新手,我正在使用使用内存堆栈的push和pop指令。那么,堆栈默认大小是多少,如何修改它以及它的大小限制是多少? 最佳答案 筹码量取决于很多因素。这取决于你从哪里开始堆栈,你有多少内存,你使用的是什么CPU等等。您使用的CPU不称为“WindowsCPU”。如果您要指定正在使用的CPU,请详细指定该CPU的名称,而且非常重要的是,还要指定CPU的体系结构。在这种情况下,您可能使用的是x86架构。这是x86架构的内存映射:AlladdressesBefore0X100000-Free0x100000-0xc0000-BI

c++ - 我如何获得有关该错误的更多信息?

Qt应用程序崩溃,甚至调试器模式都是我得到的:ASSERT:"!isEmpty()"infileC:\Qt\Qt5.5.0\5.5\mingw492_32\include\QtCore/qlist.h,line321文件中的那一行指向:inlinevoidremoveLast(){Q_ASSERT(!isEmpty());erase(--end());}但我想了解更多信息。就像源代码中的哪一行正在使用它(通过搜索,没有直接调用removeLast()完成)。这可能吗? 最佳答案 如果您在调试器中运行您的程序,它将在断言处停止,您将能

c - 增加 Clion 中 C 程序的堆栈大小

如何为具有深度递归调用的C程序增加堆栈的最大大小?项目是否有任何配置可以指定可执行文件的堆栈或堆大小? 最佳答案 我通过在项目的CMakeList.txt中添加以下链接器标志解决了这个问题MATH(EXPRstack_size"16*1024*1024")#16Mbset(CMAKE_EXE_LINKER_FLAGS"-Wl,--stack,${stack_size}") 关于c-增加Clion中C程序的堆栈大小,我们在StackOverflow上找到一个类似的问题:

c++ - 为什么我会收到错误信息并且...?

在我的程序中,我声明了一个函数prototype,如下所示:voidcallToPrint(LPTSTR,LPVOID,DWORD,string)但由于此语句,我收到以下错误:errorC2061:syntaxerror:identifier'string'代码中还有其他错误,表明函数没有4个参数。(错误C2660:“callToPrint”:函数不带4个参数)为什么会出现此错误?我该如何修复它们?我的第二个问题是:我已经声明了一个LPTSTR类型的变量nameofPrinter但是当我写语句getline(cin,nameOfPrinter)时,显示的错误是没有重载函数getline

c++ - GetUserNameExA 函数无法在系统启动时(GINA)提供用户详细信息?

我正在使用C++win32API。我尝试使用GetUserNameExA()获取用户详细信息;我已经将此功能用于系统登录对话框源(GINA)。在我的日志文件中,它给出了CN=ComputerName,CN=Computers,DC=JEGAN,DC=COM"。但它是在登录系统后使用的,那时它会在我的其他解决方案中提供用户详细信息,如"CN=sanju,CN=USERS,DC=JEGAN,DC=COM"。我只想要用户详细信息,但它在登录时提供了系统详细信息,我怎样才能在登录时获得用户详细信息?注意:我已经尝试过ADSI、LDAP功能和目录服务无法使用。所以建议任何其他系统功能。

java - ConnectException(超时)使用 gradle wrapper 运行 groovy Koans

我正在尝试运行groovykoanshttp://groovykoans.org/当我使用gradlew脚本时,它会尝试从互联网下载gradle(来自http://services.gradle.org/distributions/gradle-1.8-bin.zip)但它因连接超时异常而崩溃。我可以从firefox下载文件。我按照说明在命令行中包含了http代理参数,我可以从我的机器上pingservices.gradle.org。我在Windows上。C:\Users\me\MyDocuments\documents\work\build_system\groovykoans-ma