
Andrii
24.06.2017
13:01:49
/
Ой

Egor
24.06.2017
13:02:08
для 2D хорош CocosSharp

Лолитка
24.06.2017
13:03:00
да хоть юнити

Google

Лолитка
24.06.2017
13:03:16
если не сильно много делать - может даже лагать не будет

Nikita
24.06.2017
13:03:51
тебе так?
вообще можно хоть на WPF
там встроенные средства для 2D/3D есть

German
24.06.2017
13:07:18
Всем привет

Jenya
24.06.2017
13:10:17
спасибо большое! да оно

Egor
24.06.2017
13:11:02
Интересно сколько draw calls эта игра делает ))
спрайт батчинг е?
а то я помню на хабре была интересная статья про WPF и там вроде на форме просто нарисовали два элипса стандартными средствами и разобрали что произойдет - и там звездец
два эллипса и под 15 вызовов отрисовки

Gid
24.06.2017
13:18:47
ожидаем наплыва годных (нет) вопросов

Nikita
24.06.2017
13:20:10

Google

Friedrich
24.06.2017
13:20:12

Axm
24.06.2017
13:20:19
Обсудили уже тут?
32TB внутренних билдов и исходных кодов Windows 10 утекло и лежит в общем доступе. Ссылка на первую публикацию, но многие уже подтвердили. Краем глаза посмотрел, вроде ничего стыдного в этом коде и билде нет
http://www.theregister.co.uk/2017/06/23/windows_10_leak/

Nikita
24.06.2017
13:20:39
там кусок shared source ушёл, которые раздают чуть ли не кому попало

Nurlybekov
24.06.2017
13:23:05
/stat@combot

Combot
24.06.2017
13:23:05
combot.org/chat/-1001066857984

Dexter
24.06.2017
13:50:24
Добрый день. Можно задать вам вопрос?

Andrey
24.06.2017
13:50:39
Слушайте, а как работает штука с minVersionSdk?
А то я это что в проектах под андроид вижу, что под винду.

Влад
24.06.2017
13:50:58

Andrey
24.06.2017
13:51:24
Они неподдерживаемые вещи с более старших версий внутрь приложения компилируют?
Или как?

Dexter
24.06.2017
13:52:26
В общем, вопрос:
Какие существуют хорошие библиотеки для дебаггинга приложений .NET? В частности C#. Нужно чтобы можно было поставить в определенной функции брейкпоинт, прочитать локальные переменные и изменить значение аргументов вызова этой самой функции

Летучая
24.06.2017
13:52:33

Dexter
24.06.2017
13:53:07

Andrey
24.06.2017
13:53:11

Dexter
24.06.2017
13:53:35
Меня интересует именно API для программного дебага

Google

Andrey
24.06.2017
13:54:10
А что такое программный дебаг?

Gena
24.06.2017
13:54:30
Дебаг программы?)

Dexter
24.06.2017
13:54:40
Дебаг программы из другой программы. Без участия пользователя)

Andrey
24.06.2017
13:54:54
Тупой вопрос.

Vlad
24.06.2017
13:56:38
здравствуйте. работал ли кто в ксамарин?)

Friedrich
24.06.2017
13:56:41

Летучая
24.06.2017
13:56:56
Интересно, зачем может понадобиться дебажить один код другим кодом?

Andrey
24.06.2017
13:57:04

Летучая
24.06.2017
13:57:10

Friedrich
24.06.2017
13:57:30
Я так представляю, что он пишет свой дебаггер типа такого, какой есть в Visual Studio.

Vlad
24.06.2017
13:57:56
спасибо, не заметил?

Dexter
24.06.2017
13:58:03
Так, окей, объясню больше. Есть некое приложение на C#, .NET 4.6, обфусцировано с NETGuard.io. В dnSpy имеется функционал дебаггинга. Ставишь брейкпоинт, изменяешь/смотришь значения локальных переменных

Igor
24.06.2017
13:58:31

Andrey
24.06.2017
13:59:01

Friedrich
24.06.2017
14:00:05

Andrey
24.06.2017
14:00:51

