2026-06-26 15:00:53 +08:00
<Project>
<!--
StandardScene 插件工程编译后,自动将产物复制到 build\plugins\( SimpleComposer / SimpleLite 宿主加载目录)。
2026-08-14 14:43:11 +08:00
适用:StandardScene.Core + Magnetic / QrLidar / Devices / Protocol.VDA5050 / Signal 等卫星插件。
2026-06-26 15:00:53 +08:00
-->
<PropertyGroup>
<StandardSceneRepoRoot> $(MSBuildThisFileDirectory)</StandardSceneRepoRoot>
<StandardScenePluginsDir> $(StandardSceneRepoRoot)build\plugins</StandardScenePluginsDir>
<IsStandardScenePluginCopy> false</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.Core'" > true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.Magnetic'" > true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.QrLidar'" > true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.Devices'" > true</IsStandardScenePluginCopy>
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.Protocol.VDA5050'" > true</IsStandardScenePluginCopy>
2026-08-14 14:43:11 +08:00
<IsStandardScenePluginCopy Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal'" > true</IsStandardScenePluginCopy>
2026-06-26 15:00:53 +08:00
</PropertyGroup>
<Target Name= "CopyStandardScenePluginOutputs"
AfterTargets= "Build"
Condition= "'$(IsStandardScenePluginCopy)' == 'true' and '$(TargetPath)' != ''" >
<MakeDir Directories= "$(StandardScenePluginsDir)" />
<ItemGroup>
<StandardScenePluginCopyFile Include= "$(TargetPath)" />
<StandardScenePluginCopyFile Include= "$(TargetDir)$(TargetName).pdb"
Condition= "Exists('$(TargetDir)$(TargetName).pdb')" />
<StandardScenePluginCopyFile Include= "$(TargetDir)$(TargetName).scene.json"
Condition= "Exists('$(TargetDir)$(TargetName).scene.json')" />
<!-- Devices 插件运行时依赖 -->
<StandardScenePluginCopyFile Include= "$(TargetDir)leegKeys-sdk.dll"
Condition= "Exists('$(TargetDir)leegKeys-sdk.dll')" />
2026-08-14 14:43:11 +08:00
<StandardScenePluginCopyFile Include= "$(TargetDir)IoTClient.dll"
Condition= "Exists('$(TargetDir)IoTClient.dll')" />
2026-08-17 15:20:27 +08:00
<StandardScenePluginCopyFile Include= "$(NuGetPackageRoot)iotclient\1.0.40\lib\netstandard2.0\IoTClient.dll"
Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal' and Exists('$(NuGetPackageRoot)iotclient\1.0.40\lib\netstandard2.0\IoTClient.dll')" />
2026-08-24 14:55:35 +08:00
<StandardScenePluginCopyFile Include= "$(MSBuildProjectDirectory)\Config\Signal\signal-tables.json"
Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal' and Exists('$(MSBuildProjectDirectory)\Config\Signal\signal-tables.json')" />
2026-06-26 15:00:53 +08:00
</ItemGroup>
<Copy SourceFiles= "@(StandardScenePluginCopyFile)"
DestinationFolder= "$(StandardScenePluginsDir)"
SkipUnchangedFiles= "true" />
2026-08-24 14:55:35 +08:00
<Copy SourceFiles= "$(TargetPath)"
DestinationFolder= "$(StandSimpleLiteDir)plugins"
SkipUnchangedFiles= "true"
Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal' and Exists('$(StandSimpleLiteDir)plugins')" />
<Copy SourceFiles= "$(TargetDir)$(TargetName).pdb"
DestinationFolder= "$(StandSimpleLiteDir)plugins"
SkipUnchangedFiles= "true"
Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal' and Exists('$(TargetDir)$(TargetName).pdb') and Exists('$(StandSimpleLiteDir)plugins')" />
<Copy SourceFiles= "$(TargetDir)$(TargetName).scene.json"
DestinationFolder= "$(StandSimpleLiteDir)plugins"
SkipUnchangedFiles= "true"
Condition= "'$(MSBuildProjectName)' == 'StandardScene.Signal' and Exists('$(TargetDir)$(TargetName).scene.json') and Exists('$(StandSimpleLiteDir)plugins')" />
2026-06-26 15:00:53 +08:00
<Message Importance= "high"
Text= "[StandardScene] 已复制 $(MSBuildProjectName) 插件产物到 $(StandardScenePluginsDir)" />
</Target>
</Project>