小编Jas*_*son的帖子

完整的WiX 3.6软件包示例引导.NET 4客户端配置文件

我试图构建一个WiX 3.6安装脚本的工作示例.我们目前使用WiX 3.5,现在我们想开始安装.NET 4 Client Profile框架作为我们的脚本创建的MSI文件的先决条件product.wxs.WiX 3.6似乎是最好的前进方式.

是否有一个如何使用WiX 3.6执行此操作的功能示例?

这是我们今天使用的3.5脚本:

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">

    <!-- Version change handling -->
    <?define UpgradeCode="###############################"?>
    <?ifdef env.BUILD_NUMBER ?>
    <?define ProductVersion="2.6.$(env.BUILD_NUMBER).0"?>
    <?else ?>
    <?define ProductVersion="2.6.0.0"?>
    <?endif ?>

    <Product Id="*" Name="###############################" Language="1033" Version="$(var.ProductVersion)" Manufacturer="###############################" UpgradeCode="$(var.UpgradeCode)">
        <Package InstallerVersion="200" Compressed="yes" />

        <!-- Custom actions for this installer -->
        <Binary Id="###############################.dll" SourceFile="..\..\Libraries\###############################.CA.dll" />

        <!-- Kill ##### before installation begins -->
        <CustomAction Id="Kill#####ActionId" BinaryKey="###############################.dll" DllEntry="Kill#####Action" Execute="immediate" Impersonate="yes" Return="check" />
        <InstallExecuteSequence>
            <Custom Action="Kill#####ActionId" …
Run Code Online (Sandbox Code Playgroud)

bootstrapping wix wix3.6 .net-client-profile

26
推荐指数
1
解决办法
4万
查看次数

在安装.Net服务期间,创建自定义事件日志和事件源的最可靠方法是什么

我在安装.Net Windows服务期间无法可靠地创建/删除事件源.

这是我的ProjectInstaller类的代码:

// Create Process Installer
ServiceProcessInstaller spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;

// Create Service
ServiceInstaller si = new ServiceInstaller();
si.ServiceName = Facade.GetServiceName();
si.Description = "Processes ...";
si.DisplayName = "Auto Checkout";
si.StartType = ServiceStartMode.Automatic;

// Remove Event Source if already there
if (EventLog.SourceExists("AutoCheckout"))
    EventLog.DeleteEventSource("AutoCheckout");

// Create Event Source and Event Log     
EventLogInstaller log = new EventLogInstaller();
log.Source = "AutoCheckout";
log.Log = "AutoCheckoutLog";

Installers.AddRange(new Installer[] { spi, si, log });
Run Code Online (Sandbox Code Playgroud)

引用的facade方法只返回日志,服务等名称的字符串.

此代码大部分时间都有效,但最近安装后我开始在应用程序日志中显示日志条目而不是自定义日志.并且日志中也存在以下错误:

无法找到源(AutoCheckout)中事件ID(0)的说明.本地计算机可能没有必要的注册表信息或消息DLL文件来显示来自远程计算机的消息.您可以使用/ AUXSOURCE =标志来检索此描述; 请参阅帮助和支持以获取详细信

由于某种原因,它在卸载期间没有正确删除源,或者在安装期间没有创建它.

任何有关最佳实践的帮助表示赞赏. …

.net c# windows-services eventlog-source event-log

25
推荐指数
3
解决办法
3万
查看次数

WPF TextBox在Window窗体中的ElementHost中不接受输入

我们正在开发WPF中的UI控件,以便在现有的Windows Forms/MFC应用程序引擎(Rhino 3D)中使用.

应用程序引擎公开了创建"Dockbar"的能力,它实际上允许您将Windows窗体控件放在可以停靠到Engines接口的子窗口中.

我试图将一个简单的WPF TextBox放在一个ElementHost控件中,该控件被添加到Dockbar中.乍一看似乎工作得很好; 但在尝试输入TextBox后,只有某些序列实际显示在TextBox中.该DELETE,BACKSPACE,COPY,PASTE,并选择文本的工作.如果您键入AZ,1-9等,则这些键不会显示.

我有SCOURED网,并听说过,ElementHost.EnableModelessKeyboardInterop()但这仅适用于从表单创建的WPF Windows.我只创建WPF UserControls并在ElementHost控件中托管它们.

我看到一篇关于Dispatcher.Run()的帖子,它有点工作但是打破了表单的其余部分:

System.Windows.Threading.Dispatcher.Run();
Run Code Online (Sandbox Code Playgroud)

PreviewKeyUp,PreviewKeyDown,KEYUP的KeyDown事件的所有火上的文本框,但很可惜没有文字在文本框中显示出来.

我对Windows消息了解不多,但是使用WinSpector我注意到没有WM_GETTEXT消息来自TextBox(如果它们甚至应该是我不知道的话).

我还创建了一个新的Windows窗体项目,并在那里做了同样的事情,它工作正常,所以它必须是如何在Rhino 3D引擎中创建和停靠窗口的问题.

以下是不起作用的示例代码:

ElementHost el = new ElementHost();
System.Windows.Controls.TextBox t = new System.Windows.Controls.TextBox();
t.Width = 100;
t.Text = "TEST";
el.Child = t;
panel1.Controls.Add(el);
Run Code Online (Sandbox Code Playgroud)

wpf interop textbox elementhost

20
推荐指数
4
解决办法
1万
查看次数

切换到WPF应用程序的设计视图时,Visual Studio 2008 SP1崩溃的原因

