使用NAnt和Ivy构建一个VB6项目 [英] Using NAnt and Ivy to build a VB6 project

查看:192
本文介绍了使用NAnt和Ivy构建一个VB6项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Subversion,CruiseControl,NAnt和Ivy为.Net和VB6应用程序开发一个持续集成系统。

I am working on a continuous integration system for both .Net and VB6 applications using Subversion, CruiseControl, NAnt and Ivy.

太多了一个问题,但是我需要一点指导,用VB6端的东西,更多来自'DLL-hell'端的东西!

The .Net side of things isn't too much of a problem, but I need a little guidance with the VB6 side of things, more from the 'DLL-hell' side of things!

我当前的-up正在获取所有的依赖文件为我的VB6系统,如预期和建立各种项目内确定。 BUT ...它使用已经注册在我的PC上的DLL,而不是那些在我的Lib文件夹,这是我解决我的依赖项从Ivy。

My current set-up is getting all dependent files for my VB6 system, as expected and builds the various projects within ok. BUT... it's using DLLs that are already registered on my PC, and not those within my Lib folder, which is where I am resolving my dependencies from Ivy.

我可以通过在Ivy解决它们之后注册下载的DLL来解决这个问题,这意味着项目文件可以指向本地Lib文件夹;但我想让我的NAnt脚本自动执行,然后在构建过程完成后自动取消注册,这样下一个项目可以做同样的事情。

I can get around this problem by registering the downloaded DLLs after Ivy has resolved them, which means that the project file can be pointed at the local Lib folder; but I want my NAnt script to do this automatically, and then automatically un-register them after the build process has completed, so that the next project in-turn can do the same thing.

我认为我需要帮助,是Ivy给我一个项目的依赖项的列表的能力...

What I think I need help with, is the ability to have Ivy give me a list of the project's dependencies...

例如,如果我构建项目X,这取决于项目A,B和C,然后如果我可以发出一个命令给Ivy,将返回一个列表,如A,B,C,那么我可以将这些传递到另一个目标进程注册/取消注册反过来...

For example, if I am building Project X, which depends on projects A, B and C, then if I could issue a command to Ivy that would give back a list such as A, B, C then I can pass these to another Target process to register/unregister them in turn...

这有意义吗?这是可能的,我是以正确的方式看这个吗?或者有更好的方法吗?

Does this make sense? Is this possible and am I looking at this in the right way? Or is there a better way?

我的道歉是我已经在房子周围解释这个... !!

My apologies is I have gone right around the houses to explain this...!!

推荐答案

我自己找到了答案;

而不是使用Ivy来为我生成一个依赖列表,我想我会使用文件系统给我相同的列表,因为Ivy已经做了它的工作,解决我的依赖,导致一个'lib'文件夹充满了.dll文件...

Instead of using Ivy to try to generate a list of dependencies for me on-demand, I thought I'd use the file-system to give me that same list, as Ivy has done it's job in resolving the dependencies for me, resulting in a 'lib' folder full of .dll files...

我所做的,是get该lib文件夹中的.dll文件列表,将它们存储在属性(变量)中,然后通过该属性循环回注册/取消注册。

All I have done, is get a list of the .dll files within that lib folder, store them in a property (variable) and then cycle back through that same property registering/unregistering as need be.

简单真的..!

这篇关于使用NAnt和Ivy构建一个VB6项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