Бесплатные снипеты на заказ

  • Автор темы Автор темы CSS
  • Дата начала Дата начала
Подскажите пожалуйста как этот код под зенку должен выглядеть?
Код:
Развернуть Свернуть Копировать
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;

namespace Rsa
{
   public class Rsa
    {
        private byte[] _exponent;
        private byte[] _modulus;

        public string Exponent
        {
            set
            {
                _exponent = hexToBytes(value);
            }
        }

        public string Modulus
        {
            set
            {
                _modulus = hexToBytes(value);
            }
        }

        public string Encrypt(string data)
        {
            string encrypted;
            byte[] byteData = Encoding.ASCII.GetBytes(data);

            var parameters = new RSAParameters();
            var provider   = new RSACryptoServiceProvider();

            parameters.Exponent = _exponent;
            parameters.Modulus = _modulus;

            provider.ImportParametrs(parameters);

            return Convert.ToBase64String(provider.Encrypt(byteData, false)).ToString();

        }

        private byte[] hexToBytes(string hex)
        {
            byte[] arr = new byte[hex.Length >> 1];

            for (int i = 0; i < hex.Length >> 1; i++)
            {
                arr[i] = (byte)((getHexVal(hex[i << 1]) << 4) + (getHexVal(hex[(i << 1) + 1])));
            }
        }

        private int getHexVal(char hex)
        {
            int val = (int)hex;
            return val - (val < 58 ? 48 : 55);
        }
    }
}

var rsa = new Rsa();
string pass = project.Variables["password"].Value;
string Encrypted;

rsa.Exponent = project.Variables["expon"].Value;
rsa.Modulus = project.Variables["modu"].Value;

Encrypted =rsa.Encrypt(pass);
return rsa;
 
Подскажите пожалуйста как этот код под зенку должен выглядеть?
Вставляем данный кусок в Общий код, попутно правя ошибки и очепятки, переименовываем пространство имён, чтоб не совпадало с названием класса:
C#:
Развернуть Свернуть Копировать
namespace Rsaa
{
   public class Rsa
    {
        private byte[] _exponent;
        private byte[] _modulus;

        public string Exponent
        {
            set
            {
                _exponent = hexToBytes(value);
            }
        }

        public string Modulus
        {
            set
            {
                _modulus = hexToBytes(value);
            }
        }

        public string Encrypt(string data)
        {
            string encrypted;
            byte[] byteData = Encoding.ASCII.GetBytes(data);

            var parameters = new RSAParameters();
            var provider   = new RSACryptoServiceProvider();

            parameters.Exponent = _exponent;
            parameters.Modulus = _modulus;

            provider.ImportParameters(parameters);

            return Convert.ToBase64String(provider.Encrypt(byteData, false)).ToString();

        }

        private byte[] hexToBytes(string hex)
        {
            byte[] arr = new byte[hex.Length >> 1];

            for (int i = 0; i < hex.Length >> 1; i++)
            {
                arr[i] = (byte)((getHexVal(hex[i << 1]) << 4) + (getHexVal(hex[(i << 1) + 1])));
            }
            return arr;
        }

        private int getHexVal(char hex)
        {
            int val = (int)hex;
            return val - (val < 58 ? 48 : 55);
        }
    }
}

Туда же чуть выше добавляем отсутствующий юзинг:
C#:
Развернуть Свернуть Копировать
using System.Security.Cryptography;

В соседнюю вкладку добавляем юзинг того пространства имён:
2017-08-09_17-58-57.png

В сниппет проекта пишем следующий кусок:
C#:
Развернуть Свернуть Копировать
var rsa = new Rsa();
string pass = project.Variables["password"].Value;
string Encrypted;

rsa.Exponent = project.Variables["expon"].Value;
rsa.Modulus = project.Variables["modu"].Value;

Encrypted =rsa.Encrypt(pass);
return rsa;

Теперь должно работать.
 
  • Спасибо
