草庐IT

normalization操作

全部标签

c++ - 跨进程加载 DLL - 如何进行某些操作 "singleton-like"

背景我正在开发一个C++windows应用程序。我的应用程序将打开多个进程。每个进程都会加载一个LoggerDLL,它提供了一个接口(interface)来注册日志事件并决定何时以及如何将日志刷新到文件中。问题假设我在LoggerDLL中定义了一个简单的决定:每次注册100个日志事件时,将它们刷新到一个文件中。如何确保刷新仅由DLL的一个实例执行一次?当DLL跨进程共享并且其中一个操作只需要跨进程执行一次时,最佳实践方法是什么?注意事项定义共享内存至关重要。每个进程都需要知道其他进程的日志事件。因此,我们不能让每个DLL实例都存储自己的日志并分别刷新它们。

r - 编写与操作系统无关的文件路径

我发现自己在Windows和OSX上都使用过一些R文件。在我为此项目创建的几乎所有R文件中,都需要从文件系统导入一些数据。要以适用于两个操作系统(操作系统?)的方式执行此操作,我在大多数文件的顶部都有这样的内容:if(Sys.info()['sysname']=='Windows'){project_path最好不要在每个文件中单独实现它。一个想法是编写一个返回适当路径的函数get_folder_path(),但问题是我必须使用source()导入带有该函数的文件这需要我请求Sys.info()['sysname'],这违背了目的。写一个只有这个功能的包似乎太过分了(虽然我从来没有使用

c# - 多操作系统用户身份验证技术的方法和建议

我正在寻找有关如何验证用户/密码组合以及验证跨多个不同操作系统的组关联的建议。基本上我有一个在MSVisualStudioC#和MonoC#中工作的C#应用程序,我需要向它添加身份验证机制以支持Windows、Linux和MacOSX。对于Windows,我编写了一个快速的C#互操作来使用仅限Windows的LogonUserAPI。这运行良好,但不适用于Windows以外的系统。我的最终目标是让同一组代码在所有平台(Windows、Linux和MacOSX)上运行,尽可能少地依赖操作系统#ifdefing。请注意——我正在拼命尝试使用固有的操作系​​统用户帐户。我不想维护自己的用户帐

c# - 防止 Windows 资源管理器干扰目录操作

有时,运行此代码后不会留下“foo”目录:stringfolder=Path.Combine(Path.GetTempPath(),"foo");if(!Directory.Exists(folder))Directory.CreateDirectory(folder);Process.Start(@"c:\windows\explorer.exe",folder);Thread.Sleep(TimeSpan.FromSeconds(5));Directory.Delete(folder,false);Directory.CreateDirectory(folder);似乎Window

windows - 是否有 git 的设置允许克隆在一个操作系统上使用 http 而在另一个操作系统上使用 ssh?

小问题是否有git的设置允许克隆在一个操作系统上使用http而在另一个操作系统上使用ssh?对于确切的用法:可以在通常使用SSH连接的MacOSX终端上使用http协议(protocol)(在Windows中克隆)背景我有一台MacbookPro,我可以使用MacOSX和Windows7双启动。我有一个共享的express-34卡,我在上面存储了我所有的存储库/工作目录。我使用它,所以我可以从Mac端或Windows端无缝地工作(直到现在)。此时,我无法提交/更新我从Windows克隆/checkout的存储库中的任何更改。值得注意的是,我从Mac克隆的gitrepos在Windows

windows - 以编程方式操作visio格式文件

我想从Visio文件中提取信息并对其进行一些更改(例如使用C++),然后将它们写回?我的问题是:是否可以编程操作visio文件(主要是读写)?如果是这样,任何教程林是首选 最佳答案 读取/写入VisioVSD文件这是一种二进制格式,据我所知,它没有记录。但是,请查看LibreOffice中对阅读VisioVSD文件的支持情况。读取/写入VisioVDX文件这些只是VSD文件的XML等价物,如果您熟悉Visio,则读写起来相对简单。对于诸如查找和操作所有形状自定义属性或格式化之类的简单任务,将XML加载到DOM中、处理它然后将其保存回

java - 在 Win XP 上使用 BufferedReader 双换行,但在其他操作系统上没有...相同的代码

我有一些代码执行运行时执行并解析结果。在linux和Windows7上,代码可以很好地解析系统命令,但在WinXP上,我在包含内容的每一行之间得到一个空行("")。任何想法可能会发生在这里?Processoutput=Runtime.getRuntime().exec(command);BufferedReaderbr=newBufferedReader(newInputStreamReader(output.getInputStream()));while((line=br.readLine())!=null){//dostuff} 最佳答案

windows - Wix 自定义操作以删除使用 INF 文件安装的旧版本

我正在开发一个使用WIX来安装应用程序的项目。其中一项要求是在安装当前版本之前删除旧版本。旧版本不是基于MSI,它是使用SetupApi(依赖于inf文件)创建的。我想这可以通过自定义操作来实现,逻辑如下:在HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%NAME%中查找“旧”版本,如果可能的话提取UninstallString值如果设置了该值,运行将执行该命令的自定义操作,通常它是一个字符串,如RunDll32advpack.dll,LaunchINFSectionC:\PROGRA~1\PROGRAM\file.i

ruby - 在 Windows 操作系统中使用 Headless 的 Capybara

我正在使用headlessgem来运行Capybara,而无需在Linux中打开浏览器。headless使用xvfb。Windows操作系统或Mac是否有类似的东西? 最佳答案 capybara-webkit和poltergeist在mac上运行得很好。闹鬼使用phantomjs做繁重的工作,这在Windows上可用,因此poltergeist可能会在那里工作,尽管它的文档说Windows不受支持。Capybara-webkit将32位窗口列为社区支持的平台,因此它应该可以在那里工作。

c# - 在对另一个窗口执行某些操作后更新 wpf 父窗口

我有一个名为usermanagement的wpf窗口,有一个显示所有用户的列表框,我在usermanagement窗口中有一个名为adduser的按钮,当我单击那个名为adduser的新窗口时,在这个窗口中有输入字段添加新用户,当我保存数据时我需要什么,这个添加用户窗口关闭然后用户管理窗口更新列表框,意味着用户再次更新(新添加的用户应该在添加后显示在那里)。此刻我需要再次打开用户管理窗Eloquent能看到新添加的用户。谢谢!下面是代码usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Tex