set "str=$(ConfigurationName)" if "%str%"=="Release" (xcopy /y/e $(TargetDir)*.* "C:\MIIDSS3\Program Files\Xanalys\Link Explorer 6.2\plugin") else echo No copy
解决方案中有一个 Project 是 Windows Service,用来从消息队列中取出事件,发送通知电邮: UI是一个MVC网站,两个Project都引用了同一个类库,这个类库引用了第三方的生成PDF组件 Pechkin: 我每次生成网站时,Pechkin的7个DLL都会自动拷贝到 bin 目录,7个DLL加起来30几兆,而且网站运行时就会报错(修改IIS应用程序池可以解决),害我每次调试网站,都要手动从BIN目录删除这些DLL,很耽误效率, 其实只有 Windows Services 项目
在做项目是总要把发布后的一些dll拷贝的根网站的bin目录下,为了避免每次都需要手动拷贝可以在 项目的生成事件中写入bat命令,下面的命令只在项目使用的发布配置时执行拷贝, (在生成->配置管理器中可以设置各个项目的配置项) @echo off set "str=$(ConfigurationName)" if "%str%"=="Release" (xcopy "$(TargetDir)*.dll" "C:\
一个C#项目,如果为同一个解决方案的其他项目所引用,则其编译后,会将DLL拷贝到引用项目中:但如果它并不被其他项目引用,但又想编译后能够自动将生成的东西拷贝过去,可以在项目的生成事件中,写上一些批处理命令,拷贝指定的内容. 项目的生成事件,可以右击项目,弹出菜单中选属性,即可见到. 下面是一个批处理示例: SET Area=Test SET SolutionDir=D:\svn\trunk\Code\Solution\ SET ProjectName=SubWeb set PluginDirec