草庐IT

win32exception

全部标签

windows - Win32 堆栈部分基地址

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

C#/.NET Timers 和 Win32 Sleep 函数都不准确

对于下面的代码:实际间隔始终是1014.01毫秒而不是1000毫秒...我也尝试过在C++中使用System.Windows.Forms.Timer、System.Threading.Timer和WinAPISleep(int)函数,但额外增加的14.01ms始终存在。Windows8的系统时钟是准确的,但.NET计时器和WindowsAPI的Sleep(int)函数都不准确。publicpartialclassForm1:Form{privatelongticks;publicForm1(){InitializeComponent();}privatevoidForm1_Load(o

windows - 无法打开 VB 项目,无法加载错误 "C:\windows\system32\mscomctl.ocx"

我有一个VB项目能够正常工作,但现在当我打开该项目时,我收到了mscomctl.ocx错误。我已经重新注册了ocx,但仍然无法加载项目。我该如何解决这个问题? 最佳答案 我在Windows764位环境中打开项目时遇到了这个问题,它在winXP机器上工作正常。我之前在项目文件中做了一个非常简单的更改,上面写着Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0;MSCOMCTL.OCX我将2.1更改为2.0因为我在很多论坛上都看到过这样的情况,而且效果很好。VBP文件中的更新引用是Ob

windows - System32 是 Windows 中的当前工作目录?

刚刚注意到windows下system32是当前工作目录(而不是执行文件所在的目录)。为什么?总是这样吗?这是故意的吗? 最佳答案 当前目录设置为进程启动的一部分。进程启动后,它可以随意更改其当前目录。当前目录被指定为CreateProcess的参数,以及用于创建进程的任何其他类似API函数。为新进程的当前目录传递NULL是很常见的。在这种情况下,将使用父进程的当前目录。所以,看看你的具体问题:Whyisthatso?如果您的进程的当前目录是system32,那是因为无论启动该进程的是什么,或者您的进程选择了它。Isitalways

c# - 为什么在 Windows 7(.net 3.5) 中运行的应用程序在 Win8(.net4.5) 中无法运行

我有一个TargetFrameworkVersion=v3.5的应用程序v3.5应用程序在Windows7中运行良好,但在Windows8中我需要安装.netFramework3.5使用该应用程序。为什么我应该安装.netframework3.5,即使Win8具有默认的.netframework4.5。我应该如何在Win7和Win8中使用该应用程序? 最佳答案 默认情况下,Windows8上未安装.NET3.5,仅安装.NET4.5。.NET4.0/4.5和.NET2.0/3.0/3.5是并行安装的。因此,基于.NET3.5构建的应

windows - 从 32 位 C dll 创建 64 位 dll

我有一个从第三方获得的32位dll。他们没有64位版本。我希望将这个dll加载到64位python中。为此,我需要一个64位dll。是否有将32位dll转换为64位dll的工具,或者这是不可能的?如果不可能,我想我必须使用32位python。 最佳答案 只有供应商可以执行此操作,除非您可以访问DLL的源代码。必须针对64位重新编译它。我猜你必须使用32位python... 关于windows-从32位Cdll创建64位dll,我们在StackOverflow上找到一个类似的问题:

c++ - 从 x32 迁移到 x64 时出现链接器错误

我最近在VSprofessional2008中将一个项目从x32迁移到x64,但我遇到了这个奇怪的链接器错误:errorLNK2001:unresolvedexternalsymbol__imp_PostMessageWerrorLNK2001:unresolvedexternalsymbol__imp_FlushFileBufferserrorLNK2001:unresolvedexternalsymbol__imp_WriteFileerrorLNK2001:unresolvedexternalsymbol__imp_WaitForSingleObjecterrorLNK2001:

c++ - 32 位程序无法捕获在 32 位进程上进行的击键,但能够捕获在 64 位进程上进行的击键

我的环境详细信息:操作系统:Windows7EnterpriseServicePack1(64位操作系统)编译器:MicrosoftVisualStudio2005(Microsoft(R)32位C/C++优化编译器版本14.00.50727.762,适用于80x86)我的程序main.exe和hook.dll是32位的InternetExplorer(iexplore.exe)是64位Chrome(chrome.exe)是32位的我编写了一个名为main.exe的C++程序,它进行以下调用:HOOKPROCcallback=(HOOKPROC)GetProcAddress(dll,"

windows - 命令/电源外壳 : minimize all windows on your desktop except for current command prompt (console) or except for some particular window

好吧,我知道如何使用powershell方法从批处理文件中最小化桌面上所有打开的窗口-MinimizeAll():powershell-command"&{$x=New-Object-ComObjectShell.Application;$x.minimizeall()}"问题是:此方法最小化了所有内容,包括当前的cmd-console,在我的情况下,它应该始终对用户可见。现在,为了解决这个问题,我使用外部nircmd.exe工具和我的.bat文件的这一部分如下所示:::changecurrentcommandpromptwindowtitletitlemy-cmd-console::

c# - 在 Windows 中模拟 Win+R

我有一个program需要执行一些命令,如iisreset或iexplore或Win+R支持的任何其他命令。是否有我可以调用的现有API?目前,我使用以下c#代码只能模拟Win+R的部分命令。Processprocess=newProcess();ProcessStartInfostartInfo=newProcessStartInfo{WindowStyle=ProcessWindowStyle.Normal,FileName="cmd.exe",Arguments="/C"+cmd};process.StartInfo=startInfo;process.Start();