Articles of 处理

运行Processing SimpleOpenNi深度图像示例后,Xbox 360的Kinect冻结并断开与USB的连接

请帮忙 我一直在试图设置kinect XBOX 360在Ubuntu上运行,以开始开发一个应用程序来控制一个类人机器人。 在过去的四天中,我一直在search,下载,安装和尝试几十个库和驱动程序,以获得在Ubuntu上的工作。 一开始没有任何工作,我只能用“Camorama”和“guvcview”读取RGB相机,不pipe我试图运行什么库或驱动程序。最后,我安装了一个新的Ubuntu副本,并使用libfreenect库突触(我有点新手),我也安装了下列软件包 https://code.google.com/p/simple-openni/downloads/detail?name=OpenNI_NITE_Installer-Linux64-0.27.zip&can=4&q= 以及Processing 2.0和SimpleOpenNi-0.27 我开始处理 – >例子 – > OpenNi – > DepthImage&RUN,并且kinect开始3到10秒,同时将图像连同RGB图像一起给出,并且有一些时候出来,然后帧冻结,当我尝试列出USB设备($ lsusb)没有列出Kinect相机或audio设备,因此Kinect必须从适配器和USB拔下,然后重新插入,运行草图后问题仍然存在。 尝试解决scheme: 1-删除和黑名单gspca内核模块 2-禁用USB自动挂起 但问题仍然存在… 我正在使用Kinect的XBOX 360与(12V – 1.08A)USB交stream电源适配器http://www.walmart.com/ip/INSTEN-USB-AC-Power-Adapter-For-Microsoft-Xbox-360-Kinect多个传感器/ 28882271 我的笔记本电脑是:戴尔Inspiron1525英特尔Core2Duo RAM 2GB 运行Ubuntu 14.04.2 LTS ,, Release:14.04,Codename:trusty 任何人都可以帮助我!

分段error handling

我有一个应用程序,我用它来捕捉任何分段错误或ctrl-c。 使用下面的代码,我能够捕捉到分段错误,但处理程序被一次又一次地调用。 我怎样才能阻止他们。 为了您的信息,我不想退出我的应用程序。 我只需要注意释放所有损坏的缓冲区。 可能吗? void SignalInit(void ) { struct sigaction sigIntHandler; sigIntHandler.sa_handler = mysighandler; sigemptyset(&sigIntHandler.sa_mask); sigIntHandler.sa_flags = 0; sigaction(SIGINT, &sigIntHandler, NULL); sigaction(SIGSEGV, &sigIntHandler, NULL); } 和处理程序是这样的。 void mysighandler() { MyfreeBuffers(); /*related to my applciation*/ } 在这里为分段错误信号,处理程序被调用多次,正如显而易见MyfreeBuffers()给我释放已释放内存的错误。 我只想释放一次,但仍然不想退出应用程序。 请帮忙。

什么会导致部分处理泄漏?

这是对我以前的问题的后续问题。 正如我在上一个问题的答案中所build议的那样 ,我使用了ProcessExplorer来分析我的应用程序用于查找句柄泄漏的句柄列表。 泄漏的句柄是Sectiontypes的。 什么是一个部分句柄,它在哪里使用,并可能导致部分句柄泄漏? 我没有在我的代码中使用内存映射文件。

DirectX全屏窗口通过使用Windows API函数的窗口句柄进行窗口化

短篇故事 游戏开始全屏,但是是一个全屏directX窗口。 游戏支持窗口,但我必须手动。 我在Delphi中创build了一个程序,可以对任何窗口进行拉伸/resize以适应屏幕(使用系统范围的热键),无边框和标题,因此看起来像全屏,但不会触发直接的硬件访问。 这很重要,因为我使用的是不支持直接硬件访问所使用的技巧的DisplayLink适配器,但是想要在没有难看边框的情况下全屏播放它。 我可以调整除全屏DirectX窗口以外的任何窗口,我必须手动将全屏模式更改为窗口,这是我想要自动化。 长话短说 (向下滚动,如果你想知道这个问题) 我有一台DisplayLink适配器,电视屏幕距离电脑5米。 我想用它来运行游戏,所以我可以从沙发上玩游戏。 但是,DisplayLink驱动程序不能全屏播放大多数游戏,因为大多数游戏都会绕过桌面窗口pipe理器(DWM)直接在全屏时访问graphics硬件。 这是DisplayLink常见的/已知的问题。 在窗口模式下,适配器执行得非常好,所以我想在Delphi中编写一个小程序,将窗口化的directx屏幕最大化,而不是通过最大化全屏来实现,而是将窗口延伸到全屏。 我做的程序工作得非常好,但是只有当directx屏幕已经被打开时(游戏开始全屏,所以我必须点击一次窗口的图标才能使它成为窗口)。 游戏已经有了一个选项,可以在启动时加窗,但固定分辨率的可能性较小。 我想在全屏启动时自动执行此过程。 我想将directx屏幕更改为窗口,然后将其调整为全屏,而不是最大化。 程序如何工作 该程序定义了一个全系统键盘热键。 当按下热键时,程序将所有活动的前景窗口(窗口API getForeGroundWindow() )拉伸到全屏,使其成为无边界窗口,使其看起来像全屏。 这使您也可以在任何您喜欢的屏幕上运行游戏,而不仅仅是在系统的主屏幕上。 再次按热键时,窗口返回到之前的状态(切换)。 在应用“补丁”之前,它也检查窗口的types,所以它不能在不可resize的窗口上使用。 题 我知道窗口的把手必须被拉伸/调整到全屏。 当它是一个全屏DirectX窗口,我不能做任何事情,除非它是窗口。 如何通过向这个窗口句柄( sendMessage() )发送消息来将其状态更改为窗口状态。 这可能吗? 一些代码 (给你一些想法幕后发生的事情) function TWinSpread.setWindowStyleBounds( h : hWnd; lStyle : LongInt = 0; pR : PRect = nil ) : LongInt; var bRestore : […]

