Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在团队建设中,什么';自动构建使用VB6库的C#应用程序的最佳实践方法是什么?_C#_Tfs_Vb6_Tfsbuild - Fatal编程技术网

在团队建设中,什么';自动构建使用VB6库的C#应用程序的最佳实践方法是什么?

在团队建设中,什么';自动构建使用VB6库的C#应用程序的最佳实践方法是什么?,c#,tfs,vb6,tfsbuild,C#,Tfs,Vb6,Tfsbuild,在TeamBuild中,自动构建使用VB6库的C#应用程序的最佳实践方式是什么?app和VbLib都在不断发展 目前,我有一个msbuild项目,它从命令行调用VB6、构建库、库的guid更改等。然后我们手动生成一个互操作(通过tlib)、在c#解决方案中提交和引用互操作 我想自动化我的msbuild文件中的tlib位,目前我们认为有人关闭了VB6库的vbp中的二进制兼容性,并且在我们部署时互操作似乎不起作用。我们是否应该生成互操作?或者我们应该将vb库二进制文件检查到源代码控制中(在构建服务器

在TeamBuild中,自动构建使用VB6库的C#应用程序的最佳实践方式是什么?app和VbLib都在不断发展

目前,我有一个msbuild项目,它从命令行调用VB6、构建库、库的guid更改等。然后我们手动生成一个互操作(通过tlib)、在c#解决方案中提交和引用互操作

我想自动化我的msbuild文件中的tlib位,目前我们认为有人关闭了VB6库的vbp中的二进制兼容性,并且在我们部署时互操作似乎不起作用。我们是否应该生成互操作?或者我们应该将vb库二进制文件检查到源代码控制中(在构建服务器上构建之后必须自动完成…)

有什么想法或建议吗


实际上没有最佳实践。为了包含这些内容,您需要调用一组命令行util,可以使用自定义构建目标将它们集成到MsBuild中。这些目标可以修正不断变化的事物。我会尝试完全在团队构建之外和MsBuild内部解决这个问题,因为在解决方案中包含.proj文件更容易影响构建过程。然后只需参考团队构建中的解决方案

现有的VB6任务可以在此处调用VB6应用程序的编译:


但这并不容易。如果可能的话,确保VB6项目不会发生太多变化,或者让VB6项目人员在他们的发行版中提供托管包装,这可能会容易得多。

谢谢,我的解决方案中包含了.proj。我猜托管包装器本质上就是它的iterop?是的,托管包装器就是互操作。或者是interop加上一些类,以使其更好地与C#配合使用。我想知道为什么你现在还在VB6上投资这么多。使用Com互操作的另一种方式,并使用.NET扩展VB6应用程序以开发新功能,不是更有意义吗?我会尽量少使用VB6代码:Dit确实有意义!如此之多,以至于我们这样做了,然后有人决定在其上放置一个WPF前端,并将VB6表单停靠在新的WPF应用程序中;现在我们有了:wpfApp->vb6lib->assembles->win32libs。呵呵。谢谢你的输入。。。听起来像一场噩梦;)。但我的回答很有帮助:)。