Tag: visual studio 2008

Visual Studio:使用外部文件(不复制它们)

我想将枚举类(.cs)导入到由另一个服务生成的项目中。 因此,如果该服务将更新此文件,则应在我的项目中自动更新。 它必须是纯文本的(因此我不能使用程序集)因为我们无法在php中编译代码。 这就是为什么我想要这个:我们在多个应用程序中使用全局语言字符串,并且出于某些原因我想将它们用作枚举。 添加新文本时,我希望能够在不复制或更改任何内容的情况下使用它们。 也许有另一种方法来实现这一目标。 谢谢。

C#编译器优化 – 未使用的方法

C#编译器(在VS2008或VS2010中)在编译时是否删除未使用的方法? 我认为决定是否使用公共方法可能有问题,所以我猜它会编译所有的公共方法。 但是在类中从未使用的私有方法呢? 编辑: 是否存在关于编译器optmization的一组规则,这些规则在任何地方都有记录?

combobox下拉宽度建议

我有一个具有combobox控件的表单。 我已经选择了下拉样式属性到DropDown。 我还将DropDown Width设置为250.我已将自动完成模式设置为建议,并将自动完成源设置为listitems。 当我点击下拉菜单时它完全正常。 但是当我输入某些东西时,自动完成模式会激活一个宽度较小的下拉菜单。 任何帮助欣赏。 我想知道如何通过代码增加自动完成下拉的宽度,以便正确查看列表项。 我正在使用C#。 几个月前我曾问过这个,但没有得到正确答案。 现在顾客想要它坏:( ??

安装程序自定义操作问题 – 无法写入注册表项

在自定义操作编辑器中,我已将自定义操作添加到该过程的安装和卸载阶段。 在属性窗口中,我将CustomActionData属性标记为: /TARGETDIR = “[TARGETDIR]” 我希望上面将安装目录信息传递给自定义操作。 自定义操作似乎正在触发,但我收到以下错误消息: “错误1001.无法写入寄存器的密钥” (或类似的东西,我正在用我的本地语言翻译它)。 我究竟做错了什么? using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Configuration.Install; using System.Linq; //using System.Windows.Forms; using Microsoft.Win32; namespace CustomActions { [RunInstaller(true)] public partial class Installer1 : Installer { public override void Install(IDictionary stateSaver) { base.Install(stateSaver); const string key_path = “SOFTWARE\\VendorName\\MyAppName”; const string key_value_name = “InstallationDirectory”; RegistryKey […]

在.NET中编译与版本无关的DLL

脚本 我有两个围绕Microsoft Office的包装器,一个用于2003,一个用于2007.由于两个版本的Microsoft Office并行运行“非官方可能”,也不是微软推荐的,我们有两个盒子,一个用Office 2003和另一个使用Office 2007.我们分别编译包装器。 DLL包含在我们的解决方案中,每个框都有相同的签出但Office 2003或2007“卸载”,因此它不会尝试编译该特定的DLL。 如果不这样做将导致编译错误,因为Office COM DLL不可用。 我们使用.NET 2.0和Visual Studio 2008。 事实 由于Microsoft在2007年神秘地改变了Office 2003 API,重命名和更改了一些方法( 叹气 )从而使它们不向后兼容,我们需要两个包装器。 我们为每台构建机器提供了解决方案,并激活了一个Office DLL。 例如:具有Office 2003的计算机已卸载“Office 2007”DLL,因此无法对其进行编译。 另一个盒子是相同的想法,但反过来。 这一切都是因为我们不能在同一个盒子中有2个不同的Office用于编程。 (根据微软,你可以在技术上将两个Office放在一起),但不能用于编程,也不能没有一些问题。 问题 当我们更改应用程序版本(例如从1.5.0.1到1.5.0.2)时,我们需要重新编译DLL以匹配新版本的应用程序,这是自动完成的,因为Office包装器包含在解决方案中。 由于包装器包含在解决方案中,因此它们inheritance了APP版本,但我们必须执行两次,然后将另一个DLL“复制”到创建安装程序的计算机上。 (痛苦……) 题 是否可以编译一个可以与任何版本的应用程序一起使用的DLL,尽管它“更老”? 我已经阅读了一些关于清单的内容,但我从未与这些内容进行过互动。 任何指针将不胜感激。 这样做的秘密原因是我们没有更改“年龄”中的包装器,微软也没有更改其古老的API,但我们正在重新编译DLL以匹配我们制作的每个版本上的应用程序版本。 我想自动化这个过程,而不是依赖两台机器。 我无法从项目中删除DLL(它们都没有),因为存在依赖项。 我可以创建第三个“主包装器”但尚未考虑过它。 有任何想法吗? 有其他要求相同的人吗? UPDATE 澄清: 我有一个N项目的解决方案。 “应用程序”+ Office11Wrapper.dll + Office12Wrapper.dll。 两个“包装器”都使用应用程序的依赖关系+解决方案中的其他库(数据层,业务层,框架等) 每个包装器都有相应Office包的引用(2003和2007)。 如果我编译并且没有安装Office 12,则会从Office12Wrapper.dll中找不到Office 2007库的错误。 […]

静态链接在C#.NET上创建的库

我正在使用VS2008 C#.NET。 我在3个项目中创建了3个不同类的库。 我写了一个使用这些库(dll)的应用程序。 正在发生的事情是每个项目都在编译成一个类库。 所以,我有3个dll和1个exe。 相反,我希望以两种方式拥有这些: 只有类库汇编(dll),其中包含3个和1个exe。 只有一个EXE(里面的一切)::静态链接。 我怎么能这样做? 我在VS2008中找不到静态链接的任何选项,也请提及命令行选项。

转换为UCS2

Vb.net(或C#)中是否有任何函数可以编码UCS2中的字符串? 谢谢

阻止用户调整窗口/表单大小

用户可以更改表单大小。 我没有找到不允许用户更改表单大小的表单属性。

C#开发中可能存在的64位操作系统问题

我正在将我的操作系统更新到Windows 7 x64,我只有运行32位操作系统的经验。 有没有人对64位环境有任何糟糕/良好的体验? 作为参考,我使用的工具是: Visual Studio 2008 Tortoise SVN TestDriven.Net Oracle 10g XE PL / SQL Developer Dundas Chart 来自MS SQL Server 2008的Analysis Services

应修改哪些内容以更改C#中的Web服务的URL?

我有一个问题,就在不久前我通过复制所有生成的代码(复制粘贴.cs内容的文本)将Webservice代理类添加到我的应用程序中。 它奏效了! 但现在我需要更改此Web服务代理类使用的URL,我不确定代码中的更改内容和位置。 我很感激,如果你能给我一个线索,可以指导我找到合适的地方,以便我可以更新网络服务的url。