Ver código fonte

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

СазоноваАА 10 meses atrás
pai
commit
c02587c86e

+ 31 - 0
KanalKlient.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}") = "KanalKlient", "KanalKlient\KanalKlient.vcxproj", "{FCFDCDC6-D739-44A3-830B-A42E1DF30505}"
+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
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Debug|x64.ActiveCfg = Debug|x64
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Debug|x64.Build.0 = Debug|x64
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Debug|x86.ActiveCfg = Debug|Win32
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Debug|x86.Build.0 = Debug|Win32
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Release|x64.ActiveCfg = Release|x64
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Release|x64.Build.0 = Release|x64
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Release|x86.ActiveCfg = Release|Win32
+		{FCFDCDC6-D739-44A3-830B-A42E1DF30505}.Release|x86.Build.0 = Release|Win32
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {34DB4641-C74C-4260-9D13-EC69A8C24D37}
+	EndGlobalSection
+EndGlobal

+ 121 - 0
KanalKlient/KanalKlient.c

@@ -0,0 +1,121 @@
+#include <Windows.h>
+#include <malloc.h>
+#include <stdio.h>
+#include <locale.h>
+#define MAX_BUF_SIZE 1024
+#define SIZE_BUFFER 140
+
+int main()
+{
+	system("chcp 1251");
+	LPSTR lipzPipe = L"\\\\.\\pipe\\MyPipe";
+
+	DWORD vis_size = SIZE_BUFFER;
+	DWORD actual_WRITER;
+	DWORD actual_reader;
+	LPWSTR buffer = (CHAR*)calloc(vis_size, sizeof(CHAR));// сюда считаем файлы(данные)
+	char messege[SIZE_BUFFER];
+	BOOL flag_otvet = TRUE;
+	BOOL SecceRead;
+	HANDLE hNamePipe;//Дескриптор файла
+	//while (TRUE)
+	//{
+	//	hNamePipe = CreateFile(lipzPipe, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);//открываем канал, по аналогии с кналом
+	//	/*WaitNamedPipe(lipzPipe, INFINITE);*/
+	//	DWORD dwMode = PIPE_READMODE_MESSAGE;
+	//	BOOL IsSSSS = SetNamedPipeHandleState(hNamePipe, &dwMode, NULL, NULL);
+	//	if (!IsSSSS)
+	//	{
+	//		printf("\nСервер не отвечает \n");
+	//		flag_otvet = TRUE;
+	//	}
+	//	else
+	//	{
+	//		if (flag_otvet)
+	//		{
+	//			printf("введите сообщение для сервера: \n");
+	//			gets(messege);
+	//			buffer = &messege;
+	//			WriteFile(hNamePipe, buffer, vis_size, &actual_WRITER, NULL);
+	//			flag_otvet = FALSE;
+	//		}
+	//		SecceRead = ReadFile(hNamePipe, buffer, SIZE_BUFFER, &actual_reader, NULL);
+	//			if (SecceRead)
+	//			{
+	//				printf("\nСервер пишет и  пишет..\n");
+	//				printf(buffer);
+	//				printf("\n");
+	//				flag_otvet = TRUE;
+	//				if (buffer == NULL)
+	//				{
+	//					printf("Пусто");
+	//				}
+
+	//			}
+
+	//	}
+	//	Sleep(30000);
+	//	CloseHandle(hNamePipe);
+	//}
+
+
+
+	char read_buf[MAX_BUF_SIZE];
+	char write_buf[MAX_BUF_SIZE];
+
+	// Открытие именованного канала для записи
+	hNamePipe = CreateFile(lipzPipe, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
+	while (1)
+	{
+		// Ввод числа
+		int number;
+		printf("Введите число: ");
+		scanf_s("%d", &number);
+
+		// Преобразование числа в строку
+		snprintf(write_buf, sizeof(write_buf), "%d", number);
+
+		// Запись числа в канал
+		write(hNamePipe, write_buf, strlen(write_buf) + 1);
+
+		// Открытие именованного канала для чтения
+		SecceRead = ReadFile(hNamePipe, buffer, MAX_BUF_SIZE, &actual_reader, NULL);
+
+		// Чтение результата от сервера
+		read(hNamePipe, read_buf, sizeof(read_buf));
+
+		// Вывод результата
+		printf("Результат: %s\n", read_buf);
+
+		// Закрытие именованного канала для чтения
+		CloseHandle(hNamePipe);
+
+		// Открытие именованного канала для записи
+		hNamePipe = CreateFile(lipzPipe, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
+	}
+
+	// Закрытие именованного канала для записи
+	CloseHandle(hNamePipe);
+
+	return 0;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+}

+ 135 - 0
KanalKlient/KanalKlient.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>{fcfdcdc6-d739-44a3-830b-a42e1df30505}</ProjectGuid>
+    <RootNamespace>KanalKlient</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="KanalKlient.c" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>

+ 22 - 0
KanalKlient/KanalKlient.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="KanalKlient.c">
+      <Filter>Исходные файлы</Filter>
+    </ClCompile>
+  </ItemGroup>
+</Project>