编译的dll自动复制到指定目录并重命名

为方便动态加载调试,避免每次加载选文件夹这一繁琐步骤,直接cad创建快捷命令图标加载指定路径dll文件名。这时候我们不同项目编译的dll可在编译后自动复制到指定路径并重命名,方法如下:

复制代码
	<Target Name="CopyToMyDir" AfterTargets="Build">
		<Copy SourceFiles="$(TargetPath)"
			  DestinationFiles="G:\Csharp\Ifox\IfoxDemo\IfoxDemo\bin\Debug\net48\IfoxDemo.dll" />
		<Message Importance="High" Text="已将 $(TargetFileName) 复制到 G:\Csharp\Ifox\IfoxDemo\IfoxDemo\bin\Debug\net48\IfoxDemo.dll" />
	</Target>
	
</Project>

或者指定目录

cs 复制代码
	<Target Name="CopyToMyDir" AfterTargets="Build">
		<!-- 定义目标文件夹和文件路径 -->
		<PropertyGroup>
			<DestFolder>C:\Users\Administrator\AppData\</DestFolder>
			<DestFile>$(DestFolder)net35.dll</DestFile>
		</PropertyGroup>

		<!-- 如果目标文件夹不存在,则创建它 -->
		<MakeDir Directories="$(DestFolder)" Condition="!Exists('$(DestFolder)')" />

		<!-- 复制文件 -->
		<Copy SourceFiles="$(TargetPath)" DestinationFiles="$(DestFile)" />

		<!-- 输出提示信息 -->
		<Message Importance="High" Text="已将 $(TargetFileName) 复制到 $(DestFile)" />
	</Target>

这样不同项目生成的dll文件可复制到指定目录。

===========net35方案=============

cs 复制代码
<Project Sdk="Microsoft.NET.Sdk">
	<PropertyGroup>
		<TargetFramework>net35</TargetFramework>
		<!-- 删除 UseWPF 和 UseWindowsForms 属性,它们在 net35 下无效 -->
		<AssemblyVersion>1.0.*</AssemblyVersion>
		<FileVersion>1.0.0.0</FileVersion>
		<Deterministic>False</Deterministic>
		<LangVersion>preview</LangVersion>
		<AssemblyName>loada</AssemblyName>
	</PropertyGroup>

	<!-- 如果需要 Windows Forms 或 WPF,手动添加引用 -->
	<ItemGroup Condition="'$(TargetFramework)' == 'net35'">
		<!-- Windows Forms -->
		<Reference Include="System.Windows.Forms" />
		<!-- WPF 核心程序集 -->
		<Reference Include="PresentationCore" />
		<Reference Include="PresentationFramework" />
		<Reference Include="WindowsBase" />
	</ItemGroup>

	<!-- AutoCAD API 引用 -->
	<ItemGroup>
		<Reference Include="acdbmgd">
			<HintPath>net35\acdbmgd.dll</HintPath>
			<Private>False</Private>
		</Reference>
		<Reference Include="acmgd">
			<HintPath>net35\acmgd.dll</HintPath>
			<Private>False</Private>
		</Reference>
	</ItemGroup>

	<!-- 系统引用(保持 Private=False) -->
	<ItemGroup>
		<Reference Update="System">
			<Private>false</Private>
		</Reference>
		<Reference Update="System.Core">
			<Private>false</Private>
		</Reference>
		<Reference Update="System.Data">
			<Private>false</Private>
		</Reference>
		<Reference Update="System.Drawing">
			<Private>false</Private>
		</Reference>
		<!-- 其他系统引用... -->
	</ItemGroup>
	<Target Name="CopyToMyDir" AfterTargets="Build">
		<!-- 定义目标文件夹和文件路径 -->
		<PropertyGroup>
			<DestFolder>C:\Users\Administrator\AppData\</DestFolder>
			<DestFile>$(DestFolder)IfoxDemo.dll</DestFile>
		</PropertyGroup>

		<!-- 如果目标文件夹不存在,则创建它 -->
		<MakeDir Directories="$(DestFolder)" Condition="!Exists('$(DestFolder)')" />

		<!-- 复制文件 -->
		<Copy SourceFiles="$(TargetPath)" DestinationFiles="$(DestFile)" />

		<!-- 输出提示信息 -->
		<Message Importance="High" Text="已将 $(TargetFileName) 复制到 $(DestFile)" />
	</Target>

 
</Project>
相关推荐
雨辰AI9 分钟前
人大金仓 K8s 密评合规加固|国密全链路加密 + 权限收敛容器化落地(三级密评直通版)
java·云原生·容器·kubernetes·政务
90后的晨仔10 分钟前
uni-app 生命周期深度解析(iOS / Android / 鸿蒙 / Vue3 四端对照)
前端
钛态2 小时前
AI 辅助:前端框架反模式:过度封装、状态滥用与副作用失控
前端·vue·react·web
by__csdn2 小时前
Vue vs React vs Angular:前端框架终极对决
前端·vue.js·react.js·前端框架·vue·react·angular
钛态2 小时前
前端框架选型决策框架:React、Vue、Svelte、Solid 的 2026 年横评
前端·vue·react·web
2501_926102862 小时前
深入浅出Vue.js前端框架设计:核心原理与实践指南
前端·vue.js·前端框架
程序员黑豆3 小时前
使用AI编程开发鸿蒙应用:从环境搭建到实战示例
前端·harmonyos
程序员黑豆7 小时前
鸿蒙应用开发:一次开发多端部署之响应式布局完全指南
前端·harmonyos
小月土星7 小时前
2.0 React Router 前端路由深度解析:从传统后端路由到现代 SPA 的完整演进
前端
Dontla10 小时前
预置known_hosts如何防止中间人攻击(MITM)?(服务器公钥、服务器私钥)Runner、DNS污染、BGP劫持、同网络ARP欺骗、SSH握手
服务器·网络·ssh