Articles of c + +

如何在互斥量中进行循环typessorting?

#include "stdafx.h" #include <Windows.h> #include <conio.h> #include <fstream> #include <iostream> using namespace std; int main ( int, char ** ) { HANDLE mutex = CreateMutex(NULL, FALSE, L"PRV"); for (int j=0; j < 100; ++j) { WaitForSingleObject(mutex, INFINITE); ofstream file("c:\\write.txt", ios::app); for (int i=0; i < 10; ++i) { file << 1; } ReleaseMutex(mutex); Sleep(100); } […]

在Windows XP上获取物理磁盘序列号不起作用

我试图获得物理磁盘序列号使用C#和WMI var searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia"); foreach (ManagementObject mo in searcher.Get()) { Console.WriteLine("Serial: {0}", mo["SerialNumber"]); } 此代码显示所有的硬盘驱动器和闪存可移动棒的序列号,但无法在Windows XP上获得闪存可移动磁盘,并为可移动磁盘给我空,但正确获得硬盘序列号。 任何想法有什么不对? 我的想法是,Windows XP需要更新,任何人都知道什么是更新需要? 我需要特定的更新,以包括它与我的软件。 为什么会发生这种情况?

访问站点时Windowslogin提示

使用本地主机以外的主机访问IIS上的站点时,我收到Windowslogin提示。 例如, http://localhost/mysite — works http://ipaddresss/mysite — login prompt如果我在Web应用程序的IIS设置中启用匿名访问,提示消失,我可以访问该网站罚款。 我也启用了Windows身份validation。 我希望能够禁用匿名访问,而无需获得Windowslogin提示。 Windows IIS 7.5 Windows Server 2008 R2 ASP.NET 4.5 MVC Web应用程序 这似乎不是浏览器相关的。 无论是IE还是Firefox,我都会得到相同的行为。

从表中selectsql ce服务器返回0之间的date

我正在开发一个Windows窗体应用程序在C#中。 我有一个查询,我想从dateselectdate。 结果总是0.我的DB是一个.sdf文件,在我的表中我有一个date时间字段来存储订单dateDateTime.Now,我的PCdate格式是10.12.2014,任何人可以请帮我解释这是为什么hapening ..! 有没有更好的文件格式来保存本地? 该应用程序将被安装在几台PC上,将date时间格式成为一个问题。 你的帮助非常appricaitaed ..检查请提供一些代码。 internal static DataTable SearchItemsInOrders(string searchWord, string table, int minValue, int maxValue, out DataTable dtTable, DateTime dateFrom, DateTime dateTo) { string commandText = "select A.ItemName, B.Site, B.OrderId, A.Qty, B.Requester, B.Receiver, B.Date "; commandText += "From tblOrderLine AS A Inner join tblOrder As B on A.OrderId=B.OrderId "; commandText += […]

C#运行带有空格参数的batch file

我需要运行batch file,其中有path(可以包含空格)作为参数。 batch file非常简单: 回声 echo%1> echotest.txt 我用来运行这个batch file的Csharp代码: ProcessStartInfo info = new ProcessStartInfo(); info.UserName = KIM_USER; info.Password = ConvertToSecureString(KIM_USER_PASSWORD); info.FileName = theTask.Path; info.Arguments = "\"" + TranslateParameter(theTask.Parameter) + "\""; info.Domain = Environment.MachineName; info.WorkingDirectory = Path.GetDirectoryName(theTask.Path); info.UseShellExecute = false; info.CreateNoWindow = true; Process batProcess = Process.Start(info); batProcess.WaitForExit(); 基本上参数来自例如{Test_Path},这是在TranslateParameter转换为真正的path,例如:D:\ Test Path \(包含空格) 这对我不起作用,它每次都返回我的退出代码1。 如果我从info.Arguments中删除\“,它的工作原理,但在输出文件只是D:\ Test 有什么build议么? […]

在button点击之前存储滑块值

在button_click我必须静音或取消静音。 它工作正常,但我想设置滑块值取消静音之前,它是静音,而不是固定的0.7。 private void btnMute_Click(object sender, RoutedEventArgs e) { if (slider.Value <= 0.0) { slider.Value = 0.7; btnMute.Content = "Mute"; } if (slider.Value > 0.0) { slider.Value = 0.0; btnMute.Content = " UnMute"; } }

在Windows上修改堆栈,TIB和exception