在开发没有Source Control的WPF应用程序之后,我决定将解决方案添加到TFS.

每当我打开设计视图中的主窗口.xaml文件时,Visual Studio将会消失,并在应用程序事件日志中记录以下事件:

.NET运行时版本2.0.50727.3053 - 致命执行引擎错误(7A035E00)(80131506)

有关详细信息,请参阅http://go.microsoft.com/fwlink/events.asp上的"帮助和支持中心" .

wpf powercommands visual-studio-2008

18
推荐指数
3
解决办法
9609
查看次数

如何对IIS 6托管的WCF服务进行负载均衡?

我们使用BigIP在两个IIS服务器之间进行负载平衡.我们最近将IIS 6托管的WCF服务部署到这两台Windows Server 2003R2服务器上.

每个服务器配置有两个主机头:一个用于负载平衡器地址,另一个主机头仅指向该服务器.这样我们就可以引用负载均衡组中的特定服务器进行调试.

所以当我们运行时我们立刻得到了错误:

此集合已包含方案http的地址.此集合中每个方案最多只能有一个地址.参数名称:item

我做了一些研究,我们可以实现一个过滤器来告诉它忽略其中一个主机,但是我们无法从该地址访问服务器.

<serviceHostingEnvironment>
    <baseAddressPrefixFilters>
        <add prefix="http://domain.com:80"/>
    </baseAddressPrefixFilters>
</serviceHostingEnvironment>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,什么是最佳解决方案,允许我们通过http://domain.com/service.svchttp://server1.domain.com/service.svc访问 WCF服务?

如果我们应该像某些网站建议的那样创建我们自己的ServiceFactory,那么有没有人有任何示例代码?

任何帮助深表感谢.

编辑:如果可能的话,我们需要能够从两个地址中的任何一个访问WCF服务.

谢谢.

wcf iis-6 hostheaders

7
推荐指数
1
解决办法
4431
查看次数

在Visual Studio 2008数据库版中进行架构比较时,如何更改文本的颜色?

我试图找出如何修改在两个数据库之间进行比较后出现Colors/Fonts的Schema Compare" Object Definitions"窗口中使用的.

我有的配色方案是不可读的,但我似乎无法在Tools/Options/Environment/FontsColors对话框中找到正确的设置.

谢谢你的帮助.

贾森

configuration color-scheme colors visual-studio-2008

5
推荐指数
1
解决办法
187
查看次数

如何使用 Blend 或 VS Designer 编辑 WPF PropertyGrid 的默认样式模板

我在我的项目中使用来自 NuGet的Extended WPF Toolkit Community Edition v2.6,但我不知道我是否应该做更多的事情来允许我设置主题或自定义控件模板。

在要求 Designer/Blend 为 PropertyGrid 控件创建现有默认模板的副本后,UI 已损坏。模板看起来正确,但在设计时或运行时不再起作用。

在此处输入图片说明

选择将默认模板复制到新的样式后:

图片

有没有一种简单的方法来编辑此控件的内置样式?我真的只是想覆盖 PropertyGrid 的编辑器/标签的前景色/背景色。

我在 XAML 中尝试了一些手动戳,但成功有限:

<Style TargetType="{x:Type xctk:DropDownButton}">
  <Setter Property="Background" Value="Black"/>
  <Setter Property="Foreground" Value="White"/>
</Style>
<Style TargetType="{x:Type xctk:CustomPropertyItem}">
  <Setter Property="Background" Value="Black"/>
  <Setter Property="Foreground" Value="White"/>
</Style>
<Style TargetType="{x:Type xctk:PropertyGridEditorCollectionControl}">
  <Setter Property="Background" Value="Black"/>
  <Setter Property="Foreground" Value="White"/>
</Style>
Run Code Online (Sandbox Code Playgroud)

尝试创建属性容器样式时,通过复制默认值,我得到“复制样式失败”。VS Designer 或 Blend 中的错误。

在此处输入图片说明

结果如下:

复制样式错误

我已经尝试手动包含 Xceed Toolkit 程序集中的 generic.xaml,但它没有解决问题。

我尝试了两种引用资源的方法:

<ResourceDictionary Source="/Xceed.Wpf.Toolkit;component/themes/generic.xaml" />

<ResourceDictionary Source="pack://application:,,,/Xceed.Wpf.Toolkit;component/Themes/generic.xaml">
Run Code Online (Sandbox Code Playgroud)

这是我尝试设置 PropertyContainerStyle 时来自设计器的堆栈跟踪:

堆栈跟踪

wpf propertygrid expression-blend-4 wpf-extended-toolkit

5
推荐指数
1
解决办法
1204
查看次数

有没有找到TFS 2012 RC构建控制器/代理状态错误的地方

我们最近将TFS 2010升级到TFS 2012 RC版本.除了我们的Build之外,所有东西都很容易升级.有谁知道在哪里可以找到显示构建控制器/代理运行原因的日志?

我们有单服务器配置,其中TFS,SharePoint,SQL2008 R2,构建控制器和构建代理都在同一个框中.

除了构建之外,所有新功能似乎都在使用.当构建组件启动时,它最初将Controller和Agent显示为"绿色箭头"状态,但在30秒后进入"Red Box"状态.

构建配置状态

然后,如果您单击"详细信息"链接以查看错误是什么,我会收到一个500错误的弹出窗口: 构建配置详细信息错误

任何有关如何诊断或查找错误日志等的帮助将不胜感激.

tfs build tfs2012

4
推荐指数
1
解决办法
1117
查看次数