zoukankan      html  css  js  c++  java
  • 利用Nuget打包添加tools下intsall.ps1【powershell脚本】修改.csproj文件

    利用Nuget打包添加tools下intsall.ps1【powershell脚本】修改.csproj文件,

    以设置
    1、项目-生成-》输出-》选择【XML文件文件】

    2、项目->调试-》启用调试器:取消[启用Visual Studio承载进程]

    install.ps1脚本如下:

    param($installPath, $toolsPath, $package, $project)

    # save project first
    $project.Save()

    $xml = [xml](Get-Content -path $project.FullName)


    $default = $xml.Project.PropertyGroup | Where-Object { $_.Condition -eq $null }

    $assemblyName=$default.AssemblyName

    if($default.DocumentationFile -eq $null) {
        $path = "binDebug$($default.AssemblyName).xml"
        $node = $xml.CreateElement('DocumentationFile', $xml.DocumentElement.NamespaceURI)
        $node.InnerText = $path
        $default.AppendChild($node) | Out-Null
    }

    if($default.UseVSHostingProcess -eq $null) {    
        $node1 = $xml.CreateElement('UseVSHostingProcess', $xml.DocumentElement.NamespaceURI)
        $node1.InnerText = "false"
        $default.AppendChild($node1) | Out-Null
    }

    #Debug

    $default = $xml.Project.PropertyGroup | Where-Object { $_.Condition -Like '*Debug|AnyCPU*' }
    if($default.DocumentationFile -eq $null) {
        $path = "binDebug$($assemblyName).xml"
        $node = $xml.CreateElement('DocumentationFile', $xml.DocumentElement.NamespaceURI)
        $node.InnerText = $path
        $default.AppendChild($node) | Out-Null
    }


    if($default.UseVSHostingProcess -eq $null) {    
        $node1 = $xml.CreateElement('UseVSHostingProcess', $xml.DocumentElement.NamespaceURI)
        $node1.InnerText = "false"
        $default.AppendChild($node1) | Out-Null
    }

    #Release

    $default = $xml.Project.PropertyGroup | Where-Object { $_.Condition -Like '*Release|AnyCPU*' }
    if($default.DocumentationFile -eq $null) {
        $path = "binRelease$($assemblyName).xml"
        $node = $xml.CreateElement('DocumentationFile', $xml.DocumentElement.NamespaceURI)
        $node.InnerText = $path
        $default.AppendChild($node) | Out-Null
    }

    if($default.UseVSHostingProcess -eq $null) {    
        $node1 = $xml.CreateElement('UseVSHostingProcess', $xml.DocumentElement.NamespaceURI)
        $node1.InnerText = "false"
        $default.AppendChild($node1) | Out-Null
    }

    $project.Save()

    $xml.save($project.FullName)
  • 相关阅读:
    【题解】一本通例题 S-Nim
    【题解】一本通例题 取石子游戏
    【题解】[USACO09NOV]A Coin Game S
    【题解】取火柴游戏
    【题解】CF375D Tree and Queries
    Linux sudo用户提权与日志审计
    No space left on device
    CentOS下多种方法显示文本行号
    Python之行-01之初识python
    约瑟夫问题
  • 原文地址:https://www.cnblogs.com/94cool/p/9219228.html
Copyright © 2011-2022 走看看