Friedrich
24.06.2017
14:01:14
Ну чёт непохоже, я честно ищу это в гугле и в roslyn wiki, и не нахожу.

Andrey
24.06.2017
14:01:27

Google

Friedrich
24.06.2017
14:01:39
Знаю, что есть пакет с реализацией debug api на .NET Core, который использовался в Rider, а потом майки запретили им использовать :(

Dexter
24.06.2017
14:01:42
Я пробовал добиться желаемого через MDbgEngine, но по нему невероятно сложно найти доки. Методом тыка я смог поставить брейкпоинт, запустить приложение и прочитать значение аргументов. Изменить значение я так и не смог(
Я тогда попробую копнуть функционал dnSpy, ибо он OpenSource
Там у них своя реализация CorAPI

Friedrich
24.06.2017
14:02:28
Чтение PDB — это в принципе важная часть отладчика, но не то чтобы самая существенная.

Dexter
24.06.2017
14:04:37
dnSpy — не деобфускатор. Да и делать какие-то изменения в .exe довольно сложно и придётся делать сново с каждым обновлением программы

Andrey
24.06.2017
14:04:47

Friedrich
24.06.2017
14:05:26

Andrey
24.06.2017
14:08:27

Dexter
24.06.2017
14:08:56
Лядно, спасибо всем. Я просто выковыряю дебаггер из dnSpy. Надеюсь, справлюсь со своими знаниями C++ ?


Friedrich
24.06.2017
14:08:58
dnSpy — не деобфускатор. Да и делать какие-то изменения в .exe довольно сложно и придётся делать сново с каждым обновлением программы
У нас была пара случаев, когда нужно было таскать с собой патченные бинарники (не подумайте плохого — законно запатченные, мы были в контакте с производителем, и просто временно выкатывали у себя патчи, пока они чинили у себя в бинарниках).
В обоих случаях мы автоматизировали процесс патчинга, т.к. приходилось работать с несколькими версиями бинарников, пока производители (хардварщики — жуткие тормоза) латали у себя обнаруженные нами проблемы.
В первом случае я сделал ildasm + накатку патча + ilasm. Работало идеально, патчи портировались между версиями бинарников. Пробовали сделать то же самое на декомпиляции в C# + повторной компиляции, но бинарник получался слишком другим: похоже, хардварщики у себя забились на конкретные тайминги, и в перекомпилированном бинаре начинались race conditions. Это было жутко.
Во втором случае другой программист команды делал автопатчер на Mono.Cecil, и отзывался исключительно положительно об этом инструменте.


Nikita
24.06.2017
14:09:12

Friedrich
24.06.2017
14:09:13

Nikita
24.06.2017
14:09:27
https://github.com/JetBrains/debugger-libs/tree/rider-new


Dexter
24.06.2017
14:10:43
У нас была пара случаев, когда нужно было таскать с собой патченные бинарники (не подумайте плохого — законно запатченные, мы были в контакте с производителем, и просто временно выкатывали у себя патчи, пока они чинили у себя в бинарниках).
В обоих случаях мы автоматизировали процесс патчинга, т.к. приходилось работать с несколькими версиями бинарников, пока производители (хардварщики — жуткие тормоза) латали у себя обнаруженные нами проблемы.
В первом случае я сделал ildasm + накатку патча + ilasm. Работало идеально, патчи портировались между версиями бинарников. Пробовали сделать то же самое на декомпиляции в C# + повторной компиляции, но бинарник получался слишком другим: похоже, хардварщики у себя забились на конкретные тайминги, и в перекомпилированном бинаре начинались race conditions. Это было жутко.
Во втором случае другой программист команды делал автопатчер на Mono.Cecil, и отзывался исключительно положительно об этом инструменте.
Тут патчинг чисто для себя, но тоже в благих целях. Проблема в том, что обфусатор так изломтил .exe, что всё, что основано на стандартных инструментах не способно правильно записать патченый .exe


Nikita
24.06.2017
14:11:05
ещё есть бакэнд для GDB (называется clrdbg), но его нельзя использовать по лицензионным соображениям
Эта группа больше не существует