zoukankan      html  css  js  c++  java
  • C#项目的生成事件及批处理文件

    一个C#项目,如果为同一个解决方案的其他项目所引用,则其编译后,会将DLL拷贝到引用项目中;但如果它并不被其他项目引用,但又想编译后能够自动将生成的东西拷贝过去,可以在项目的生成事件中,写上一些批处理命令,拷贝指定的内容。

    项目的生成事件,可以右击项目,弹出菜单中选属性,即可见到。

    下面是一个批处理示例:

    SET Area=Test
    SET SolutionDir=D:svn	runkCodeSolution
    SET ProjectName=SubWeb
    
    set PluginDirectory="%SolutionDir%WebPlugins\%Area%"
    set PluginViewDirectory="%SolutionDir%WebPlugins\%Area%Views"
    set PluginBinDirectory="%SolutionDir%WebPlugins\%Area%in"
    set PluginContentDirectory="%SolutionDir%WebPlugins\%Area%Content"
    set PluginScirptsDirectory="%SolutionDir%WebPlugins\%Area%Scripts"
    set PluginWebConfig="%SolutionDir%WebPlugins\%Area%"
    set PluginTemplateDirectory="%SolutionDir%WebPlugins\%Area%Template"
    set PluginFunctionXmlFile="%SolutionDir%WebPlugins\%Area%"
    
    set ProjectViewDirectory="%SolutionDir%%ProjectName%Views"
    set ProjectBinDirectory="%SolutionDir%%ProjectName%in"
    set ProjectContentDirectory="%SolutionDir%%ProjectName%Content"
    set ProjectScirptsDirectory="%SolutionDir%%ProjectName%Scripts"
    set ProjectWebConfig="%SolutionDir%%ProjectName%Web.config"
    set ProjectTemplateDirectory="%SolutionDir%%ProjectName%Template"
    set ProjectFunctionXmlFile="%SolutionDir%%ProjectName%menu.xml"
    
    C:WindowsSystem32xcopy.exe /s /y %ProjectViewDirectory%*.cshtml %PluginViewDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectBinDirectory% %PluginBinDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectScirptsDirectory% %PluginScirptsDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectWebConfig% %PluginWebConfig%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectTemplateDirectory% %PluginTemplateDirectory%
    
    rem C:WindowsSystem32xcopy.exe /s /y %ProjectFunctionXmlFile% %PluginFunctionXmlFile%
    


    这样,每次这个项目编译的时候,之后就会触发这个事件。

    我们也可以将这些批处理命令写到一个批处理文件,然后在VS里添加一个指向该BAT的外部命令。这样在VS里就可以随时点击触发,方便得很。

    这种方法尤其适合只拷贝一些非DLL等无须编译的文件。

    添加外部命令的方法是在VS中,工具-外部工具,编辑好后,命令会自动出现在工具菜单中。


    版权声明:本文为博主原屙文章,喜欢你就担走。

  • 相关阅读:
    jvisualm 结合 visualGC 进行jvm监控,并分析垃圾回收
    linux 查看服务器cpu 与内存配置
    arthas 使用总结
    selinux contexts 安全上下文的临时更改
    Android 8.1 Doze模式分析(五) Doze白名单及Debug方式
    Window 任意窗口置顶软件Window TopMost Control
    Android ApkToolPlus一个可视化的跨平台 apk 分析工具
    SVN Please execute the 'Cleanup' command.
    Android 如何在64位安卓系统中使用32位SO库
    Android cmd命令查看apk是32位还是64位?
  • 原文地址:https://www.cnblogs.com/leftfist/p/4764273.html
Copyright © 2011-2022 走看看