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

  • Автор темы Автор темы Sherminator
  • Дата начала Дата начала

Sherminator

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

Вложения

  • 2021-11-21_18-47-47.png
    2021-11-21_18-47-47.png
    29,4 KB · Просмотры: 115
  • 2021-11-21_18-50-54.png
    2021-11-21_18-50-54.png
    2,9 KB · Просмотры: 102
  • 2021-11-21_18-52-13.png
    2021-11-21_18-52-13.png
    15,4 KB · Просмотры: 95
  • 2021-11-21_18-54-09.png
    2021-11-21_18-54-09.png
    7,5 KB · Просмотры: 92

Ну вот так это целиком будет

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);
        }
 
блин, вот ты теперь кидаешь совсем другой уже код, в нем пропал этот Settings.MySite уже куда-то вообще без вести, а ведь именно в нем похоже проблема, ты ему не придал никакого значения похоже, а уже там где-то пытаешься получить от него значения. Ну это моя такая версия. Как-бы не очень хочется тут ребусы разгадывать по кусочкам кода, которые похоже будут меняться с каждым последующим постом. Удачи!
 
блин, вот ты теперь кидаешь совсем другой уже код, в нем пропал этот Settings.MySite уже куда-то вообще без вести, а ведь именно в нем похоже проблема, ты ему не придал никакого значения похоже, а уже там где-то пытаешься получить от него значения. Ну это моя такая версия. Как-бы не очень хочется тут ребусы разгадывать по кусочкам кода, которые похоже будут меняться с каждым последующим постом. Удачи!
Я просто до этого удалил все лишнее, что бы попроще было) Settings.MySite на месте. Просто решил генерацию параметров тача не прикладывать, но раз зашел вопрос на тему того где вызывается CreateParametrs то пришлось целиком показывать, что бы понятнее было.
85752
 
что бы попроще было
ок, ну ты тогда до своего метода GetMySite() разве где-то вызываешь метод CreateParameters() чтобы заполнилось значение Settings.MySite, вроде как нет. Оно в методе GetMySite() поxоже равно null, поэтому и ошибка.
 
  • Спасибо
Реакции: Sherminator
ок, ну ты тогда до своего метода GetMySite() разве где-то вызываешь метод CreateParameters() чтобы заполнилось значение Settings.MySite, вроде как нет. Оно в методе GetMySite() поxоже равно null, поэтому и ошибка.
Вот спасибо, сделал вот так и сразу вода горячая пошла.
 

Вложения

  • 2021-11-21_20-05-57.png
    2021-11-21_20-05-57.png
    10 KB · Просмотры: 127

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