WPF 无法将文件“*.exe”复制到“*.exe”。文件“*.exe”正由另一进程使用,因此该进程无法访问此文件

转载请保留出处:http://blog.csdn.net/xubright/article/details/75098414


WPF 无法将文件“*.exe”复制到“*.exe”。文件“*.exe”正由另一进程使用,因此该进程无法访问此文件。


有个工程在Debug时总出现无法复制文件问题,当关掉VS删掉exe后才可以Debug,修改后又不能Debug。

对于新手,可能是因为进程未关闭的原因(此原因在任务管理器结束进程即可),但我这种老司机不会犯这种低级错误。

今天灵机一动,终于发现是因为想修改版本号而执行了发布(Public)操作导致的。修改办法如下:

找到本工程的"*.csproj"(不是Sulotion的*.sln)文件,删除以下三段(没细究,应该是跟发布有关的记录):

删除之前请先备份一个,以免删错!!!


第一个PropertyGroup标签下的:
    <PublishUrl>publish\</PublishUrl>
    <Install>true</Install>
    <InstallFrom>Disk</InstallFrom>
    <UpdateEnabled>false</UpdateEnabled>
    <UpdateMode>Foreground</UpdateMode>
    <UpdateInterval>7</UpdateInterval>
    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
    <UpdatePeriodically>false</UpdatePeriodically>
    <UpdateRequired>false</UpdateRequired>
    <MapFileExtensions>true</MapFileExtensions>
    <ApplicationRevision>0</ApplicationRevision>
    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
    <IsWebBootstrapper>false</IsWebBootstrapper>
    <UseApplicationTrust>false</UseApplicationTrust>
    <PublishWizardCompleted>true</PublishWizardCompleted>
    <BootstrapperEnabled>true</BootstrapperEnabled>

新出现的几个PropertyGroup标签

<PropertyGroup>
    <ManifestCertificateThumbprint>273DCEBE735766CB7AFBDE51243A3231369DD9A2</ManifestCertificateThumbprint>
  </PropertyGroup>
  <PropertyGroup>
    <ManifestKeyFile>test1_TemporaryKey.pfx</ManifestKeyFile>
  </PropertyGroup>
  <PropertyGroup>
    <GenerateManifests>true</GenerateManifests>
  </PropertyGroup>
  <PropertyGroup>
    <SignManifests>true</SignManifests>
  </PropertyGroup>

新出现的ItemGroup标签(这个不删除也没事,不过该标签留着也无用)

<ItemGroup>
    <BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
      <Visible>False</Visible>
      <ProductName>Microsoft .NET Framework 4 Client Profile %28x86 和 x64%29</ProductName>
      <Install>true</Install>
    </BootstrapperPackage>
    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
      <Visible>False</Visible>
      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
      <Install>false</Install>
    </BootstrapperPackage>
    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
      <Visible>False</Visible>
      <ProductName>.NET Framework 3.5 SP1</ProductName>
      <Install>false</Install>
    </BootstrapperPackage>
    <BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
      <Visible>False</Visible>
      <ProductName>Windows Installer 3.1</ProductName>
      <Install>true</Install>
    </BootstrapperPackage>
  </ItemGroup>

再次打开解决方案,在该工程中随意添加一句代码,Debug,成功。


对了,执行发布操作后解决方案中会多出一个文件,xxx_TemporaryKey.pfx,删除之。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值