Реакции: Harvi и Oleg1357
спасибо огромное, все заработало, совсем забыл про то что можно свой код пихать в настройки шаба.


Вставляем данный кусок в Общий код, попутно правя ошибки и очепятки, переименовываем пространство имён, чтоб не совпадало с названием класса:
C#:
Развернуть Свернуть Копировать
namespace Rsaa
{
   public class Rsa
    {
        private byte[] _exponent;
        private byte[] _modulus;

        public string Exponent
        {
            set
            {
                _exponent = hexToBytes(value);
            }
        }

        public string Modulus
        {
            set
            {
                _modulus = hexToBytes(value);
            }
        }

        public string Encrypt(string data)
        {
            string encrypted;
            byte[] byteData = Encoding.ASCII.GetBytes(data);

            var parameters = new RSAParameters();
            var provider   = new RSACryptoServiceProvider();

            parameters.Exponent = _exponent;
            parameters.Modulus = _modulus;

            provider.ImportParameters(parameters);

            return Convert.ToBase64String(provider.Encrypt(byteData, false)).ToString();

        }

        private byte[] hexToBytes(string hex)
        {
            byte[] arr = new byte[hex.Length >> 1];

            for (int i = 0; i < hex.Length >> 1; i++)
            {
                arr[i] = (byte)((getHexVal(hex[i << 1]) << 4) + (getHexVal(hex[(i << 1) + 1])));
            }
            return arr;
        }

        private int getHexVal(char hex)
        {
            int val = (int)hex;
            return val - (val < 58 ? 48 : 55);
        }
    }
}

Туда же чуть выше добавляем отсутствующий юзинг:
C#:
Развернуть Свернуть Копировать
using System.Security.Cryptography;

В соседнюю вкладку добавляем юзинг того пространства имён:
Посмотреть вложение 22683

В сниппет проекта пишем следующий кусок:
C#:
Развернуть Свернуть Копировать
var rsa = new Rsa();
string pass = project.Variables["password"].Value;
string Encrypted;

rsa.Exponent = project.Variables["expon"].Value;
rsa.Modulus = project.Variables["modu"].Value;

Encrypted =rsa.Encrypt(pass);
return rsa;

Теперь должно работать.
 
Ребята почему не фурычит подскажите пожалуйста

Код:
Развернуть Свернуть Копировать
        text = wallPostText.GetAttribute("innerhtml");
        // заменяем <br> На переносы строк
        text.Replace("<br>",Environment.NewLine);
 
Привет
На странице есть таймер, как получить исходные данные - либо когда он запустился и на сколько завели, либо же когда он завершается?
Я так понимаю таймер на JS, а при загрузке страницы запросами он не исполняется.
С JS вообще не дружу, может подскажите, как определить, какой именно кусок кода в файле .js отвечает за ту или иную кнопку/событие, а параллельно, как приручить этот таймер =)

Страница
www.gearbest.com/tablet-pcs/pp_602714.html
3bf265d2ceff47454aeabf6fb43a5e8d.png



Тут встречается много раз слово "Timer", хотя, скорее, это что но для изображений, судя по урлу
https://css.gearbest.com/imagecache/GB2/minjs/public_top_plug.min.js
=)
 
Последнее редактирование:
Что я делаю не так? =)
Хочу значение переменной из Jsonа передать переменной.
Код:
Развернуть Свернуть Копировать
project.Variables["Map"].Value = project.Json.map.center[0];

ПМ ругается в лог. Обе переменные существуют в проекте.

Код:
Развернуть Свернуть Копировать
Тип "ZennoLab.JXParser.JsonDynamic" в сборке "ZennoLab.JXParser, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" не помечен как сериализуемый.
 
Ребят, поделитесь плиз рабочим снипетом скролинга мыши по странице.
 
  • Спасибо
Реакции: atman
Ребята, как сделать выход по неуспеху из сниппета , что бы кубик сишарп кода становился с красным крестиком? Использую оператор IF ELSE
 
