在询问Visual Studio注册COM库后做了什么,很明显VS为COM注册做了两件事:
Visual Studio似乎使用regasm.exe进行此注册.对于第一部分(直接COM注册)使用tallow或heat(WiX 2.0或WiX 3.0)似乎可以获得所有基本的COM注册信息.
但是,动物/热似乎没有设置类型库安装.可以使用WiX安装程序和regasm.exe创建自定义操作来执行此操作,但是当涉及基于Microsoft安装程序的安装程序时,调用自定义操作不是最佳做法.
经过进一步研究,看起来msi能够在安装时生成类型库.事实上,WiX似乎直接支持它!在文件元素中,您可以添加Typelib元素.实际上,wix上的这篇文章有一个用Interface元素填充TypeLib元素的例子.
似乎Interface元素至少有两个必需的属性:
Larry Osterman谈到了通常需要为TypeLib注册的接口的其他部分,这个接口条目似乎照顾了各个部分.Larry说我们需要将ProxyStubClassId32指定为"{00020424-0000-0000-C000-000000000046}",因此我们可以轻松添加它.
从那里去哪里以及为各种界面元素填写的内容让我感到难过.我已经继续将TypeLib元素添加到我的wix文件中,并且它已成功编译.关于如何设置Interface元素,我有点无能为力.我们需要做些什么来正确填写TypeLib元素,以及我可以使用哪些应用程序或工具来获取它?
wcoenen下面的答案看起来很有希望......我打算试一试.
更新:在下面发布我的最终解决方案作为答案.
说我有2种方法.一种是由列表框中所选索引更改触发的方法.第二种方法有助于清除所有文本框,将列表框索引设置为-1,并设置焦点.
题:
方法二执行,在代码期间它将列表框的选定索引更改为-1,从而为第一个方法设置事件触发器.方法2是否暂停它自己的执行并将进程转移到事件,然后在方法1完成后返回其工作...或方法2完成其整个代码块然后转移到方法1,因为所选索引更改?
我有一个C#项目,其中包含一个exe文件和11个库文件.exe引用所有库,lib1可以引用lib2,lib3,lib4等.
如果我对lib1中的类进行了更改并构建了解决方案,我假设只需要更改lib1和exe.但是,如果我想运行解决方案,所有dll和exe都在构建.
有没有一种方法可以阻止依赖关系建立,如果他们没有被改变?
我需要搜索pdf文件以查看是否存在某个字符串.有问题的字符串肯定被编码为文本(即,它不是图像或任何东西).我试过只是搜索文件,好像它是纯文本,但这不起作用.
是否有可能做到这一点?那里有.net2.0的图书馆会为我提取/解码pdf文件中的所有文本吗?
我正在尝试创建一个简单的 C# 应用程序,它执行端口转发,并且需要知道如何使用 IP_HDRINCL 套接字选项来尝试假装接收端认为连接确实是到源。任何例子将不胜感激。
我正在尝试创建一个通用函数来帮助我从本地列表中使用LINQ to SQL选择数千条记录.SQL Server(至少2005)将查询限制为2100个参数,我想选择更多的记录.
这将是一个很好的示例用法:
var some_product_numbers = new int[] { 1,2,3 ... 9999 };
Products.SelectByParameterList(some_product_numbers, p => p.ProductNumber);
Run Code Online (Sandbox Code Playgroud)
这是我的(非工作)实现:
public static IEnumerable<T> SelectByParameterList<T, PropertyType>(Table<T> items,
IEnumerable<PropertyType> parameterList, Expression<Func<T, PropertyType>> property) where T : class
{
var groups = parameterList
.Select((Parameter, index) =>
new
{
GroupID = index / 2000, //2000 parameters per request
Parameter
}
)
.GroupBy(x => x.GroupID)
.AsEnumerable();
var results = groups
.Select(g => new { Group = g, Parameters = g.Select(x => x.Parameter) } )
.SelectMany(g …Run Code Online (Sandbox Code Playgroud) 我正在编写一个词法分析器作为编译器项目的一部分,我需要检测一个整数是否大于int中的整数,这样我就可以打印错误了.是否有适合此目的的大整数C++标准库?
去年五月在波特兰的Railsconf上,我进行了一个演示,其中有人认为,在Rails中,Ruby类成员变量,如@@ foo,是危险的,因为它们本身就是不可读的.
之后我研究了这个问题,我从来没有找到真正充实问题的链接.我很感激指向一篇关于Rails和线程的好文章的指针,它真正涉及到类成员问题.此外,很高兴知道Rail 2+和Yarv如何改变这方面的事情.
也许我对演示文稿的记忆是模糊的,但我记得的是@@ foo有一些问题超出了通常的警告,必须严格控制任何共享变量访问.我知道Ruby代码本身存在内存泄漏,这些内容在很久以前就得到了解决.我正在寻找关于Ruby共享变量和多任务的文章链接,越深入越好.*目前我不会因为这个而使用类变量,但在某些情况下能够使用它们会很好.
我喜欢"服务器资源管理器"窗口中Visual Studio中的"添加连接"或"SQL连接"对话框.我也喜欢CodeSmith中的那个.我希望在我的Windows应用程序中具有相同的对话框或类似功能.
我需要它来使用SQL Server和SQL Server Express数据库文件(*.mdf).
我的客户安装了.NET 3.5 SP1和SQL Server 2008 Express.
这是我可以使用的系统对话框吗?是否有类似的开源对话框?谢谢.
我听过很多,Java API设计很差.你同意吗,如果是的话,怎么样?我知道日历/日期api存在重大问题.集合api需要使用很多样板代码.对于某些事情,File/IO API可能很复杂.
但是,这适用于整个船上吗?以及哪个版本的Java?
c# ×4
windows ×2
.net ×1
api ×1
build ×1
c++ ×1
dialog ×1
expression ×1
flex-lexer ×1
java ×1
lambda ×1
linq ×1
linq-to-sql ×1
listbox ×1
method-call ×1
networking ×1
pdf ×1
ruby ×1
search ×1
sockets ×1
typelib ×1
winforms ×1
wix ×1