Bladeren bron

Добавьте файлы проекта.

СазоноваАА 11 maanden geleden
bovenliggende
commit
9eaf3c07d0
4 gewijzigde bestanden met toevoegingen van 320 en 0 verwijderingen
  1. 31 0
      Kanal.sln
  2. 132 0
      Kanal/Kanal.c
  3. 135 0
      Kanal/Kanal.vcxproj
  4. 22 0
      Kanal/Kanal.vcxproj.filters

+ 31 - 0
Kanal.sln

@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.6.33829.357
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Kanal", "Kanal\Kanal.vcxproj", "{AA13B44C-2CCB-4EF1-A6F8-93769F824311}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|x64 = Debug|x64
+		Debug|x86 = Debug|x86
+		Release|x64 = Release|x64
+		Release|x86 = Release|x86
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Debug|x64.ActiveCfg = Debug|x64
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Debug|x64.Build.0 = Debug|x64
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Debug|x86.ActiveCfg = Debug|Win32
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Debug|x86.Build.0 = Debug|Win32
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Release|x64.ActiveCfg = Release|x64
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Release|x64.Build.0 = Release|x64
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Release|x86.ActiveCfg = Release|Win32
+		{AA13B44C-2CCB-4EF1-A6F8-93769F824311}.Release|x86.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {5B1B3483-6484-4D29-A6F2-C089355B923A}
+	EndGlobalSection
+EndGlobal

+ 132 - 0
Kanal/Kanal.c

@@ -0,0 +1,132 @@
+#include <Windows.h>
+#include <malloc.h>
+#include <stdio.h>
+#include <locale.h>
+#define SIWPO_SIZE 140
+#define MAX_BUF_SIZE 1024
+
+int main()
+{
+	system("chcp 1251");
+//HANDLE hNamePipie;// дескриптор канала
+//LPSTR lipzPipe = L"\\\\.\\pipe\\MyPipe";//имя канала (путь к каналу) . указатель на локальный хост
+//DWORD vis_size = SIWPO_SIZE;
+//LPWSTR buffer = (CHAR*)calloc(vis_size, sizeof(CHAR));// сюда считаем файлы(данные)
+//char messege[SIWPO_SIZE];
+//BOOL Conected;
+//DWORD actual_reader;
+//BOOL SecceRead;
+//
+//	while (TRUE)
+//	{
+//		hNamePipie = CreateNamedPipe(lipzPipe,PIPE_ACCESS_DUPLEX,PIPE_TYPE_MESSAGE|PIPE_READMODE_MESSAGE|PIPE_WAIT,PIPE_UNLIMITED_INSTANCES, SIWPO_SIZE, SIWPO_SIZE,INFINITE,NULL);
+//		              //создание канала (имя канала(путь), режим доступа к каналу сим или дуп, что может делать канал( режим работы), количество соединений,обьем буфера,время ожидания,безопасность)
+//		Conected = ConnectNamedPipe(hNamePipie, NULL);// определяет клиент к серверу или нет (соединение клиента с каналом)
+//		if (Conected)//
+//		{
+//			printf("\nКлиент успешно подключился \n");
+//			SecceRead = ReadFile(hNamePipie, buffer, vis_size, &actual_reader, NULL);//куда прочитал, сколько прочитал, сколько с самого начала считается, читает с начала 
+//			if (SecceRead)
+//			{
+//				printf("\nКлиент пишет..\n");
+//				printf(buffer);
+//				printf("\n");
+//
+//				printf("\nВведите сообщение для клиента....\n");
+//				gets(messege);
+//				buffer = &messege;
+//				WriteFile(hNamePipie, buffer, vis_size, &actual_reader, NULL);
+//
+//
+//			}
+//			else
+//			{
+//				printf("\nКлиент успешно пошел на \n");
+//			}
+//			
+//			CloseHandle(hNamePipie);
+//		}
+//	}
+//
+//
+
+
+HANDLE hNamePipie;// дескриптор канала
+LPSTR lipzPipe = L"\\\\.\\pipe\\MyPipe";
+char read_buf[MAX_BUF_SIZE];
+char write_buf[MAX_BUF_SIZE];
+while (1)
+{
+    // Открытие именованного канала для чтения
+    hNamePipie = CreateNamedPipe(lipzPipe, PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, PIPE_UNLIMITED_INSTANCES, SIWPO_SIZE, SIWPO_SIZE, INFINITE, NULL);
+
+    // Чтение данных от клиента
+    read(hNamePipie, read_buf, sizeof(read_buf));
+
+    // Преобразование строки в число
+    int number = atoi(read_buf);
+
+    // Проверка корректности ввода
+    if (number == 0 && strcmp(read_buf, "0") != 0)
+    {
+        // Формирование сообщения об ошибке
+        snprintf(write_buf, sizeof(write_buf), "Некорректный ввод: '%s'", read_buf);
+    }
+    else
+    {
+        // Возведение числа в квадрат
+        int square = number * number;
+
+        // Преобразование числа в строку
+        snprintf(write_buf, sizeof(write_buf), "%d", square);
+    }
+
+    // Закрытие именованного канала для чтения
+    close(hNamePipie);
+
+    // Открытие именованного канала для записи
+    hNamePipie = CreateNamedPipe(lipzPipe, PIPE_ACCESS_DUPLEX, PIPE_TYPE_MESSAGE | PIPE_READMODE_MESSAGE | PIPE_WAIT, PIPE_UNLIMITED_INSTANCES, SIWPO_SIZE, SIWPO_SIZE, INFINITE, NULL);
+
+
+    // Запись результата в канал
+    write(hNamePipie, write_buf, strlen(write_buf) + 1);
+
+    // Закрытие именованного канала для записи
+    close(hNamePipie);
+}
+
+return 0;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+}
+

+ 135 - 0
Kanal/Kanal.vcxproj

@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <VCProjectVersion>16.0</VCProjectVersion>
+    <Keyword>Win32Proj</Keyword>
+    <ProjectGuid>{aa13b44c-2ccb-4ef1-a6f8-93769f824311}</ProjectGuid>
+    <RootNamespace>Kanal</RootNamespace>
+    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <PlatformToolset>v143</PlatformToolset>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <CharacterSet>Unicode</CharacterSet>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <SDLCheck>true</SDLCheck>
+      <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ConformanceMode>true</ConformanceMode>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ConformanceMode>true</ConformanceMode>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <SDLCheck>true</SDLCheck>
+      <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ConformanceMode>true</ConformanceMode>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <FunctionLevelLinking>true</FunctionLevelLinking>
+      <IntrinsicFunctions>true</IntrinsicFunctions>
+      <SDLCheck>true</SDLCheck>
+      <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <ConformanceMode>true</ConformanceMode>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>
+      <OptimizeReferences>true</OptimizeReferences>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="Kanal.c" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>

+ 22 - 0
Kanal/Kanal.vcxproj.filters

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="Исходные файлы">
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+      <Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+    </Filter>
+    <Filter Include="Файлы заголовков">
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+      <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
+    </Filter>
+    <Filter Include="Файлы ресурсов">
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="Kanal.c">
+      <Filter>Исходные файлы</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>