Ребята подскажите не срабатывает сниппет "добавление строки в таблицу" на переменных :
Код:
Развернуть Свернуть Копировать
// get table by name "MyTable"
IZennoTable table = project.Tables["Info_accaunts"];
string name = project.Variables["IS_name"].Value;
string surname = project.Variables["IS_surname"].Value;
// set row separator
table.ColSeparator = ":";
// add row
table.AddRow(name:surname);
kiss_3kb.1502568601.png
 
Help to create UNICODE text file )))):bt:

Код:
Развернуть Свернуть Копировать
string path = project.Variables["path"].Value;



using (StreamWriter sw = File.CreateText(path))
    StreamWriter File.Create

            {
                sw.WriteLine("Hello");
                sw.WriteLine("And");
                sw.WriteLine("Welcome");
            }   
       
           
        //     StreamWriter(string path, bool append, Encoding encoding)
 
Подскажите кто в курсе по встроенный в зенку рандом, который как я понимаю лучше работает в многопотоке и циклах.

Я про Global.Classes.rnd.Next(...);

Сейчас к сожалению уже не помню в каком проекте, но при написании вот такой конструкции иногда вылетала ошибка про недопустимый диапазон
Global.Classes.rnd.Next(project.Lists["mylist"].Count);

а после правки на
Global.Classes.rnd.Next(0,project.Lists["mylist"].Count);
вроде как начинало нормально работать

Никто не сталкивался? вспомнил что давно хотел об этом спросить, но как-то все руки не доходили ... а сейчас вот вспомнилось)

Просто судя по первой конструкции тогда у меня сложилось впечатление что в отличие от стандартного c# рандома там максимальное значение включается, а не исключается как в стандартном варианте ... а при второй конструкции вроде бы все было ок т.е верхнее значение не включалось.

Никто ничего подобного не наблюдал у себя в проектах?
 
  • // get table by name "MyTable"
  • IZennoTable table = project.Tables["Info_accaunts"];
  • string name = project.Variables["IS_name"].Value;
  • string surname = project.Variables["IS_surname"].Value;
  • // set row separator
  • table.ColSeparator = ":";
  • // add row
table.AddRow(name:surname)
так
Код:
Развернуть Свернуть Копировать
table.AddRow(name+":"+surname);
или так
Код:
Развернуть Свернуть Копировать
table.AddRow(new []{name,surname});
 
  • Спасибо
Реакции: meriin
Help to create UNICODE text file

Код:
Развернуть Свернуть Копировать
// Проверяем существование файла
string file = @"\file.txt";
string path = project.Directory+file; // полный путь

if (!File.Exists(path))
                     {
                         File.Create (path);  // Если нет - создаем
                    
                     }


Код:
Развернуть Свернуть Копировать
string fileName = @"\test.txt";
string filepath = project.Directory+fileName;
string textToAdd = "Example text in file";
FileStream fs = null;
            try
            {
                fs = new FileStream(filepath, FileMode.CreateNew);
                using (StreamWriter writer = new StreamWriter(fs))
                {
                    writer.Write(textToAdd);
                }
            }
            finally
            {
                if (fs != null)
                    fs.Dispose();
            }
 
Последнее редактирование:
  • Спасибо
Реакции: myndeswx
Комрады, требуется удалить строки из таблицы, у которых первая ячейка пустая ( в столбце А).
Когда-то видел что то похожее, но поиск ни в Я, ни в Г не помог
 
подскажите плиз как сделать значения в коде (100,500) рандомные, а то я не шарю)))
Код:
Развернуть Свернуть Копировать
instance.ActiveTab.FullEmulationMouseMove(100,500);
Спасибо!
 
Комрады, требуется удалить строки из таблицы, у которых первая ячейка пустая ( в столбце А).
Когда-то видел что то похожее, но поиск ни в Я, ни в Г не помог
C#:
Развернуть Свернуть Копировать
IZennoTable table = project.Tables["Table"];
int column = 0; // номер столбца, который проверять
lock (SyncObjects.TableSyncer) {
    for (int i = 0; i < table.RowCount; i++) {
        string str = table.GetCell(0, i);
        if (string.IsNullOrEmpty(str)) {
            table.DeleteRow(i);
            i--;
        }
    }
}
 
  • Спасибо
