Не видит переменную из входных настроек.

Sherminator

Client
Регистрация
10.09.2021
Сообщения
992
Благодарностей
535
Баллы
93
Добрый вечер, пишу гулялку по яндексу с помощью визуал студии, уже неделю вожусь с данным участком кода, просьба подсказать в какую сторону глядеть, собственно на первом скрине ошибка которая вылетает как только запускаю все это дело, последующие скрины это участки кода отвечающие за выполнение первого. Типа визуал студия не видит переменную в входных настройках или что? С другими переменными проблем нет.
 

Вложения

p-sergei

Client
Регистрация
20.12.2016
Сообщения
523
Благодарностей
255
Баллы
63

Sherminator

Client
Регистрация
10.09.2021
Сообщения
992
Благодарностей
535
Баллы
93
Ну вот так это целиком будет

C#:
 public class Emulation
    {
        Instance instance;
        IZennoPosterProjectModel project;
        public Emulation(Instance _instance, IZennoPosterProjectModel _project)
        {
            instance = _instance;
            project = _project;

        }

        public TouchEmulationParameters CreateParameters()
        {
            //Переменные зенопостер
            Settings.Acceleration = project.Variables["set_Acceleration"].Value;
            Settings.LongTouchLengthMs = project.Variables["set_LongTouchLengthMs"].Value;
            Settings.MaxCurvature = project.Variables["set_MaxCurvature"].Value;
            Settings.MinCurvature = project.Variables["set_MinCurvature"].Value;
            Settings.MaxCurvePeakShift = project.Variables["set_MaxCurvePeakShift"].Value;
            Settings.MinCurvePeakShift = project.Variables["set_MinCurvePeakShift"].Value;
            Settings.MaxStep = project.Variables["set_MaxStep"].Value;
            Settings.MinStep = project.Variables["set_MinStep"].Value;
            Settings.PauseAfterTouchMs = project.Variables["set_PauseAfterTouchMs"].Value;
            Settings.PauseBetweenStepsMs = project.Variables["set_PauseBetweenStepsMs"].Value;
            Settings.PauseBetweenSwipesMs = project.Variables["set_PauseBetweenSwipesMs"].Value;
            Settings.RectangleBasePointPartH = project.Variables["set_RectangleBasePointPartH"].Value;
            Settings.RectangleBasePointPartW = project.Variables["set_RectangleBasePointPartW"].Value;
            Settings.RightThumbProbability = project.Variables["set_RightThumbProbability"].Value;
            Settings.SwipeDeviationX = project.Variables["set_SwipeDeviationX"].Value;
            Settings.SwipeDeviationY = project.Variables["set_SwipeDeviationY"].Value;
            Settings.SwipeFractionX = project.Variables["set_SwipeFractionX"].Value;
            Settings.SwipeFractionY = project.Variables["set_SwipeFractionY"].Value;
            Settings.TouchLengthMs = project.Variables["set_TouchLengthMs"].Value;
            Settings.LatencyKey = project.Variables["set_LatencyKey"].Value;
            Settings.XPathSearchInput = project.Variables["set_XPathSearchInput"].Value;
            Settings.XPathSearchButton = project.Variables["set_XPathSearchButton"].Value;
            Settings.CounPageSerf = project.Variables["set_CounPageSerf"].Value;
            Settings.XPathNextPageTab = project.Variables["set_XPathNextPageTab"].Value;
            Settings.XPathNexPageMob = project.Variables["set_XPathNexPageMob"].Value;
            Settings.XPathSearchCardTab = project.Variables["set_XPathSearchCardTab"].Value;
            Settings.XPathSearchCardMob = project.Variables["set_XPathSearchCardMob"].Value;
            Settings.XPathSearchCarUrl = project.Variables["set_XPathSearchCarUrl"].Value;
            Settings.PercentReadCards = project.Variables["set_PercentReadCards"].Value;
            Settings.PercentEntranceInCard = project.Variables["set_PercentEntranceInCard"].Value;
            Settings.PauseGerCard = project.Variables["set_PauseGerCard"].Value;
            Settings.PauseQuitCard = project.Variables["set_PauseQuitCard"].Value;
            Settings.MySite = project.Variables["set_MySite"].Value;
            //Параметры эмуляции тача
            TouchEmulationParameters touchEmulationParameters = new TouchEmulationParameters();
            touchEmulationParameters.Acceleration = Settings.Acceleration.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.LongTouchLengthMs = Settings.LongTouchLengthMs.ParseRangeInt().ValueRandom;
            touchEmulationParameters.MaxCurvature = Settings.MaxCurvature.ParseRangeDouble(touchEmulationParameters.MinCurvature).ValueRandom;
            touchEmulationParameters.MinCurvature = Settings.MinCurvature.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.MaxCurvePeakShift = Settings.MaxCurvePeakShift.ParseRangeDouble(touchEmulationParameters.MinCurvePeakShift).ValueRandom;
            touchEmulationParameters.MinCurvePeakShift = Settings.MinCurvePeakShift.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.MaxStep = Settings.MaxStep.ParseRangeDouble(touchEmulationParameters.MinStep).ValueRandom;
            touchEmulationParameters.MinStep = Settings.MinStep.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.PauseAfterTouchMs = Settings.PauseAfterTouchMs.ParseRangeInt().ValueRandom;
            touchEmulationParameters.PauseBetweenStepsMs = Settings.PauseBetweenStepsMs.ParseRangeInt().ValueRandom;
            touchEmulationParameters.PauseBetweenSwipesMs = Settings.PauseBetweenSwipesMs.ParseRangeInt().ValueRandom;
            touchEmulationParameters.RectangleBasePointPartH = Settings.RectangleBasePointPartH.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.RectangleBasePointPartW = Settings.RectangleBasePointPartW.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.RightThumbProbability = Settings.RightThumbProbability.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.SwipeDeviationX = Settings.SwipeDeviationX.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.SwipeDeviationY = Settings.SwipeDeviationY.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.SwipeFractionX = Settings.SwipeFractionX.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.SwipeFractionY = Settings.SwipeFractionY.ParseRangeDouble().ValueRandom;
            touchEmulationParameters.TouchLengthMs = Settings.TouchLengthMs.ParseRangeInt().ValueRandom;



            return touchEmulationParameters;
        }
        //Свайп до нужного элемента
        public void SwiteToElement(HtmlElement he)
        {
            if (instance.ActiveTab.IsBusy)
            {
                instance.ActiveTab.WaitDownloading();
            }

            instance.ActiveTab.Touch.SetTouchEmulationParameters(CreateParameters());
            instance.ActiveTab.Touch.SwipeIntoView(he);
        }
        //Клик по нужному элементу
        public void ClickToElement(HtmlElement he)
        {
            if (instance.ActiveTab.IsBusy)
            {
                instance.ActiveTab.WaitDownloading();
            }

            instance.ActiveTab.Touch.SetTouchEmulationParameters(CreateParameters());
            instance.ActiveTab.Touch.Touch(he);
        }
 

p-sergei

Client
Регистрация
20.12.2016
Сообщения
523
Благодарностей
255
Баллы
63
блин, вот ты теперь кидаешь совсем другой уже код, в нем пропал этот Settings.MySite уже куда-то вообще без вести, а ведь именно в нем похоже проблема, ты ему не придал никакого значения похоже, а уже там где-то пытаешься получить от него значения. Ну это моя такая версия. Как-бы не очень хочется тут ребусы разгадывать по кусочкам кода, которые похоже будут меняться с каждым последующим постом. Удачи!
 

Sherminator

Client
Регистрация
10.09.2021
Сообщения
992
Благодарностей
535
Баллы
93
блин, вот ты теперь кидаешь совсем другой уже код, в нем пропал этот Settings.MySite уже куда-то вообще без вести, а ведь именно в нем похоже проблема, ты ему не придал никакого значения похоже, а уже там где-то пытаешься получить от него значения. Ну это моя такая версия. Как-бы не очень хочется тут ребусы разгадывать по кусочкам кода, которые похоже будут меняться с каждым последующим постом. Удачи!
Я просто до этого удалил все лишнее, что бы попроще было) Settings.MySite на месте. Просто решил генерацию параметров тача не прикладывать, но раз зашел вопрос на тему того где вызывается CreateParametrs то пришлось целиком показывать, что бы понятнее было.
85752
 

p-sergei

Client
Регистрация
20.12.2016
Сообщения
523
Благодарностей
255
Баллы
63
что бы попроще было
ок, ну ты тогда до своего метода GetMySite() разве где-то вызываешь метод CreateParameters() чтобы заполнилось значение Settings.MySite, вроде как нет. Оно в методе GetMySite() поxоже равно null, поэтому и ошибка.
 
  • Спасибо
Реакции: Sherminator

Sherminator

Client
Регистрация
10.09.2021
Сообщения
992
Благодарностей
535
Баллы
93
ок, ну ты тогда до своего метода GetMySite() разве где-то вызываешь метод CreateParameters() чтобы заполнилось значение Settings.MySite, вроде как нет. Оно в методе GetMySite() поxоже равно null, поэтому и ошибка.
Вот спасибо, сделал вот так и сразу вода горячая пошла.
 

Вложения

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)