mirror of
https://github.com/S7NetPlus/s7netplus.git
synced 2026-02-17 22:38:27 +08:00
Read responses from the PLS using classes for TPKT and COPT. This makes the communication more robust. It will now handle empty COTP packets that SoftPLS and WinAC based PLCs send out. I use RFC names for functions and classes. Change logic to use COTP and S7Comm reponse codes instead of relying on packet sizes. Read Max PDU size from connection setup. Ref #21 Change logic to use MaxPDUSize when reading istead of hardcoded limit. I tried using MaxPDUSize when writing data but this failed when packet size is over 256 on snap7. So i decided to drop changes to write size. I have done some tests against WinAC cpu and it seems to handle bigger pdu's when writing if negotiated in the connection setup. This might just be a SNAP7 bug. Fix MaxPDUSize for readbytes Remove debug line Simplify byte copy. Remove unessesarry buffer
126 lines
5.0 KiB
XML
126 lines
5.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
<ProductVersion>9.0.30729</ProductVersion>
|
|
<SchemaVersion>2.0</SchemaVersion>
|
|
<ProjectGuid>{BFD484F9-3F04-42A2-BF2A-60A189A25DCF}</ProjectGuid>
|
|
<OutputType>Library</OutputType>
|
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
<RootNamespace>S7.Net</RootNamespace>
|
|
<AssemblyName>S7.Net</AssemblyName>
|
|
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
|
<FileAlignment>512</FileAlignment>
|
|
<FileUpgradeFlags>
|
|
</FileUpgradeFlags>
|
|
<UpgradeBackupLocation>
|
|
</UpgradeBackupLocation>
|
|
<OldToolsVersion>3.5</OldToolsVersion>
|
|
<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>
|
|
<BootstrapperEnabled>true</BootstrapperEnabled>
|
|
<TargetFrameworkProfile />
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<DebugType>full</DebugType>
|
|
<Optimize>false</Optimize>
|
|
<OutputPath>bin\Debug\</OutputPath>
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<Prefer32Bit>false</Prefer32Bit>
|
|
<DocumentationFile>bin\Debug\S7.Net.xml</DocumentationFile>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
<DebugType>pdbonly</DebugType>
|
|
<Optimize>true</Optimize>
|
|
<OutputPath>bin\Release\</OutputPath>
|
|
<DefineConstants>TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<Prefer32Bit>false</Prefer32Bit>
|
|
<DocumentationFile>bin\Release\S7.Net.xml</DocumentationFile>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<SignAssembly>true</SignAssembly>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<AssemblyOriginatorKeyFile>Properties\S7.Net.snk</AssemblyOriginatorKeyFile>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<Reference Include="System" />
|
|
<Reference Include="System.Core">
|
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
|
</Reference>
|
|
<Reference Include="System.Xml.Linq">
|
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
|
</Reference>
|
|
<Reference Include="System.Data.DataSetExtensions">
|
|
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
|
</Reference>
|
|
<Reference Include="System.Data" />
|
|
<Reference Include="System.Xml" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Compile Include="Conversion.cs" />
|
|
<Compile Include="COTP.cs" />
|
|
<Compile Include="Enums.cs" />
|
|
<Compile Include="PLC.cs" />
|
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
<Compile Include="TPKT.cs" />
|
|
<Compile Include="Types\Bit.cs" />
|
|
<Compile Include="Types\Boolean.cs" />
|
|
<Compile Include="Types\Byte.cs" />
|
|
<Compile Include="Types\ByteArray.cs" />
|
|
<Compile Include="Types\Class.cs" />
|
|
<Compile Include="Types\Counter.cs" />
|
|
<Compile Include="Types\DataItem.cs" />
|
|
<Compile Include="Types\DInt.cs" />
|
|
<Compile Include="Types\Double.cs" />
|
|
<Compile Include="Types\DWord.cs" />
|
|
<Compile Include="Types\Int.cs" />
|
|
<Compile Include="Types\StringEx.cs" />
|
|
<Compile Include="Types\String.cs" />
|
|
<Compile Include="Types\Struct.cs" />
|
|
<Compile Include="Types\Timer.cs" />
|
|
<Compile Include="Types\Word.cs" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<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>true</Install>
|
|
</BootstrapperPackage>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="Properties\S7.Net.snk" />
|
|
</ItemGroup>
|
|
<ItemGroup />
|
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
|
Other similar extension points exist, see Microsoft.Common.targets.
|
|
<Target Name="BeforeBuild">
|
|
</Target>
|
|
<Target Name="AfterBuild">
|
|
</Target>
|
|
-->
|
|
</Project> |