草庐IT

advanced-programming-in-unix

全部标签

c++ - MinGW 可以毫不费力地复制大多数 unix 系统调用吗?

背景:我正在移植一个专门为unix系统用C++开发的大型项目,以便与Windows兼容,从而为最终的Windows分发让路。我在Windows开发方面没有太多经验,但我想在高级开发人员进入并接管之前,尽我所能,把事情做好。问题:一段时间以来,我一直在查找软件中使用的所有unix/posix调用的Windows版本,大部分来自dirent.h、unistd.h,还有一些在sys下,例如sys/stat.h或sys/types.h。尽管修改程序以采用新的Win32API调用约定和返回类型(有时是所有新函数)需要大量工作,但它最终可能会起作用。但我经常看到这种情况出现,事实上MinGW,我猜

windows - WIX 烧录 : MSI in Chain is Not Installed

我有一个WIXBurnBootstapper,但遇到了问题。在某些计算机上,它会安装链中的两个MSI文件。但是大多数时候它会跳过Chain中的第一个项目,就像它甚至不存在一样,有什么想法吗?具体来说,它不会安装IntelSDK。日志文件(有2个):LogFileLongLogFile(Verbose) 最佳答案 它认为它已经安装了:i101:Detectedpackage:IntelSDK,state:Present,cached:Complete如果它被检测为Present,它不会安装包。

c++ - Cygwin + windows 10 错误 "sigfillset was not declared in the scope"

我正在尝试使用Cygwin在Windows上编译代码。当前代码在Linux上编译成功。以下是我在Windows10上编译代码所遵循的步骤。1)我在我的Windows10机器上安装了Cygwin。2)从cygwin的安装包中安装了gcc、g++、boost。3)在环境变量中添加了cygwin路径。当我编译代码时,它会抛出以下错误。usr/include/boost/asio/detail/posix_signal_blocker.hpp:Inconstructor‘boost::asio::detail::posix_signal_blocker::posix_signal_blocke

Windows 命令行 : automatically type in a command from . cmd 文件

好的,我有这样一个批处理文件:@titleRUBY;)@setPATH=D:\Programming\Ruby22-x64\bin;%PATH%@callcmd/Kcd/DE:\RubyProgramming我用它来促进运行脚本,而无需每次都导航到文件夹。问题是,我通常会在任何给定时间为我正在处理的给定程序运行同一个命令数百次。例如:rubyrubyprogram.rbinputfile.txtoutputfile.xmlmiscargument有没有办法制作这样的批处理文件,在运行时输入命令?不是执行,只是输入,这样我就可以按回车键执行它,然后使用↑向上箭头在cmd中再次使用它?我一

创建 .mid 文件 : writing a '\n' causes '\r\n' in Windows

我通过将字节写入文件并将其另存为.midi创建了一个.mid文件。我可以运行它并且它可以工作,但在某些特殊情况下它不会。如果我写入一个包含\n的字节(ASCII10),那么它将写入2个字节\r\n,这使得.mid不可运行。(这对于Windows机器来说是正常的,但在我的情况下并不理想。)编写\n的示例可能是在选择由\n表示的key时>。是否有一种解决方法来编写\n而不是\r\n或其他方法来确保写入的字节是ASCII10在Windows机器上?谢谢! 最佳答案 在linux/unix上,创建文件时指定"wb"还是"w"都没有关系。但是

Windows 10 powershell ise 压缩归档文件在 root .in .zip

使用Windows(10)powerShellise,是否可以压缩文件夹的内容,就像使用命令“Compress-Archive”一样,但不能将其封装在zip的根文件夹中?(获取压缩包根目录下的文件)例如:-myFolder{index.html,mycss.css,myConn.php}使用的命令:-DestinationPathC:\wamp64\www\myFolder\myZip.zip-PathC:\wamp64\www\myFolder实际结果在myZip.zip中:{-myFolder{index.html,mycss.css,myConn.php}}myZip.zip中的

windows - 为什么我的文件需要 dos2unix?虽然只在 eclipse 中

当我在eclipse中打开一个文件时,它显示不正确的行间距,显示每行之间有一个额外的换行符。当我用记事本或写字板打开文件时,它不会显示这些只有eclipse显示的额外换行符。我如何让Eclipse在没有换行符的情况下读取这些文件,例如记事本和写字板?-edit:我的所有文件都没有这个问题,但只有少数几个我进行了本地更改>将它们上传到我们的太阳站>然后将这些文件拉回到我的本地工作站以供将来修改。 最佳答案 Eclipse应该有一个File->ConvertLineDelimitersTo...选项可以为您纠正这个问题。(如果它对您的文

windows - 将 32 位应用程序安装到 C :\Program Files\instead of the C:\Program Files(x86)\? 中会产生什么负面影响

将遗留32位应用程序安装到C:\ProgramFiles而不是C:\ProgramFiles(x86)会产生什么负面影响? 最佳答案 根据您的应用程序,它可能会导致问题。例如,如果您的应用查询ProgramFiles文件夹,WOW仿真层将返回ProgramFiles(x86)。因此,如果您尝试查找与安装位置相关的内容,您将会失败。 关于windows-将32位应用程序安装到C:\ProgramFiles\insteadoftheC:\ProgramFiles(x86)\?中会产生什么负面

c# - 如何为 .net Windows 应用程序添加一个条目到 'add/remove programs'

如何为.netWindows应用程序添加一个条目到“添加/删除程序”? 最佳答案 使用部署项目创建MSI文件并让用户执行该文件而不是xcopy部署。 关于c#-如何为.netWindows应用程序添加一个条目到'add/removeprograms',我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1018634/

windows - 缓冲区溢出 - Windows 与 Unix

我正在尝试找出Windows和Unix中缓冲区溢出之间的安全问题。据我了解,缓冲区溢出Windowshack无法在Unix中实现,因为每个进程都有自己的内存空间。这是否意味着Windows中的进程共享内存空间? 最佳答案 共享内存空间不是大多数缓冲区溢出攻击的原因。自Win3.0(或运行在80286上的Win3.1)以来,Windows没有共享内存,因此自从Windows上次发布支持共享内存模型以来已经过去了很长时间,将近20年。缓冲区溢出允许攻击者更改正在被利用的进程中的内存。通过这样做,攻击者旨在使用目标进程的特权级别执行系统操