PermissionError: [Ошибка 13] В доступе отказано: «Com6» - PullRequest
0 голосов
/ 24 июня 2019

Я создаю консольное приложение на c #, которое включает python.exe(psi.FileName = @"C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\python";).Также я передаю свой файл Python в переменную (var script = @"C:\Users\Anas Younus\source\repos\PythonInConsoleApp\PythonInConsoleApp\pixhawk.py";), и этот файл выполняется через компилятор Python всякий раз, когда я запускаю свое приложение.Проблема заключается в том, что всякий раз, когда я запускаю свой файл python напрямую через pycharm или Idle, он дает правильный результат, но всякий раз, когда я запускаю свое приложение на c #, он выдает ошибку com, которая Permission Error: [Error 13] Permission denied COM6.

inчто я передаю свой файл python, поэтому всякий раз, когда я запускаю свое приложение. Каждый раз, когда я запускаю файл python напрямую, чтобы он работал так хорошо

Почти я попробовал все, включая запуск от имени администратора и изменение моего COM-порта из диспетчера устройств.Даже я сделал нового пользователя моей системы и дал ему все права администратора, но он больше не работает.На самом деле у меня есть дрон, который имеет модуль #Pixhawk, который имеет следующие библиотеки:

from dronekit import connect, Command, LocationGlobal
from pymavlink import mavutil
import serial

Я выполнил бэкэнд-кодирование для дронов и в pycharm и в режиме ожидания, он работает нормально, но всякий раз, когда я запускаю свое приложение черезVisual Studio (как я уже упоминал выше, это проект на C #, потому что я хочу разработать интерфейс и станцию ​​управления моим дроном на C #), он показывает ошибку.* Измените скорость передачи данных, но это также не работает

Это мой код C #, в котором я передаю файл PYTHON, и у меня в нем PYTHON.EXE.

using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PythonInConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // 1) Create Process Info
            var psi = new ProcessStartInfo();
            psi.FileName = @"C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64\python";

            // 2) Provide script and arguments
            var script = @"C:\Users\Anas Younus\source\repos\PythonInConsoleApp\PythonInConsoleApp\pixhawk.py";

            psi.Arguments = $"\"{script}\"";

            // 3) Process configuration
            psi.UseShellExecute = false;
            psi.CreateNoWindow = true;
            psi.RedirectStandardOutput = true;
            psi.RedirectStandardError = true;

            // 4) Execute process and get output
            var errors = "";
            var results = "";

            using (var process = Process.Start(psi))
            {
                errors = process.StandardError.ReadToEnd();
                results = process.StandardOutput.ReadToEnd();
            }
            // 5) Display output
            Console.WriteLine("ERRORS:");
            Console.WriteLine(errors);
            Console.WriteLine();
            Console.WriteLine("Results:");
            Console.WriteLine(results);
            Console.ReadKey();
        }
    }

   }

ЭТОЯвляется ли мой код файла PYTHON


from dronekit import connect, Command, LocationGlobal
from pymavlink import mavutil
import serial


import time, sys, argparse, math


connection_string= '127.0.0.1:14550'
# https://github.com/PX4/Firmware/blob/master/Tools/mavlink_px4.py


# Parse connection argument
parser = argparse.ArgumentParser()
parser.add_argument("-c", "--connect", help="connection string")
args = parser.parse_args()

if args.connect:
    connection_string = args.connect



print ("Connecting")
#vehicle = connect('COM6', baud='57600',wait_ready=True)
ss = connect
while True:
    print(" heartbeat: %s" % vehicle.last_heartbeat)
    print(" Armed: %s" % vehicle._autopilot_type)
    print(" System status: %s" % vehicle.system_status.state)
    print(" home location: %s" % vehicle.location.global_relative_frame)
    print(" Alt: %s" % vehicle.location.global_relative_frame.alt)
    time.sleep(1)

Я хочу устранить эту ошибку, чтобы я мог показать свои выходные данные в Visual Studio с помощью консоли C #. Мой желаемый вывод - показать биение, высоту, состояние, местоположение и т. Д.в моей консоли C #, хотя он показывает в консоли Python, но дает мне ошибку на консоли C #.Пожалуйста, помогите мне мой последний год проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...