public void Test()
        {
            string pipeName = "NamedPipeUtilsTests";
            string msg      = "Friends, Romans, countrymen, lend me your ears; I come to bury Caesar, not to praise him";

            Task.Run(() => { NamedPipeUtils.SendMsg(pipeName, msg); });

            var receivedMsg = NamedPipeUtils.ReceiveMsg(".", pipeName);

            Assert.AreEqual(msg, receivedMsg);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            try
            {
                Console.Title = "Process 2";

                Console.WriteLine("Waiting for Process 1...\n");

                var msg = NamedPipeUtils.ReceiveMsg(".", "testproject");

                Console.WriteLine("-------- Received data --------");
                Console.WriteLine(msg);

                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            try
            {
                Console.Title = "Process 1";

                Console.WriteLine("Checking for Process 2...\n");
                RunProcessTwo();

                Console.WriteLine($"Reading {File}...\n");
                var xmlData = GetXmlData(File);
                var msg     = ArraryToString(xmlData);

                Console.WriteLine("Sending data...\n");
                NamedPipeUtils.SendMsg("testproject", msg);

                Console.WriteLine("Done.");
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Beispiel #4
0
        public Task <int> Execute()
        {
            Console.WriteLine($"Caller Pid: {ProcessHelper.GetCallerPid()}");

            var  id      = WindowsIdentity.GetCurrent();
            bool isAdmin = ProcessHelper.IsAdministrator();

            Console.Write($"Running as:\n  User: "******"  Sid: {id.User}\n  Is Admin: ");

            if (isAdmin)
            {
                Console.ForegroundColor = ConsoleColor.Red;
            }

            Console.WriteLine(ProcessHelper.IsAdministrator());
            Console.ResetColor();

            Console.Write($"  Integrity Level: ");
            var integrity       = ProcessHelper.GetCurrentIntegrityLevel();
            var integrityString = string.Empty;

            if (Enum.IsDefined(typeof(IntegrityLevel), integrity))
            {
                integrityString = $"{((IntegrityLevel)integrity).ToString()}";
            }

            if (integrity >= (int)IntegrityLevel.High)
            {
                Console.ForegroundColor = ConsoleColor.Red;
            }

            Console.WriteLine($"{integrityString} ({integrity})");
            Console.ResetColor();

            Console.WriteLine($"\nCredentials Cache:\n  Mode: {Settings.CacheMode.Value.ToString()}\n  Available for this process: {NamedPipeClient.IsServiceAvailable()}");
            var pipes = NamedPipeUtils.ListNamedPipes();

            Console.WriteLine($"  Total active cache sessions: {pipes.Count}");

            foreach (string s in pipes)
            {
                Console.WriteLine($"    {s}");
            }

            if (Console.IsInputRedirected || Console.IsOutputRedirected || Console.IsErrorRedirected)
            {
                Console.WriteLine($"\nProcesses attached to the current **REDIRECTED** console:");
            }
            else
            {
                Console.WriteLine($"\nProcesses attached to the current console:");
            }

            PrintConsoleProcessList();

            return(Task.FromResult(0));
        }