Articles of Windows

当使用Windows线程时,我可以指定一个缓冲区用于线程的堆栈,类似于pthread_attr_setstack()?

pthreads允许用户提供一大块内存用于线程堆栈: size_t stack_size = 1024*1024*4; void *stack = malloc( stack_size ); pthread_attr_t attributes; pthread_attr_init( &attributes ); pthread_attr_setstack( &attributes, stack, stack_size ); pthread_t thread_id; pthread_create( &thread_id, &attributes, worker_function, NULL Windows线程是否提供类似的function? CreateThread的第二个参数允许指定堆栈的最小大小,但是我看不到指定要使用的缓冲区地址的方法。

使用脚本将文件从UNIX复制到Windows

我想编写一个脚本来自动执行我每天手动执行的任务。 这个任务需要我使用WinSCP从UNIX服务器(Solaris)下载一些文件到我的桌面(Windows XP)。 有什么办法将文件从UNIX服务器的path复制/移动到我的Windows XP PC中使用Python或shell脚本的path?

在batch file中使用空格?

我需要运行batch file来设置许多文件夹的权限。 我们有以下文件夹结构 然后在每个客户端文件夹中,我们有几个子文件夹,例如Folder1 \ Client1 \ SubFolder1 Folder1 \ Client1 \ SubFolder2 Folder1 \ Client1 \ SubFolder3 我需要重置上面示例中所有子文件夹的权限,并在名为permissions.bat的文件中包含以下代码 for /f %%g in ('dir "f:\temp\" /ad /b') do for /f %%a in ('dir %%~fg /ad /b') do icacls "%%~fg\%%a" /grant:r domain\mygroup:(OI)(CI)M 这工作正常,但对于包含空格的客户端和子文件夹不起作用。 例如 Folder1\Client1\Sub Folder 1 会显示为 Folder1\Client1\Sub\ 紧跟着系统找不到指定的文件错误。 有任何想法吗? 顺便说一下,这是在2003服务器上运行。

从Windows构buildR源代码

C:\ Work \ R包含R-3.1.1.tar.gz文件 我从以下命令在Windows 8中构buildR源(R-3.1.1) cd C:\Work\R tar –no-same-owner -xf R-3.1.1.tar.gz cd C:\Work\R\R-3.1.1\src\gnuwin32\ make all recommended 将以下path添加到环境variablesC:\ Work \ R \ R-3.1.1 \ bin \ i386 在命令promt中inputR.exe 我得到以下错误 致命错误无法打开基础包 系统信息 Windows 8,64位操作系统,基于x64的处理器如何解决此错误?

读取内存时出现访问冲突

背景 我正在用Visual Studio 2013 Community Edition编写命令行C ++程序。 它通过LDAP连接到Active Directory服务器,并在一些属性(例如:办公地点,部门)中检索唯一值列表。 问题 该程序编译好,但我遇到一个内存访问问题,当我运行它: Unhandled exception at 0x74EDC6B1 (Wldap32.dll) in LdapSearchResultTest1.exe: 0xC0000005: Access violation reading location 0xCCCCCCCC. 这是我第一次使用C ++与外部库,所以我不知道如何甚至接近debugging(通常我为Android写Java)。 我花了一天的更好的时间来看看这个问题,并根据类似问题的答案尝试一些想法,但是我仍然无法解决这个问题。 确切的问题在于这个函数调用的最后一个参数: // Do the search int searchReturnCode = ldap_search_s( ldapSession, &searchBase[0], LDAP_SCOPE_SUBTREE, filter, pAttributes, 0, &pSearchResults); // Error is here 我的代码 我的代码是基于MSDN网站的一个例子,我已经在代码中复制了这个例子。 这是一个certificate这个问题的SSCCE : #include<iostream> #include<Windows.h> #include<Winldap.h> #include<WinBer.h> […]

testingWindows应用程序的运行状况

我有几个应用程序是我们工作室的各种开发人员使用的一套工具的一部分。 这些应用程序主要是打开DOS cmd shell的命令行应用程序。 这些应用程序反过来启动一个GUI应用程序,跟踪这些命令行应用程序的输出和状态(通过套接字)。 命令行应用程序可以在用户login时启动,当他们的工作站被locking(他们触发一个batch file,然后立即locking他们的工作),并当他们注销(通过计划的任务)。 我所遇到的问题是最后两种情况。 如果这些应用程序中的任何一个在用户被locking或注销时触发,这些命令将产生跟踪输出/状态的GUI窗口。 这很好,但是说用户的工作站被locking – 当他们解锁工作站时,GUI不可见。 它正在运行任务列表,但不可见。 下一次这些用户运行一些命令行应用程序时,GUI不会启动(因为它已经在运行),但是由于在桌面上不可见,所以用户看不到任何输出。 我正在寻找的是从我的命令行应用程序中分辨出是否在locking的工作站后面运行或用户注销(通过计划的任务)的方式 – 基本上它们在没有用户桌面的情况下运行。 如果我可以说,那么我可以简单地启动我们的GUI,并可以防止很多问题。 我需要testing的这些应用程序是C / C ++ Windows应用程序。 我希望这是有道理的。

AS3中的LocalConnection如何通信?

我即将开始在两个SWF中使用LocalConnections来让他们相互交谈。 但是,在我走下这条路之前,我需要确保它不会导致系统出现任何popup窗口和确认对话框。 如果我使用本地套接字服务器,则会导致Windows防火墙和其他许多人将其标记并需要确认。 所以,如果LocalConnection使用套接字,那么我不能使用它。 但我已经通过一些networkingsearch阅读,它实际上使用共享内存工作,这不会导致任何防火墙抱怨。 任何使用LocalConnection的人都可以确认或否认会导致主机操作系统出现问题吗? 特别是与Win7 / Vista。

如何在windows上将rubygems平台从x86-mingw32更改为x86-mswin32-60

我正在做一些在Windows中的Ruby脚本,其中涉及打开和closures浏览器。 为此,我需要一些特殊的gem来接口到本地的Windows系统调用。 但是当我尝试 > gem install sys-proctable ,它屈服了 ERROR: Could not find a valid gem ´sys-proctable´ (>= 0), here is why: Found sys-proctable (0.9.0), but was for platforms x86-darwin-8 ,x86-freebsd-7 ,x86-solaris-2.10 ,x86-linux ,x86-mswin32-60 问题是我的gem安装没有x86-mswin32-60 ruby​​gems平台 > gem environment RubyGems Environment: – RUBYGEMS VERSION: 1.3.7 – RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [i386-mingw32] … – RUBYGEMS […]

客户在使用我们的应用程序时得到R6002运行时错误

我们有一个使用Visual C ++ 2005构build的应用程序,有一个客户报告说他得到了这个运行时错误: Microsoft Visual C++ Runtime Library Runtime Error! Program: [path to our application] R6002 – floating point support not loaded 根据微软( 在这个页面上 ),可能的原因是: 该机器没有FPU(不是这种情况:客户有一个Intel Core 2 Duo CPU,自从486SX以来我没有看到没有FPU的机器) printf或scanf与浮点格式规范一起使用,但程序中没有FPvariables(我们的应用程序包含FPvariables,但是我确信我们从不使用printf或scanf与FP格式) 与FORTRAN(在我们的应用程序中没有FORTRAN代码) 而且,在使用我们的应用程序时(特别是在他们select要处理的文件之后),而不是在应用程序启动时发生错误。 我意识到这是一个远射,但是有没有人在任何地方见过这样的事情? 谷歌是相当无益的(有很多没有支持的声称,这是一种病毒感染的症状,但除此之外很less)。 任何build议感激地收到:-)

在Windows上自我更新的exe

我正在尝试创build一个脚本,它将在服务器上检测到新版本时“自动更新”。 最初,我的想法是,当检测到新版本时,下载文件,然后启动一个DOSbatch file,用新文件覆盖原来的exe文件。 我想,我可以使用sytem(开始update.bat),然后立即退出0; .bat文件等待几秒钟,然后尝试删除旧的exe文件。 这个失败了,我猜是因为即使在使用系统(start …)时,新的“进程”实际上是一样的进程,这是正确的吗? 有没有办法从Windows启动一个全新的进程,这将允许我删除.exe? 还是有不同的方法会更好? 谢谢,Eric Seifert