我似乎完全无法将Windows 7 SDK安装到我的机器上,我在网上找到的唯一解决方案是进行大量的注册表更改.我做到了这一点 - 仍然没有成功.
这是报告的错误:
安装选定的Windows SDK组件时出现问题.
安装"Microsoft Windows SDK for Windows 7"产品时报告了以下错误:有关详细信息,请参阅Samples\Setup\HTML\ConfigDetails.htm文档.
请尝试解决该问题,然后再次启动Windows SDK安装程序.如果您仍然遇到此问题,请访问SDK团队支持页面,网址为http://go.microsoft.com/fwlink/?LinkId=130245.
单击"查看日志"按钮以查看安装日志.
要退出,请单击"完成".
也没有Samples可以引用的目录,SDK支持团队似乎不再存在.
我该如何解决这个问题?
在VS .NET中,当您为项目选择文件夹时,会显示一个看起来像OpenFileDialog或SaveFileDialog的对话框,但设置为仅接受文件夹.自从我看到这个以来,我就想知道它是如何完成的.我知道FolderBrowserDialog,但我从来没有真正喜欢那个对话框.它开始太小,不让我利用能够键入路径.
我几乎可以肯定,现在没有办法从.NET做到这一点,但我也很好奇你是如何从非托管代码中做到这一点的.如果没有从头开始完全重新实现对话框,那么如何修改对话框以获得此行为?
我还要重申,我知道FolderBrowserDialog,但有时我不喜欢使用它,除了真正好奇如何以这种方式配置对话框.告诉我只使用FolderBrowserDialog可以帮助我保持一致的UI体验,但不能满足我的好奇心,所以它不会算作答案.
它也不是特定于Vista的东西; 自从VS .NET 2003以来我一直在看这个对话框,所以在Win2k和WinXP中它是可行的.这不是一个"我想知道正确的方法来做这个"的问题,更多的是"我一直很好奇这个,因为我第一次想在VS 2003中这样做"的问题.我知道Vista的文件对话框有一个选项可以做到这一点,但它一直在XP中工作,所以我知道他们做了一些事情让它工作.特定于Vista的答案不是答案,因为问题上下文中不存在Vista.
更新:我接受了Scott Wisniewski的答案,因为它附带了一个工作样本,但我认为Serge指出对话框定制(这无疑是.NET令人讨厌但它确实有效)和Mark Ransom弄清楚MS 是值得称赞的.可能为此任务滚动了一个自定义对话框.
在Windows平台上编写Objective-C的最佳方法是什么?
Cygwin和gcc?有没有办法可以将它集成到Visual Studio中?
沿着这些方向 - 是否有任何关于如何链接和使用Windows SDK的建议.它是一个不同的野兽,但我知道我可以在Windows DLL中编写汇编和链接,让我可以访问这些调用,但我不知道如何做到这一点,没有谷歌搜索和零碎的方向.
是否有人知道一个好的在线或书籍资源来做或解释这些事情?
我的一个朋友从Facebook下载了一些恶意软件,我很想知道它的作用而不会感染自己.我知道你不能真正反编译.exe,但我至少可以在Assembly中查看它或附加调试器吗?
编辑说它不是.NET可执行文件,没有CLI标头.
如何将我的WPF应用程序带到桌面的前端?到目前为止,我已经尝试过:
SwitchToThisWindow(new WindowInteropHelper(Application.Current.MainWindow).Handle, true);
SetWindowPos(new WindowInteropHelper(Application.Current.MainWindow).Handle, IntPtr.Zero, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
SetForegroundWindow(new WindowInteropHelper(Application.Current.MainWindow).Handle);
Run Code Online (Sandbox Code Playgroud)
这些都没有Marshal.GetLastWin32Error()成功(说这些操作成功完成,每个定义的P/Invoke属性都有SetLastError=true).
如果我创建一个新的空白WPF应用程序,并SwitchToThisWindow使用计时器调用,它完全按预期工作,所以我不知道为什么它不能在我的原始情况下工作.
编辑:我正在与全球热键一起做这个.
DLL文件究竟是如何工作的?似乎有很多它们,但我不知道它们是什么或它们是如何工作的.
那么,与他们的交易是什么?
当连接到当前用户(在我的情况下,支持网络的服务用户)没有权限的网络共享时,必须提供名称和密码.
我知道如何使用Win32函数(WNet*来自的家族mpr.dll),但是想用.Net(2.0)功能.
有哪些选择?
也许更多信息有助于:
我正在学习Win32编程,WinMain原型如下:
int WINAPI WinMain ( HINSTANCE instance, HINSTANCE prev_instance, PSTR cmd_line, int cmd_show )
Run Code Online (Sandbox Code Playgroud)
我很困惑这个WINAPI标识符的用途和发现:
#define WINAPI __stdcall
Run Code Online (Sandbox Code Playgroud)
这是做什么的?在返回类型之后,我对此感到困惑.什么是__stdcall?当返回类型和函数名称之间有什么东西时,它是什么意思?
我正在尝试使用VS express 2010编译旧项目,但是我收到此错误:
致命错误RC1015:无法打开包含文件'afxres.h'.从这段代码
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"
Run Code Online (Sandbox Code Playgroud)
我已经安装了Windows SDK,但没有任何成功.
谢谢!
什么是更好的方式来启动一个线程_beginthread,_beginthreadx或CreateThread?
我试图确定什么是优势/劣势_beginthread,_beginthreadex和CreateThread.所有这些函数都返回一个新创建的线程的线程句柄,我已经知道CreateThread在发生错误时提供了一些额外的信息(可以通过调用来检查GetLastError)......但是当我发现时,我应该考虑哪些事情?我用这些功能?
我正在使用Windows应用程序,因此跨平台兼容性已经不可能了.
我已经浏览了msdn文档,但我无法理解,例如,为什么有人会决定使用_beginthread而不是CreateThread,反之亦然.
干杯!
更新:好的,感谢所有的信息,我也读过几个我不能打电话的地方,WaitForSingleObject()如果我用的话_beginthread(),但是如果我_endthread()在线程中打电话应该不行吗?这有什么交易?
winapi ×10
.net ×3
windows ×3
c ×2
c# ×2
c++ ×2
assembly ×1
cygwin ×1
debugging ×1
decompiling ×1
dll ×1
gcc ×1
networking ×1
objective-c ×1
passwords ×1
pinvoke ×1
stdcall ×1
visual-c++ ×1
wpf ×1