https://graph.facebook.com/oauth/access_token?client_id=123&client_secret=abc&
grant_type=password&username=pupkin&password=000
base.GrantType = GrantType.ClientCredentials;
var client = new InstagramClient
(
"9fcad1f7740b4b66ba9a0357eb9b7dda",
"3f04cbf48f194739a10d4911c93dcece"
);
client.ReturnUrl = "http://oauthproxy.nemiro.net/";
client.Username = "aleksey";
client.Password = "Frif#dser#23dssd@Dsdfjjfsi";
var accessToken = client.AccessToken;
{"code": 400, "error_type": "OAuthException", "error_message": "Invalid grant_type"}
var client = new FacebookClient("1435890426686808", "c6057dfae399beee9e8dc46a4182e8fd");
client.Username = "aleksey";
client.Password = "a6lGmDZsCb1SuHsIQw89ZqK9";
var accessToken = client.AccessToken;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace WindowsFormsApplication9
{
public partial class Form1 : Form
{
/// <summary>
/// Получает текущее положение ползунка полосы прокрутки.
/// </summary>
/// <param name="hWnd">Дескриптор.</param>
/// <param name="nBar">Тип.</param>
/// <returns></returns>
[DllImport("User32.dll")]
public extern static int GetScrollPos(IntPtr hWnd, int nBar);
/// <summary>
/// Функция для отправки сообщений.
/// </summary>
/// <param name="hWnd">Дескриптор.</param>
/// <param name="msg">Само сообщение.</param>
/// <param name="wParam">Параметры.</param>
/// <param name="lParam">Дополнительные параметры.</param>
[DllImport("User32.dll")]
public extern static int SendMessage(IntPtr hWnd, uint msg, IntPtr wParam, IntPtr lParam);
public enum ScrollBarType : uint
{
SbHorz = 0,
SbVert = 1,
SbCtl = 2,
SbBoth = 3
}
public enum Message : uint
{
/// <summary>
/// Сообщение для вертикальной полосы прокрутки
/// </summary>
WM_VSCROLL = 0x0115
}
public enum ScrollBarCommands : uint
{
/// <summary>
/// Положение ползунка полосы прокрутки в конце операции
/// </summary>
SB_THUMBPOSITION = 4
}
private RichTextBox rich1 = new RichTextBox();
private RichTextBox rich2 = new RichTextBox();
public Form1()
{
InitializeComponent();
// тестовый текст
string text = "";
for (int i = 0; i < 99; i++)
{
text += "Имеется 2 richTextBox, нужно установить значение текущего вертикального скролла первого, как у в данный момент у второго. Пробовал всякие offset, копался в гугле, но ничего внятного не нашел.\r\n";
}
// добавляем поля на форму
rich1.Name = "rich1";
rich1.Dock = DockStyle.Top;
rich1.Text = text;
rich1.VScroll += rich_VScroll;
this.Controls.Add(rich1);
rich2.Name = "rich2";
rich2.Dock = DockStyle.Top;
rich2.Text = text;
rich2.VScroll += rich_VScroll;
this.Controls.Add(rich2);
}
/// <summary>
/// Обработчик изменения положения ползунка полосы прокрутки.
/// </summary>
private void rich_VScroll(object sender, EventArgs e)
{
// кто вызвал событие
RichTextBox currentRich = (RichTextBox)sender;
// если событие вызвал rich2, то второй будет rich1 и наоборот
RichTextBox otherRich = currentRich.Name.Equals("rich1") ? rich2 : rich1;
// получаем позицию ползунка полосы прокрутки текущего поля
int pos = GetScrollPos(currentRich.Handle, (int)ScrollBarType.SbVert);
pos <<= 16;
// чтобы не застрять в бесконечности
// (можно так не делать и прикрутить обработчик только к одному полю)
otherRich.VScroll -= rich_VScroll;
// --
// передаем позицию во второе поле
uint par = (uint)ScrollBarCommands.SB_THUMBPOSITION | (uint)pos;
SendMessage(otherRich.Handle, (int)Message.WM_VSCROLL, new IntPtr(par), new IntPtr(0));
otherRich.VScroll += rich_VScroll;
}
}
}
$.ajax({
type: "POST",
url: "WebService1.asmx/VerifySignature",
contentType: "application/json",
data: JSON.stringify({ certInfo: keyInfo }), // обернуть все параметры
success: function (result) {
alert(result);
console.log(result);
}
});
var value = "a ack fghjy fghfh asn";
// разбиваем на массив
var arr = value.Split();
// сортируем массив
Array.Sort(arr);
// склеиваем массив в строку
string result = String.Join(" ", arr);
// выводим результат
Console.WriteLine(result);
Console.WriteLine(String.Join(" ", "a ack fghjy fghfh asn".Split().OrderBy(itm=>itm)));
-- временная таблица
-- в моем примере всего два поля id и value
CREATE TABLE #tmp
(
num int primary key identity,
id bigint,
value nvarchar(max)
);
-- структура xml:
-- <items>
-- <item id="123">значение</item>
-- <item id="456">значение</item>
-- </items>
-- переносим xml в таблицу
INSERT INTO #tmp
SELECT
ISNULL(n.value('@id', 'bigint'), 0), -- идентификатор существующих данных
n.value('.', 'nvarchar(max)') -- значение данных
FROM @xml.nodes('/items/item') AS node(n);
-- обновляем записи в таблице [table], у которых есть идентификатор
UPDATE a SET value = b.value
FROM table AS a
INNER JOIN #tmp AS b ON a.id = b.id
WHERE b.id <> 0;
-- добавляем записи, у которых нет идентификатора
INSERT INTO table (value)
SELECT value FROM #tmp AS b WHERE b.id = 0;
-- удаляем временную таблицу
DROP TABLE #tmp;
// входящие данные
string data = "0x00 00 00 00 00 00 00 00 00 00 00 00 00 00 30 39 ..............09";
// получаем позицию первой найденной точки
int endIndex = data.IndexOf(".");
// получаем позицию первого вхождения символов 00
// с конца строки начиная с endIndex
int startIndex = data.LastIndexOf("00", endIndex) + 2; // + размер искомых символов
// выделяем часть строки и удаляем лишние пробелы по бокам
string result = data.Substring(startIndex, endIndex - startIndex).Trim();
// выводим результат
Console.WriteLine(result);
// можно одной строкой написать, но так проще понять
string data = "0x00 00 00 00 00 00 00 00 00 00 00 00 00 3D 12 7E ..............01";
string result = data.Replace("0x", "").Replace("00", "").TrimEnd("0123456789.".ToCharArray()).Trim();
Console.WriteLine(result);
string data = "0x00 00 00 00 00 00 00 00 00 00 00 00 00 3D 12 7E ..............00";
string result = data.Substring(2).TrimStart("0 ".ToCharArray()).TrimEnd("0123456789.".ToCharArray()).Trim();
Console.WriteLine(result);
string hex = 10008.ToString("x2");
int num = 255;
string hex = num.ToString("x2");
// переменная hex будет иметь значение ff
hex = num.ToString("X2");
// переменная hex будет иметь значение FF
byte[] data = new byte[] {1,2,3,4,5,128,255};
string hex = String.Join(" ", data.Select(b=> b.ToString("x2")).ToArray());
Console.WriteLine(hex);
01 02 03 04 05 80 ff
string data = "Привет, человеки!";
string hex = String.Join(" ", data.ToString().Select(ch => ((byte)ch).ToString("x2")).ToArray());
Console.WriteLine(hex);
string data = "Привет, человеки!";
string hex = String.Join(" ", System.Text.Encoding.GetEncoding(1251).GetBytes(data).Select(b => b.ToString("x2")).ToArray());
Console.WriteLine(hex);
cf f0 e8 e2 e5 f2 2c 20 f7 e5 eb ee e2 e5 ea e8 21
string data = "Привет, человеки!";
string hex = String.Join("-", System.Text.Encoding.GetEncoding(1251).GetBytes(data).Select(b => b.ToString("x2")).ToArray());
Console.WriteLine(hex);
cf-f0-e8-e2-e5-f2-2c-20-f7-e5-eb-ee-e2-e5-ea-e8-21
// или HttpContext.Current.Cache
if (HttpContext.Cache["Ключ"] == null)
{
// данных в кэше нет, получаем из базы и добавляем в кэш
HttpContext.Cache.Add
(
"Ключ",
"тут сами данные",
null,
DateTime.Now.AddMinutes(5), // срок годности пять минут
TimeSpan.Zero,
System.Web.Caching.CacheItemPriority.Normal,
null
);
}
else
{
// есть данные в кэше, используем их
var data = HttpContext.Cache["Ключ"]; // типы строгие лучше использовать
}
int i = 0;
bool b = false;
while (i < 10)
{
Console.WriteLine("Текущее: {0}", i);
if (i == 5 && !b)
{
b = true;
continue;
}
i++;
}
int i = 0;
bool b = false;
while (i < 10)
{
again: // точка возврата
Console.WriteLine("Текущее: {0}", i);
if (i == 5 && !b)
{
b = true;
goto again;
}
i++;
}
// пауза между попытками (100 мс)
var interval = new TimeSpan(0, 0, 0, 0, 100);
// максимальное время ожидания (1 секунда)
var timeout = new TimeSpan(0, 0, 0, 1);
while (true)
{
var totalTime = new TimeSpan(); // счетчик времени
var заданиеВыполнено = false;
while(!заданиеВыполнено) // повторять, пока задание не будет выполнено
{
try
{
// тут код задания
// если ошибок не будет, то
заданиеВыполнено = true; // работа цикла будет завершена
}
catch
{
// если ошибка, делаем паузу
System.Threading.Thread.Sleep(100);
// увеличиваем счетчик времени
totalTime += interval;
if (totalTime > timeout)
{
// превышен таймаут, выходим
Console.WriteLine("Превышено время ожидания");
break;
}
}
}
}
[Serializable]
[XmlRoot("ValCurs")]
public class ValCurs
{
[XmlAttribute("Date")]
public string Date { get; set; }
[XmlAttribute("name")]
public string Name { get; set; }
[XmlElement("Valute")]
public Valute[] Items { get; set; }
}
[Serializable]
public class Valute
{
[XmlAttribute("ID")]
public string Id { get; set; }
public string NumCode { get; set; }
public string CharCode { get; set; }
public string Name { get; set; }
public string Nominal { get; set; }
public string Value { get; set; }
}
public partial class Form1 : Form
{
private int BrushType = 1;
public Form1()
{
InitializeComponent();
// создаем PictureBox
var pic = new PictureBox { Dock = DockStyle.Fill, BackColor = Color.White };
pic.MouseClick += PictureBox_MouseClick;
this.Controls.Add(pic);
// создаем панель для кнопок
var panel = new FlowLayoutPanel { Dock = DockStyle.Top, AutoSize = true };
this.Controls.Add(panel);
// кнопки
var btn = new RadioButton
{
Text = "Круг",
Tag = 1,
Appearance = Appearance.Button,
Checked = true,
AutoSize = true
};
btn.Click += Button_Click;
panel.Controls.Add(btn);
btn = new RadioButton
{
Text = "Не круг",
Tag = 2,
Appearance = Appearance.Button,
AutoSize = true
};
btn.Click += Button_Click;
panel.Controls.Add(btn);
btn = new RadioButton
{
Text = "Квадратный круг",
Tag = 3,
Appearance = Appearance.Button,
AutoSize = true
};
btn.Click += Button_Click;
panel.Controls.Add(btn);
}
private void Button_Click(object sender, EventArgs e)
{
var btn = (RadioButton)sender;
this.BrushType = (int)btn.Tag;
}
private void PictureBox_MouseClick(object sender, MouseEventArgs e)
{
// получаем ссылку на PictureBox
var pic = (PictureBox)sender;
// получаем Graphics из PictureBox
var g = pic.CreateGraphics();
if (this.BrushType == 2)
{
// рисуем не круглый квадрат
g.DrawRectangle(Pens.Black, e.X, e.Y, 50, 50);
}
else if (this.BrushType == 3)
{
// рисуем квадратный круг
Point[] points = new Point[6];
int half = 50 / 2;
int quart = 50 / 4;
points[0] = new Point(e.X + quart, e.Y);
points[1] = new Point(e.X + 50 - quart, e.Y);
points[2] = new Point(e.X + 50, e.Y + half);
points[3] = new Point(e.X + 50 - quart, e.Y + 50);
points[4] = new Point(e.X + quart, e.Y + 50);
points[5] = new Point(e.X, e.Y + half);
g.DrawPolygon(Pens.Black, points);
}
else
{
// рисуем эллипс
g.DrawEllipse(Pens.Black, e.X, e.Y, 50, 50);
}
}
}
var pic = (PictureBox)sender;
if (pic.Image == null) { pic.Image = new Bitmap(pic.Width, pic.Height); }
var bmp = new Bitmap(pic.Image);
var g = Graphics.FromImage(bmp);
pic.Image = bmp;
string data = "FF CA 00 00 00";
string result = "0x" + String.Join(",0x", data.Split());
Console.WriteLine(result);
var hash = window.location.hash;
if (hash.length > 1)
{
alert('Маркер доступа: ' + hash.substring(hash.indexOf('=') + 1));
}
http://localhost
var access_token = hash.substring(hash.indexOf('=') + 1);
?client_id=64c696ae6b32405a8efcd83889c571be&redirect_uri=http://localhost&response_type=token
\b((?!асимптота)([A-Za-zА-Яа-яЁё]{9}))\b
\b((?!асимптота|однородно)([A-Za-zА-Яа-яЁё]{9}))\b
var coord = "<?=$data['coords'];?>";
var myMap = new ymaps.Map('map', {
center: [coord],
zoom: 9,
controls: ['zoomControl']
});
var coord = "58.6103,49.6917".split(',');
// var coord = "<?=$data['coords'];?>".split(',');
var myMap = new ymaps.Map('map', {
center: coord,
zoom: 9,
controls: ['zoomControl']
});
var coord = [<?=$data['coords']?>];
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace ConsoleApplication13
{
class Program
{
[DllImportAttribute("User32.dll")]
private static extern int FindWindow(String ClassName, String WindowName);
[DllImportAttribute("User32.dll")]
private static extern IntPtr SetForegroundWindow(int hWnd);
static void Main(string[] args)
{
int hWnd = FindWindow(null, "Калькулятор");
Console.WriteLine(hWnd);
if (hWnd > 0)
{
Console.WriteLine("К счастью, окно найдено...");
SetForegroundWindow(hWnd);
}
else
{
Console.WriteLine("Окно не найдено!");
}
Console.ReadKey();
}
}
}
static void Main(string[] args)
{
foreach (var p in Process.GetProcessesByName("calc"))
{
SetForegroundWindow(p.MainWindowHandle.ToInt32());
}
Console.ReadKey();
}
string path = @"1.dat";
int len = 1024 * 1024;
var rnd = new Random();
var sw = Stopwatch.StartNew();
var b = new byte[4];
Console.WriteLine("Test started");
using (var map = MemoryMappedFile.CreateFromFile(path, FileMode.Create, path, len))
{
using (var accessor = map.CreateViewAccessor())
{
for (var i = 0; i < len / 4; ++i)
{
b[0] = (byte)rnd.Next(0, 255);
b[1] = (byte)rnd.Next(0, 255);
b[2] = (byte)rnd.Next(0, 255);
b[3] = (byte)rnd.Next(0, 255);
accessor.WriteArray(rnd.Next(0, len / 4) * 4, b, 0, 4);
}
}
}
Console.WriteLine("Test end time - " + sw.ElapsedMilliseconds);
Console.ReadKey();
$(document).ready(function(){
$(".debug_loginbutton").click(function(){
$("#div_debug_loginbutton").css("display": "none");
$("#a_load").css("display": "block");
$("#content").load("ajax/login");
})
})