我似乎在安装DirectX SDK时遇到了一些问题.在安装过程中,一切似乎都很顺利,但最后我收到了消息:
安装失败.安装可再发行软件包时遇到错误.请关闭所有打开的程序并再次尝试运行安装程序.如果问题仍然存在,请联系DirectX开发人员支持.
错误代码:S1023
好吧,我已经尝试关闭所有打开的程序并再次安装,但我得到了同样的错误.什么是错误代码S1023?我尝试了谷歌搜索,但发现了许多不同的回答如何处理它,我不知道该怎么做.
我试过查看日志文件C:\Windows\Logs.有2个日志文件,DirectX.log和DirectX_SDK.log.我没有看到任何明显的"错误"或"失败"迹象.
实际上,DirectX.log中的最后一行是:
11/04/10 18:36:27:dsetup32:安装以值0结束=安装成功
有人可以帮忙吗?我正在运行Vista(x64).
我最近为自己买了一台戴尔XPS 64位Vista.Eclipse没有他们的64位版本,但我在论坛上读到他们下载Eclipse并在Vista上使用Java 1.5只有一些问题.我有Java 1.6和Netbeans很容易下载.
如果我现在从Eclipse转向Netbeans,我会注意到的基本/重大差异是什么?
我在Vista 64位中安装了TortoiseHg(Mercurial),当我右键单击文件或文件夹时,上下文菜单没有显示.这个问题有解决方法吗?
有大量的驱动程序和着名的应用程序没有64位.例如,Adobe不为Internet Explorer提供64位Flash播放器插件.正因为如此,即使我运行的是64位Vista,我也必须运行32位IE.Microsoft Office,Visual Studio也不提供64位AFAIK.
现在个人而言,我在使用64位构建应用程序时没有遇到太多问题.我只需记住一些经验法则,例如总是使用SIZE_T而不是UINT32来获取字符串长度等.
所以我的问题是,是什么阻止人们为64位构建?
我在将文件从Windows资源管理器拖到Windows窗体应用程序时遇到问题.
我拖动文本时工作正常,但由于某种原因它无法识别文件.这是我的测试代码:
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_DragDrop(object sender, DragEventArgs e)
{
}
private void Form1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.Text))
{
e.Effect = DragDropEffects.Copy;
}
else if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.None;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
在Form1上将AllowDrop设置为true,正如我所提到的,如果我将文本拖到窗体上,它就可以工作,而不是实际的文件.
我正在使用Vista 64位...不确定这是否是问题的一部分.
我正在努力解决如何从32位应用程序确定64位Windows Vista上64位Program Files目录的位置的问题.
要求SHGetKnownFolderPath(FOLDERID_ProgramFilesX64)不要退货.该MSDN文章KNOWNFOLDERID还指出,与此特定的呼叫FOLDERID_ProgramFilesX64不支持32位应用程序.
我想尽可能避免硬编码"C:\ Program Files"的路径.做一些事情GetWindowsDirectory(),从返回值中提取驱动器并向其添加"\ Program Files"也不具吸引力.
32位应用程序如何从64位Windows Vista正确获取文件夹的位置?
我们的应用程序有一个服务组件,它应该根据来自用户会话的组件的请求启动其他进程.启动的应用程序可以是32位或64位.我们通过CreateProcessAsUser()从启动用户会话进程传入令牌来实现此目的.对于调用CreateProcessAsUser,我们通过CreateEnvironmentBlock()API 创建一个环境块.问题是CreateEnvironmentBlock(),使用用户会话应用程序的令牌,使用ProgramW6432 ="C:\ Program Files(x86)"创建一个块,这对于64位应用程序来说是一个问题.我们需要用适当的值覆盖它.
是否可以在Windows Vista 64位系统上运行32位版本的Visual Studio 2008 Professional?
非常想要获得一个x64 Vista平台,以便能够利用更多的RAM :)
我最近升级到Vista x64,突然之间,任何.NET程序集都没有读取我的machine.config appSettings块.
在configSections之后,在C:\ Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config中的configProtectedData之前,我有:
<appSettings>
<add key="foo" value="blah"/>
</appSettings>
<system.runtime.remoting>
<customErrors mode="Off"/>
</system.runtime.remoting>
Run Code Online (Sandbox Code Playgroud)
不得不通过以管理员身份运行Notepad ++来保存它,因为它被锁定,否则可能是有充分理由的.在SnippetCompiler或VS .NET 2008中运行以下代码:
foreach(var s in ConfigurationManager.AppSettings.AllKeys)
{
Console.WriteLine(s);
}
AppSettingsReader asr = new AppSettingsReader();
Console.WriteLine(asr.GetValue("foo", typeof(string)));
Run Code Online (Sandbox Code Playgroud)
写出没有密钥并因以下异常而失败:
---
The following error occurred while executing the snippet:
System.InvalidOperationException: The key 'foo' does not exist in the appSettings configuration section.
at System.Configuration.AppSettingsReader.GetValue(String key, Type type)
at MyClass.RunSnippet()
at MyClass.Main()
---
Run Code Online (Sandbox Code Playgroud)
我编写的应用程序使用machine.config作为回退,用于找出用户应该在哪个环境中运行,如果在app.config中找不到它,那么我想避免重写我的应用程序来弄清楚应该像2000年和XP一样工作的东西.
我正在更新我的装备,我需要在使用XP x64或使用Vista x64之间做出决定.我做的很少,只是从我的开发人员那里构建产品.其余90%的工作都是通过Google Apps,Skype,Office等完成的......
我想升级到Vista不仅因为我将在DirectX10上运行3x显示器,而且主要是因为iTunes不支持XP x64!
所以,我的问题......
有了关于Vista的所有恐怖故事,具有8GB RAM的Vista Ultimate x64对我的开发机器有用吗?
如果我无法在Vista上开发,我总是可以开启一个VPC进行开发.不是吗?
编辑
我正在使用所有Microsoft开发工具......
我确定软件会运行,我想我不太确定操作系统会足够快,还是足够稳定.
在XP下运行VBA我能够调用ActivateKeyboardLayout将输入语言从英语切换到另一种语言.但是,这在Vista64下不再有效.
有任何建议或解决方法吗?
以前在XP下工作的代码类似于以下内容:
Private Declare Function ActivateKeyboardLayout Lib "user32" ( _
ByVal HKL As Long, ByVal flags As Integer) As Integer
Const aklPUNJABI As Long = &H4460446
ActivateKeyboardLayout aklPUNJABI, 0
Run Code Online (Sandbox Code Playgroud)
有人建议尝试
Public Declare Function ActivateKeyboardLayout Lib "user32" ( _
ByVal nkl As IntPtr, ByVal Flags As uint) As Integer
Run Code Online (Sandbox Code Playgroud)
当我尝试这个时,我收到错误消息:
变量使用Visual Basic中不支持的自动化类型