Python – 如何获得一个进程的开始/基地址?

我如何获得进程的开始/基地址? 每个示例Solitaire.exe(solitaire.exe + BAFA8) #-*- coding: utf-8 -*- import ctypes, win32ui, win32process PROCESS_ALL_ACCESS = 0x1F0FFF HWND = win32ui.FindWindow(None,u"Solitär").GetSafeHwnd() PID = win32process.GetWindowThreadProcessId(HWND)[1] PROCESS = ctypes.windll.kernel32.OpenProcess(PROCESS_ALL_ACCESS,False,PID) print PID, HWND,PROCESS 我想计算一个内存地址,为此我需要solitaire.exe的基地址。 这里是我的意思的图片:

WinForms手柄太多

我的生产,我的应用程序造成了两个不同的例外: System.ArgumentException: Invalid Parameter. at System.Drawing.Image.get_RawFormat() at System.Windows.Forms.ToolStripItem.set_Image(Image value) at Zeiss.IMT.IME.CmmUI.Tools.ToolControl.updateControls() 还有另一个例外,我想有同样的原因: System.ComponentModel.Win32Exception: The operation completed successfully at System.Drawing.BufferedGraphicsContext.CreateCompatibleDIB(IntPtr hdc, IntPtr hpal, Int32 ulWidth, Int32 ulHeight, IntPtr& ppvBits) at System.Drawing.BufferedGraphicsContext.CreateBuffer(IntPtr src, Int32 offsetX, Int32 offsetY, Int32 width, Int32 height) at System.Drawing.BufferedGraphicsContext.AllocBuffer(Graphics targetGraphics, IntPtr targetDC, Rectangle targetRectangle) at System.Drawing.BufferedGraphicsContext.AllocBufferInTempManager(Graphics targetGraphics, IntPtr targetDC, Rectangle targetRectangle) at System.Drawing.BufferedGraphicsContext.Allocate(IntPtr […]

计算Windows进程的CPU使用率?

给定一个进程ID,我怎样才能从这个进程的C#加载CPU的负载? 我已经尝试使用PerformanceCounter在c#中所述计算特定应用程序的CPU使用率 我还尝试在一个时间范围内手动取得进程的总CPU时间的两个值,并将delta-cpu-time与delta-total-time分开。 这两种方法似乎一开始工作正常,但如果我把我的应用程序旁边的Windows任务pipe理器我的应用程序总是显示约两倍的任务pipe理器。 我试图用10ms到10sec的各种时间步长进行更新,并一直得到相同的结果。 嗯,当我写这个时,意识到这可能是某种双核问题。

以编程方式计算Windows上的进程的开始时间

我正在使用Visual Studio在Windows上编写c / c ++代码。 我想知道如何有效地计算我的过程的开始时间。 我可以使用gettimeofday()吗? 我发现从谷歌以下代码,但我不明白它在做什么: int gettimeofday(struct timeval *tv, struct timezone *tz) { FILETIME ft; unsigned __int64 tmpres = 0; static int tzflag; if (NULL != tv) { GetSystemTimeAsFileTime(&ft); //I'm lost at this point tmpres |= ft.dwHighDateTime; tmpres <<= 32; tmpres |= ft.dwLowDateTime; /*converting file time to unix epoch*/ tmpres /= 10; […]

以用户身份运行我的程序

Windows 7,Vista,Server 2008,UAC已激活 程序必须用pipe理员权限进行说明才能进行一些安装操作。 之后,我希望我的程序继续使用非pipe理员权限。 我怎样才能重新启动它没有pipe理权限? PS 我的程序重新安装。 我不想分发任何额外的程序。 所以我的步骤是: 在临时目录中下载新版本 在pipe理员权限下重新启动 重命名旧的exe文件,并从临时目录复制新的exe文件 在非pipe理员权限下重新启动

File Watcher – 获取在Windows中创build文件的进程名称?

有没有一种很好的方法来获取在Windows中创build文件的进程名称? 我有一个Windows 2000 Server上的目录 C:\ WINNT \ Temp用名为: 70618199 21834082 他们总是121,201 KB的大小。 以编程方式我可以“捕获”在这个位置丢弃文件的程序名称或服务名称? 更多信息: 我对此做了更多的研究。 我重命名文件TIFF,并能够打开它。 该机器通过定制的ASP.NET应用程序作为文档search工具。 机器在E:\驱动器上包含大约50,000个TIFF文档。 此机器也运行SQL Server 2000 w /全文索引打开。 全文索引绝不会触及TIFF – 但不应该因为这是SQL对吗? 但是,FTS确实需要启用索引服务。 奇怪的事情这个TIFF似乎是最大的东西服务的Web服务器。 IIS或索引服务是否使用C:\ WINNT \ Temp进行某种caching? 思考? 解决scheme(也许?)这似乎是Microsoft索引服务。 当我closures它时,这些文件都不会在WINNT \ Temp中创build。 它似乎抓住它find的最大的文件并将其复制到WINNT \ Temp。 这很奇怪 当您处理100MB + TIFF文件时,这可能会导致磁盘空间不足。 很烦人。 猜猜我将closures索引服务的“Web”分支。