{"id":340,"date":"2011-11-05T20:10:03","date_gmt":"2011-11-05T18:10:03","guid":{"rendered":"http:\/\/www.jakeroid.com\/?p=340"},"modified":"2011-11-05T20:10:03","modified_gmt":"2011-11-05T18:10:03","slug":"gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp","status":"publish","type":"post","link":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/","title":{"rendered":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#"},"content":{"rendered":"<div class=\"entry\">\n<p>\u0414\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435, <em>GUI<\/em> (<em>Graphical user interface)<\/em>\u00a0&#8212; \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0422\u043e \u0435\u0441\u0442\u044c \u044d\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439, \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041d\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 <em>GUI<\/em>. \u041e\u0431\u044b\u0447\u043d\u043e \u0438\u0445 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 &#171;\u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&#187;.<\/p>\n<p>\u0421\u0435\u0433\u043e\u0434\u043d\u044f \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0432\u0430\u043c \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c <em>GUI<\/em>\u00a0 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0412 \u044d\u0442\u043e\u043c \u043d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e, \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u0437\u043d\u0430\u0442\u044c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/p>\n<p>\u0417\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0448\u0443 \u043f\u043e\u0434 \u043a\u0430\u0442.<\/p>\n<p><!--more-->\u0418 \u0442\u0430\u043a, \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u043a\u043b\u0430\u0441\u0441, \u0441\u043e \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043d\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u042f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <em>Visual Studio 2010<\/em>, <em>C#<\/em> \u0438 <em>.NET 4.0<\/em>. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u0432 \u043d\u0435\u043c \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u043a\u0430\u0440\u043a\u0430\u0441 \u043a\u043b\u0430\u0441\u0441\u0430.<\/p>\n<pre class=\"brush:csharp\">using System;\n\nnamespace jLibrary\n{\n    static class EXEStarter\n    {\n        static public void Start();\n    }\n}<\/pre>\n<p>\u0412 <em>.NET<\/em> \u0435\u0441\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 <em>*.exe<\/em> \u0444\u0430\u0439\u043b\u043e\u0432. \u0427\u0442\u043e \u0431\u044b \u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0438\u043c\u0435\u043d\u00a0<em>System.Diagnostics<\/em>. \u0414\u043e\u043f\u0438\u0448\u0435\u043c \u0432 \u043d\u0430\u0447\u0430\u043b\u043e \u0444\u0430\u0439\u043b\u0430:<\/p>\n<pre class=\"brush:csharp\">using System.Diagnostics;<\/pre>\n<p>\u0414\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043b\u044e\u0431\u043e\u0433\u043e <em>*.exe<\/em> \u0444\u0430\u0439\u043b\u0430 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043a\u043b\u0430\u0441\u0441 <em><a title=\"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 Process \u043d\u0430 msdn\" href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/system.diagnostics.process(v=VS.100).aspx\" target=\"_blank\" rel=\"noopener\">Process<\/a><\/em>. \u041f\u0440\u043e\u0441\u0442\u043e\u0439 \u0437\u0430\u043f\u0443\u0441\u043a <em>*.exe<\/em> \u0444\u0430\u0439\u043b\u0430 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre class=\"brush:csharp\">        static public void Start(string filename)\n        {\n            using (Process MyProc = new Process())\n            {\n                MyProc.StartInfo.FileName = filename;\n                MyProc.Start();\n            }\n        }<\/pre>\n<p>\u0427\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0435\u0442 \u0432\u043e \u0432\u0440\u0435\u043c\u044f <em>MyProc.Start()<\/em>? \u041d\u0430\u0448\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442 <em>*.exe<\/em> \u0444\u0430\u0439\u043b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0432 <em>filename<\/em>, \u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435. \u0415\u0441\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b, \u043d\u043e \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0442\u0430\u043a\u043e\u0439, \u0442\u0430\u043a \u043a\u0430\u043a \u0434\u0430\u043b\u0435\u0435, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430<em> StartInfo<\/em> \u0443\u0434\u043e\u0431\u043d\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0437\u0430\u043f\u0443\u0441\u043a\u0430.<\/p>\n<p>\u0410 \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e, \u0447\u0442\u043e \u0431\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430(\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442)\u00a0\u0434\u043e\u0436\u0434\u0430\u043b\u0430\u0441\u044c\u00a0\u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b? \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u0443 \u043a\u043b\u0430\u0441\u0441\u0430 <em>Process<\/em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <em>WaitForExit<\/em>. \u041e\u043d \u043d\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u043f\u043e\u043a\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f. \u0415\u0433\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u043a \u043f\u0440\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f, \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0438\u0441\u043d\u0435\u0442 &#8212; \u0438\u0437-\u0437\u0430 \u043d\u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u043d\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u0438\u043b\u0438 \u043f\u043e\u0442\u043e\u043a \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0435\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438. <em>WaitForExit<\/em> \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u0437\u043e\u0432\u0430 <em>Start<\/em>, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<pre class=\"brush:csharp\">static public void Start(string filename)\n{\n\tusing (Process MyProc = new Process())\n\t{\n\t\tMyProc.StartInfo.FileName = filename;\n\t\tMyProc.Start();\n\t\tMyProc.WaitForExit();\n\t}\n}<\/pre>\n<p>\u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043c\u0435\u0442\u043e\u0434 <em>Start<\/em> \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 <em>EXEStarter<\/em> \u0442\u0430\u043a, \u0447\u0442\u043e \u0431\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043c\u043e\u0433 \u0441\u0430\u043c \u0437\u0430\u0434\u0430\u0442\u044c &#171;\u0436\u0434\u0430\u0442\u044c \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0438\u043b\u0438 \u043d\u0435\u0442&#187;. \u042d\u0442\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u0442\u0440\u0443\u0434\u043d\u043e:<\/p>\n<pre class=\"brush:csharp\">static public void Start(string filename, bool waitforexit)\n{\n\tusing (Process MyProc = new Process())\n\t{\n\t\tMyProc.StartInfo.FileName = filename;\n\t\tMyProc.Start();\n\t\tif (waitforexit)\n\t\t\tMyProc.WaitForExit();\n\t}\n}<\/pre>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e \u0438\u0437 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430 \u043a\u043e\u0434\u0430, \u0435\u0441\u043b\u0438 <em>waitforexit<\/em> \u0440\u0430\u0432\u043d\u043e <em>true<\/em>, \u0437\u043d\u0430\u0447\u0438\u0442 \u043c\u0435\u0442\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0436\u0434\u0430\u0442\u044c \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u043d\u0443 \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442. \u0418\u0434\u0435\u043c \u0434\u0430\u043b\u044c\u0448\u0435. \u0414\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438. \u0423 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 <em>StartInfo<\/em> \u043a\u043b\u0430\u0441\u0441\u0430 <em>Process<\/em>, \u0435\u0441\u0442\u044c \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e\u00a0<em>Arguments<\/em>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0443\u044e \u0432\u0441\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0441\u043d\u043e\u0432\u0430 \u0434\u043e\u043f\u0438\u0448\u0435\u043c \u043d\u0430\u0448 \u043c\u0435\u0442\u043e\u0434 <em>Start<\/em>.<\/p>\n<pre class=\"brush:csharp\">static public void Start(string filename, string arguments, bool waitforexit)\n{\n\tusing (Process MyProc = new Process())\n\t{\n\t\tMyProc.StartInfo.FileName = filename;\n\t\tMyProc.StartInfo.Arguments = arguments;\n\t\tMyProc.Start();\n\t\tif (waitforexit)\n\t\t\tMyProc.WaitForExit();\n\t}\n}<\/pre>\n<p>\u041d\u0435\u043f\u043b\u043e\u0445\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0435\u0449\u0435 \u0441\u043a\u0440\u044b\u0442\u044c \u043e\u043a\u043d\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d\u043e \u043d\u0435 \u043d\u0435\u0441\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432 <em>StartInfo<\/em> \u0435\u0441\u0442\u044c \u0431\u0443\u043b\u0435\u0432\u043e\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e\u00a0<em>CreateNoWindow<\/em>. \u041a\u0430\u043a \u0432\u044b \u0443\u0436\u0435 \u0434\u043e\u0433\u0430\u0434\u0430\u043b\u0438\u0441\u044c, \u0435\u0441\u043b\u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0435\u043c\u0443 <em>true<\/em> &#8212; \u043e\u043a\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442. \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043f\u0435\u0440\u0435\u0434 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u043e\u0447\u043a\u0443:<\/p>\n<pre class=\"brush:csharp\">MyProc.StartInfo.CreateNoWindow = true;<\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043e\u043a\u043e\u0448\u043a\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c\u0441\u044f. \u041c\u043e\u0436\u043d\u043e \u0442\u0430\u043a \u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443:<\/p>\n<pre class=\"brush:csharp\">MyProc.StartInfo.UseShellExecute = false;<\/pre>\n<p>\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u043e <em>UseShellExecute<\/em> \u043a\u0430\u043a \u0432\u044b \u0443\u0436\u0435 \u0434\u043e\u0433\u0430\u0434\u0430\u043b\u0438\u0441\u044c \u0431\u0443\u043b\u0435\u0432\u043e\u0435 \u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0442\u043e, \u0431\u0443\u0434\u0435\u0442 \u043b\u0438 \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0430 \u041e\u0421. \u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432 <em>true<\/em>, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0432 <em>FileName<\/em> \u0437\u0430\u0434\u0430\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e <em>*.exe<\/em> \u0444\u0430\u0439\u043b, \u0430 \u0438 \u043b\u044e\u0431\u043e\u0439 \u0434\u0440\u0443\u0433\u043e\u0439, \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0441\u0441\u044b\u043b\u043a\u0443, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435\u00a0\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e\u00a0\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 \u041e\u0421 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n<p>\u041e\u043f\u044f\u0442\u044c \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u0435\u0442\u043e\u0434 <em>Start<\/em> \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430, \u0447\u0442\u043e \u0431\u044b \u043e\u043d \u043c\u043e\u0433 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043c\u0435\u043d\u044c\u0448\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<pre class=\"brush:csharp\">        static public void Start(string filename, bool waitforexit)\n        {\n            Start(filename, \"\", waitforexit);\n        }\n\n        static public void Start(string filename)\n        {\n            Start(filename, \"\", false);\n        }<\/pre>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432\u0441\u0435 \u0435\u0449\u0435 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u043e\u0431\u043d\u043e\u0439. \u042f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u043a\u043b\u0430\u0441\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0442\u0430\u043b \u0431\u044b \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438. \u0418\u0437 \u0447\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438? \u0418\u0437 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u0430\u043a:<em> &#171;-t 60&#187;<\/em>, \u0442\u043e \u0435\u0441\u0442\u044c <em>&#171;-t&#187;<\/em> \u0438\u043c\u044f, \u0430 <em>&#171;60&#187;<\/em> &#8212; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041c\u043d\u043e\u0433\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u043e\u0433\u0443\u0442 \u043d\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u041d\u0430\u0447\u043d\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430.<\/p>\n<pre class=\"brush:csharp\">    class ComandLineArgument\n    {\n        public string Name { get; set; }\n        public string Value { get; set; }\n    }<\/pre>\n<p>\u041d\u043e \u0432 \u0442\u0430\u043a\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u044d\u0442\u043e \u043d\u0435 \u043a\u043b\u0430\u0441\u0441, \u0430 \u043b\u0438\u0448\u043d\u0438\u0439 \u043a\u043e\u0434. \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043c\u0435\u0442\u043e\u0434 <em>ToString<\/em>. \u041a\u0441\u0442\u0430\u0442\u0438, \u043e\u0447\u0435\u043d\u044c \u0447\u0430\u0441\u0442\u043e \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u043f\u0443\u0442\u044c \u043a \u043a\u0430\u043a\u043e\u043c\u0443-\u043b\u0438\u0431\u043e \u0444\u0430\u0439\u043b\u0443. \u0415\u0441\u043b\u0438 \u0432 \u044d\u0442\u043e\u043c \u043f\u0443\u0442\u0438 \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0431\u0435\u043b\u044b, \u043d\u0443\u0436\u043d\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c\u00a0\u043a\u0430\u0432\u044b\u0447\u043a\u0438. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u044d\u0442\u043e \u0443\u0447\u0435\u0441\u0442\u044c.<\/p>\n<pre class=\"brush:csharp\">    class ComandLineArgument\n    {\n        public string Name { get; set; }\n        public string Value { get; set; }\n        public override string ToString()\n        {\n            string result = Name;\n            if (Value != null)\n                result += \" \"\" + Value + \"\"\";\n            return result;\n        }\n    }<\/pre>\n<p>\u042f \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u0438\u043b \u043c\u0435\u0442\u043e\u0434 <em>ToString<\/em>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u0441\u0442\u0430\u043b\u0441\u044f \u043a\u043b\u0430\u0441\u0441\u0443 \u043e\u0442 <em>Object<\/em>. \u0415\u0441\u043b\u0438 <em>Value<\/em> \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044e \u043a\u0430\u0432\u044b\u0447\u043a\u0438 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044e \u0441\u0442\u0440\u043e\u043a\u0443. \u0414\u043e\u043f\u0438\u0448\u0435\u043c \u0435\u043c\u0443 \u0435\u0449\u0435 2 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430, \u043e\u0434\u0438\u043d \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u043c\u044f, \u0434\u0440\u0443\u0433\u043e\u0439 \u0438\u043c\u044f \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/p>\n<pre class=\"brush:csharp\">        public ComandLineArgument(string name)\n        {\n            this.Name = name;\n        }\n        public ComandLineArgument(string name, string value)\n        {\n            this.Name = name;\n            this.Value = value;\n        }<\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043a\u043b\u0430\u0441\u0441 \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d. \u041d\u043e \u0435\u0433\u043e \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0432\u0435\u0434\u044c \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f 10 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u0437\u0430\u043f\u0443\u0441\u043a <em>*.exe<\/em>\u00a0\u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f\u00a0\u0441\u043e\u0437\u0434\u0430\u0442\u044c 10 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u044d\u0442\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432\u044b\u0437\u0432\u0430\u0442\u044c <em>ToString<\/em>. \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043a\u043b\u0430\u0441\u0441 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435<em> List<\/em> \u0438\u0437\u00a0<em>System.Collections.Generic<\/em>. \u0412\u043e\u0442 \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c:<\/p>\n<pre class=\"brush:csharp\">    class ComandLineArgumentsList : List&lt;ComandLineArgument&gt;\n    {\n        public override string ToString()\n        {\n            string result = string.Empty;\n            foreach (ComandLineArgument arg in this)\n                result += arg.ToString() + ' ';\n            return result;\n        }\n    }<\/pre>\n<p>\u041c\u0435\u0442\u043e\u0434\u044b<em> List<\/em> \u0431\u0443\u0434\u0443\u0442 \u0441\u043b\u0443\u0436\u0438\u0442\u044c \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0430 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 <em>ToString<\/em> \u0432\u0435\u0440\u043d\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043f\u0440\u043e\u0431\u0435\u043b\u0430\u043c\u0438.<\/p>\n<p>\u0421 \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438 \u0432\u0441\u0435. \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e \u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0430\u0440\u0445\u0438\u0432\u0430\u0442\u043e\u0440 <em><a title=\"\u041e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0430\u0439\u0442 7zip\" href=\"http:\/\/www.7-zip.org\/\" target=\"_blank\" rel=\"noopener\">7zip<\/a><\/em>. \u0427\u0442\u043e \u0431\u044b\u00a0\u0437\u0430 \u0430\u0440\u0445\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u00a0\u0444\u0430\u0439\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<pre class=\"brush:shell\">%7zip Path% a %Output Path% %Input Path%<\/pre>\n<p>\u0413\u0434\u0435 <em>%7zip Path%<\/em> &#8212; \u043f\u0443\u0442\u044c \u043a <em>7z.exe<\/em>, <em>&#171;a&#187;<\/em>\u00a0&#8212; \u043e\u043f\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0430\u0440\u0445\u0438\u0432, <em>%Output Path%<\/em> &#8212; \u043f\u0443\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430, <em>%Input Path%<\/em> &#8212; \u043f\u0443\u0442\u044c \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430. \u0421\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0434\u043b\u044f <em>7zip<\/em> \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0432 <em>7zip<\/em> \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c. \u042f \u0441\u043e\u0437\u0434\u0430\u043b \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0444\u043e\u0440\u043c\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e<em> WinForms<\/em>. <a href=\"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-359\" title=\"3e7616ca16166f04ce7b251682fe1ddf\" alt=\"\u041f\u0440\u043e\u0441\u0442\u0430\u044f \u0444\u043e\u0440\u043c\u0430 \u0423\u043f\u0430\u043a\u043e\u0432\u0449\u0438\u043a\u0430\" src=\"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png\" width=\"239\" height=\"94\" \/><\/a>\u00a0\u041f\u043e\u043c\u0435\u0441\u0442\u0438\u043b \u043d\u0430 \u043d\u0435\u0435 1 \u043a\u043d\u043e\u043f\u043a\u0443. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b \u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0443 \u0441\u0432\u043e\u0438 \u0444\u0430\u0439\u043b\u044b \u0441 \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438<em> EXEStarter<\/em>, <em>ComanLineArgument<\/em> \u0438 <em>ComandLineArgumentsList<\/em>. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043d\u043e\u043f\u043a\u0438. \u041e\u043d \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0438 \u0432\u044b\u0431\u043e\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432, \u0430 \u043f\u043e\u0442\u043e\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0430\u0440\u0445\u0438\u0432\u0438\u0440\u0443\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b. \u041a\u043e\u0434 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439:<\/p>\n<p>&nbsp;<\/p>\n<pre class=\"brush:csharp\">using System;\nusing System.Windows.Forms;\nusing jLibrary;\n\nnamespace _7z_GUI\n{\n    public partial class formMain : Form\n    {\n        public formMain()\n        {\n            InitializeComponent();\n        }\n\n        private void btnPack_Click(object sender, EventArgs e)\n        {\n            string _7zPath; \/\/\u043f\u0443\u0442\u044c \u043a 7z.exe\n            string InPath; \/\/\u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c\u0443 \u0444\u0430\u0439\u043b\u0443\n            string OutPath; \/\/\u043f\u0443\u0442\u044c \u043a \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443\n\n            OpenFileDialog ofd = new OpenFileDialog(); \/\/\u043e\u0431\u044a\u0435\u043a\u0442 \u0434\u0438\u0430\u043b\u043e\u0433\u0430 \u0432\u044b\u0431\u043e\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\n            ofd.Title = \"\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 7z.exe\"; \/\/\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u043e\u043a\u043d\u0430 \u0434\u0438\u0430\u043b\u043e\u0433\u0430\n            ofd.ShowDialog(); \/\/\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0434\u0438\u0430\u043b\u043e\u0433\n            _7zPath = ofd.FileName; \/\/\u043f\u0440\u0438\u0441\u0432\u0430\u0435\u0432\u0430\u0435\u043c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439\n\n            \/\/\u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c\u0443\n            ofd.Title = \"\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\";\n            ofd.ShowDialog();\n            InPath = ofd.FileName;\n\n            \/\/\u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c\u0443, \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f SaveFileDialog\n            SaveFileDialog sfd = new SaveFileDialog();\n            sfd.Filter = \"\u0410\u0440\u0445\u0438\u0432 ZIP (*.zip)|*.zip\"; \/\/\u0424\u0438\u043b\u044c\u0442\u0440 \u0444\u0430\u0439\u043b\u043e\u0432\n            sfd.ShowDialog();\n            OutPath = sfd.FileName;\n\n            \/\/\u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432\n            ComandLineArgumentsList args = new ComandLineArgumentsList();\n            args.Add(new ComandLineArgument(\"a\")); \/\/\u043f\u0435\u0440\u0432\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\n            args.Add(new ComandLineArgument(\"\"\" + OutPath + \"\"\")); \/\/\u043f\u0443\u0442\u044c \u043a \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c\u0443 \u0444\u0430\u0439\u043b\u0443\n            args.Add(new ComandLineArgument(\"\"\" + InPath + \"\"\")); \/\/\u043f\u0443\u0442\u044c \u043a \u0430\u0440\u0445\u0438\u0432\u0443\n\n            EXEStarter.Start(_7zPath, args.ToString(), true); \/\/\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c 7z.exe\n        }\n    }\n}<\/pre>\n<p>&nbsp;<\/p>\n<p>\u0412\u043e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0438 \u0432\u0441\u0435. \u0417\u0430\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u0432\u043e\u0438 \u043e\u0442\u0432\u0435\u0442\u044b. \u041f\u0438\u0448\u0438\u0442\u0435 \u043f\u043e\u0436\u0435\u043b\u0430\u043d\u0438\u044f, \u043a\u0440\u0438\u0442\u0438\u043a\u0443 \u0438 \u0441\u043e\u043e\u0431\u0449\u0430\u0439\u0442\u0435 \u043e \u043c\u043e\u0438\u0445 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u0448\u0438\u0431\u043a\u0430\u0445.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u0414\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435, GUI (Graphical user interface)\u00a0&#8212; \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0422\u043e \u0435\u0441\u0442\u044c \u044d\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439, \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041d\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 GUI. \u041e\u0431\u044b\u0447\u043d\u043e \u0438\u0445 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 &#171;\u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f&#187;. \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0432\u0430\u043c \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c GUI\u00a0 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0412 \u044d\u0442\u043e\u043c \u043d\u0435\u0442 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[9,19,91],"class_list":["post-340","post","type-post","status-publish","format-standard","category-it-tematika","tag-net","tag-csharp","tag-programmirovanie-2","anons"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#<\/title>\n<meta name=\"description\" content=\"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/\" \/>\n<meta property=\"og:locale\" content=\"ru_RU\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#\" \/>\n<meta property=\"og:description\" content=\"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/\" \/>\n<meta property=\"og:site_name\" content=\"\u0431\u043b\u043e\u0433 Jakeroid&#039;\u0430\" \/>\n<meta property=\"article:published_time\" content=\"2011-11-05T18:10:03+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png\" \/>\n<meta name=\"author\" content=\"Jakeroid\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0430\u0432\u0442\u043e\u0440\u043e\u043c\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jakeroid\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 \u043c\u0438\u043d\u0443\u0442\u044b\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/\"},\"author\":{\"name\":\"Jakeroid\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/#\\\/schema\\\/person\\\/74e0fe41cca483a097f04e737be06e0e\"},\"headline\":\"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#\",\"datePublished\":\"2011-11-05T18:10:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/\"},\"wordCount\":782,\"commentCount\":6,\"image\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/136513.jakero00.web.hosting-test.net\\\/wp-content\\\/uploads\\\/2011\\\/11\\\/3e7616ca16166f04ce7b251682fe1ddf.png\",\"keywords\":[\".NET\",\"csharp\",\"\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\"],\"articleSection\":[\"IT \u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430\"],\"inLanguage\":\"ru-RU\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/\",\"url\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/\",\"name\":\"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/136513.jakero00.web.hosting-test.net\\\/wp-content\\\/uploads\\\/2011\\\/11\\\/3e7616ca16166f04ce7b251682fe1ddf.png\",\"datePublished\":\"2011-11-05T18:10:03+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/#\\\/schema\\\/person\\\/74e0fe41cca483a097f04e737be06e0e\"},\"description\":\"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#breadcrumb\"},\"inLanguage\":\"ru-RU\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#primaryimage\",\"url\":\"http:\\\/\\\/136513.jakero00.web.hosting-test.net\\\/wp-content\\\/uploads\\\/2011\\\/11\\\/3e7616ca16166f04ce7b251682fe1ddf.png\",\"contentUrl\":\"http:\\\/\\\/136513.jakero00.web.hosting-test.net\\\/wp-content\\\/uploads\\\/2011\\\/11\\\/3e7616ca16166f04ce7b251682fe1ddf.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\",\"item\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/#website\",\"url\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/\",\"name\":\"\u0431\u043b\u043e\u0433 Jakeroid&#039;\u0430\",\"description\":\"\u043f\u0440\u043e IT \u0438 \u0432\u0441\u044f\u043a\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ru-RU\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/#\\\/schema\\\/person\\\/74e0fe41cca483a097f04e737be06e0e\",\"name\":\"Jakeroid\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g\",\"caption\":\"Jakeroid\"},\"url\":\"https:\\\/\\\/jakeroid.com\\\/ru\\\/blog\\\/author\\\/jakeroid\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#","description":"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/","og_locale":"ru_RU","og_type":"article","og_title":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#","og_description":"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.","og_url":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/","og_site_name":"\u0431\u043b\u043e\u0433 Jakeroid&#039;\u0430","article_published_time":"2011-11-05T18:10:03+00:00","og_image":[{"url":"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png","type":"","width":"","height":""}],"author":"Jakeroid","twitter_card":"summary_large_image","twitter_misc":{"\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0430\u0432\u0442\u043e\u0440\u043e\u043c":"Jakeroid","\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f":"2 \u043c\u0438\u043d\u0443\u0442\u044b"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#article","isPartOf":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/"},"author":{"name":"Jakeroid","@id":"https:\/\/jakeroid.com\/ru\/#\/schema\/person\/74e0fe41cca483a097f04e737be06e0e"},"headline":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#","datePublished":"2011-11-05T18:10:03+00:00","mainEntityOfPage":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/"},"wordCount":782,"commentCount":6,"image":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#primaryimage"},"thumbnailUrl":"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png","keywords":[".NET","csharp","\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435"],"articleSection":["IT \u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430"],"inLanguage":"ru-RU","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/","url":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/","name":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#","isPartOf":{"@id":"https:\/\/jakeroid.com\/ru\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#primaryimage"},"image":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#primaryimage"},"thumbnailUrl":"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png","datePublished":"2011-11-05T18:10:03+00:00","author":{"@id":"https:\/\/jakeroid.com\/ru\/#\/schema\/person\/74e0fe41cca483a097f04e737be06e0e"},"description":"\u041a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0435\u0440\u0442\u043a\u0443 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f C# \u0438 .NET. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043d\u044e\u0430\u043d\u0441\u044b.","breadcrumb":{"@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/"]}]},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#primaryimage","url":"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png","contentUrl":"http:\/\/136513.jakero00.web.hosting-test.net\/wp-content\/uploads\/2011\/11\/3e7616ca16166f04ce7b251682fe1ddf.png"},{"@type":"BreadcrumbList","@id":"https:\/\/jakeroid.com\/ru\/blog\/gui-obertka-dlya-konsolnogo-prilozheniya-na-csharp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430","item":"https:\/\/jakeroid.com\/ru\/"},{"@type":"ListItem","position":2,"name":"GUI \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 C#"}]},{"@type":"WebSite","@id":"https:\/\/jakeroid.com\/ru\/#website","url":"https:\/\/jakeroid.com\/ru\/","name":"\u0431\u043b\u043e\u0433 Jakeroid&#039;\u0430","description":"\u043f\u0440\u043e IT \u0438 \u0432\u0441\u044f\u043a\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jakeroid.com\/ru\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ru-RU"},{"@type":"Person","@id":"https:\/\/jakeroid.com\/ru\/#\/schema\/person\/74e0fe41cca483a097f04e737be06e0e","name":"Jakeroid","image":{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/secure.gravatar.com\/avatar\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/af6e16536e930fc8349f5518412f00d9056a121a46ae74dc414f5f0fca2204d9?s=96&d=mm&r=g","caption":"Jakeroid"},"url":"https:\/\/jakeroid.com\/ru\/blog\/author\/jakeroid\/"}]}},"_links":{"self":[{"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/posts\/340","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/comments?post=340"}],"version-history":[{"count":0,"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/posts\/340\/revisions"}],"wp:attachment":[{"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/media?parent=340"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/categories?post=340"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jakeroid.com\/ru\/wp-json\/wp\/v2\/tags?post=340"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}