我的问题的由来源于想要提供在Windows上支持用户提供堆栈的pthreads的实现。 具体来说, pthread_attr_setstack应该做一些有意义的事情。 我的实际需求比这个多一点,但是这对于这个post来说足够好了。 没有用于在光纤或线程API中提供堆栈的公共Win API。 我search了偷偷摸摸的后门,解决方法和黑客,没有任何进展。 实际上,我看到了winpthread源代码的灵感,忽略了任何提供给pthread_attr_setstack堆栈。 相反,我尝试了下面的“解决scheme”,看看它是否会工作。 我使用ConvertThreadToFiber , CreateFiberEx和SwitchToFiber的常用组合创build一个光纤。 在CreateFiberEx我提供了最小的堆栈大小。 在光纤的入口点,然后为堆栈分配内存,相应地更改TIB字段:“Stack Base”和“Stack Limit”(请参见http://en.wikipedia.org/wiki/Win32_Thread_Information_Block ),然后设置ESP到我的堆栈的高地址。 (在现实世界的情况下,我会设置堆栈比这更好,并改变EIP,以便这一步的行为更像POSIXfunction的swapcontext ,但你明白了)。 如果我在这个不同的堆栈上做任何操作系统调用,那么我几乎搞砸了(例如printf死亡)。 然而,这对我来说不是问题。 我可以确保我在自定义堆栈上从不确定调用(因此为什么我说我的实际需求有一点涉及)。 除了…我需要例外的工作。 而他们不! 具体来说,如果我尝试抛出并捕获exception,我修改的堆栈,然后我得到一个断言 未处理的exception在0xXXXXXXXX …. 所以我的(模糊)问题是,有没有人有任何洞察力,如何exception和自定义堆栈可能不是很好地一起玩? 我明白,这是完全不受支持的,除了零响应或“走开”以外,可以愉快地开展工作。 事实上,我已经决定了,我需要一个不同的解决scheme,尽pipe这涉及妥协,我可能会使用一个。 然而,好奇心越来越好,所以我想知道为什么这不起作用。 在一个相关的笔记,我想知道Cygwin如何处理这个ucontext。 源代码http://szupervigyor.ddsi.hu/source/in/openjdk-6-6b18-1.8.13/cacao-0.99.4/src/vm/jit/i386/cygwin/ucontext.c使用GetThreadContext / SetThreadContext实施ucontext。 但是,从实验中我看到,当从新的上下文中抛出exception时,这也失败了。 实际上, SetThreadContext调用甚至不更新TIB块! 编辑(根据@avakar的答案) 下面的代码与您的代码非常相似,performance出同样的错误。 不同的是,我不启动第二个线程暂停,但暂停它,然后尝试更改上下文。 这段代码展示了我在描述try-catch块在foo 。 也许这根本不合法。 值得注意的是,在这种情况下,当modifyThreadContext时,TIB的ExceptionList成员是一个有效的指针,而在你的例子中它是-1。 手动编辑这没有帮助。 正如我对你的回答评论所述。 这不是我所需要的。 我想从我目前的线程切换上下文。 但是, SetThreadContext的文档警告不要在活动线程上调用它。 所以我猜如果下面的代码不起作用,那么我没有机会使它在单个线程上工作。 namespace { HANDLE […]

SDL导致CEF3产生额外的窗口

我试图让CEF3(Chromium Embedded Framework: https ://bitbucket.org/chromiumembedded/cef)与SDL(Simple DirectMedia Layer: https ://www.libsdl.org/)一起工作。 我对这两个库的使用意图是使用SDL打开一个窗口,从中接收事件并渲染OpenGLgraphics(与其他库(如GLEW)结合使用)。 我想使用CEF3为用户界面提供graphics元素,然后通过OpenGL纹理将其显示在屏幕上。 所有这些工作,我可以打开SDL窗口,处理事件,我可以绘制OpenGL纹理,并从CEF3中的屏幕渲染获得OpenGL兼容的数据。 问题是,如果我在testing环境中一起运行SDL和CEF3,CEF3会产生多个附加窗口。 这是我用于CEF3的代码。 void Example::webTest() { //Args CefMainArgs cefArgs; //Settings CefSettings cefSettings; cefSettings.pack_loading_disabled = true; cefSettings.windowless_rendering_enabled = true; //Initialize CefInitialize(cefArgs, cefSettings, nullptr, nullptr); //Render Handler renderHandler = new InterfaceRenderHandler(); //Window Info CefWindowInfo cefWindowInfo; //cefWindowInfo.SetAsWindowless(0, true); cefWindowInfo.windowless_rendering_enabled = true; cefWindowInfo.transparent_painting_enabled = true; //Interface Browser CefRefPtr<InterfaceBrowserClient> […]

如何在阅读视图中打开Web视图? UWP

我有一个FeedReader应用程序,我希望我的页面在阅读视图(IE 11,EDGEfunction)中打开。例如,Windows 10中的新闻应用程序使用此function,所有新闻描述都在阅读视图中。 可能吗 ? 阅读视图示例(屏幕截图): https://social.msdn.microsoft.com/Forums/getfile/733596 新闻应用阅读视图示例(截图): https://social.msdn.microsoft.com/Forums/getfile/733599 提前致谢 。

删除ListView项目上的button

我开始为UWP开发。 我试图创build一个ListView填充x:bind 。 现在我想在所有单个项目上创build一个button来删除它们。 像Windows 10邮件: 我创造了这个: <ListView x:Name="listActivity" ItemsSource="{x:Bind list}" Grid.Column="0" Header="Activity List" HorizontalAlignment="Center" Width="auto" IsItemClickEnabled="True" ItemClick="showDel"> <ListView.ItemTemplate> <DataTemplate x:DataType="vm:Activity"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="3*"/> <ColumnDefinition Width="1*"/> </Grid.ColumnDefinitions> <TextBlock x:Name="txt" Text="{x:Bind name}" Grid.Column="0"/> <Button x:Name="delItem" Click="delActivity" Grid.Column="1" Visibility="Collapsed" Background="Transparent" Margin="100, 0, 0, 0"> <SymbolIcon Symbol="Delete"/> </Button> </Grid> </DataTemplate> </ListView.ItemTemplate> </ListView> 我想改变delItembutton的visibility ,但是从C#我不能使用set Name来调用它。 我怎么能做到这一点?