Реакции: samsonnn и Nord
подскажите плиз как сделать значения в коде (100,500) рандомные, а то я не шарю)))
Код:
Развернуть Свернуть Копировать
instance.ActiveTab.FullEmulationMouseMove(100,500);
Спасибо!
C#:
Развернуть Свернуть Копировать
Random rnd = new Random();
int x = rnd.Next(50, 151); // рандом от 50 до 150
int y = rnd.Next(400, 601); // рандом от 400 до 600
instance.ActiveTab.FullEmulationMouseMove(x, y);
 
C#:
Развернуть Свернуть Копировать
IZennoTable table = project.Tables["Table"];
int column = 0; // номер столбца, который проверять
lock (SyncObjects.TableSyncer) {
    for (int i = 0; i < table.RowCount; i++) {
        string str = table.GetCell(0, i);
        if (string.IsNullOrEmpty(str)) {
            table.DeleteRow(i);
            i--;
        }
    }
}
Огромное спасибо. А записать таблицу в файл? :ah:
 
А записать таблицу в файл? :ah:
Привяжи таблицу к файлу в настройках таблицы или соответствующим кубиком или кодом
C#:
Развернуть Свернуть Копировать
IZennoTable table = project.Tables["Table"];
string filePath = @"C:\Лист Microsoft Excel.xlsx";
table.Bind(filePath);
Или я не понял вопрос?))
 
  • Спасибо
Реакции: samsonnn и Nord
Привяжи таблицу к файлу в настройках таблицы или соответствующим кубиком. Или я не понял вопрос?))
Там просто несколько итераций с одной таблицей, заносятся данные, сохраняются на диск, потом таблица очищается. И если через привязку таблицы или кубиком" сохранить в файл"( а название и путь к таблице каждый раз другие), то там происходят глюки с сохранением.
Подумал, если сохранять через код, то глюки отпадут =)
 
  • Спасибо
Реакции: atman
Код добавил, проверь!
Не сохраняет, а наоборот:D. Бинд - это привязать.
Во время выполнения таблица в ПМ наоборот перезаписывается значением из того файла, интересненько узнать, для общего развития =)
 
подскажите плиз как сделать чтоб значение false бралось из переменной, на примере кода ниже.

Код:
Развернуть Свернуть Копировать
instance.LoadPictures = false;
instance.UsePlugins = false;
instance.UseCSS = false;
instance.UseMedia = false;

Спасибо!
 
подскажите плиз как сделать чтоб значение false бралось из переменной, на примере кода ниже.
C#:
Развернуть Свернуть Копировать
bool b = bool.Parse(project.Variables["var"].Value);

instance.LoadPictures = b;
instance.UsePlugins = b;
instance.UseCSS = b;
instance.UseMedia = b;
 
  • Спасибо
Реакции: atman и samsonnn
Добрый день!

Подскажите пожалуйста, есть таблица формата

[TABLE="class: brtb_item_table"][TBODY][TR][TD]xxx[/TD][TD]12[/TD][TD]2,154,732[/TD][TD]0.17544[/TD][/TR]
[TR][TD]yyy[/TD][TD]12[/TD][TD]2,732[/TD][TD]0.17430[/TD][/TR]
[TR][TD]zzz[/TD][TD]12[/TD][TD]2,132[/TD][TD]0.17219[/TD][/TR]
[TR][TD]xsf[/TD][TD]12[/TD][TD]2,157,422[/TD][TD]0.18433[/TD][/TR][/TBODY][/TABLE]
Нужен сниппет, который удалит запятые из третьей колонки,
и затем, если значение в третьей колонке меньше переменной x - удалит строку из таблицы.

Спасибо.
 

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