www.cyberforum.ru/csharp-net/thread714894.html ребята обсуждали похожую проблему, передавали через буфер. завтра попробую. Но я бы не хотел привязываться к winAPI, есть ли стандартная возможность передачи объекта через буфер между языками? Что то вроде сериализации.
Это будет здорово затратно по времени и вряд ли получится с первой попытки перенести на C# код с чистых СИ. Ведь там встречаются различные операции с указателями, передачами по ссылке, работа с ними итп. на правильную интерпритацию написанного тоже пойдет время.
Наверняка ведь как то можно подсунуть сишную dll в проект...
Вообще я согласен с Вашим мнением, но оно имеет место быть на раннем этапе проекта.
Как один из вариантов, это сделать .exe из кода в библиотеке, только организовать входные параметры таким образом, чтобы этим exe можно было пользоваться как функцией. т.е. открывать программу с определенными аргументами и в цикле, пока программа не вернет системе какое то значение, обрабатывать ее возвращаемые сообщения. но мне кажется это дурно попахивает...)
Олег Серебряков: согласен:) Но человек хочет выйти из зоны комфорта. А место в другим ментолитетом, нравами, привычками итп, кажется самое оно. Да и цену денег и продуктов сразу можно будет переоценить.
А какого ваше мнение по поводу трущоб и такого способа? Не обязательно, конечно, чтобы это была индия) это первое, что пришло в голову. Тут важна сама идея.
vilgeforce: У меня студия ultimate, там вроде все включено. А можно какой то еще профилировщик установить?
Самое странное, что пару раз у меня получалось это сделать, я получал количество вызовов, процессорное время на функцию итп. Но это было только пару раз. Почти всегда студия крашится(
Армянское Радио: Анимации нету, только в ручную обрабатывается перерисовка объектов на форме.
никак не могу понять, в MFC разве есть проблемы с профилировкой? Студия постоянно крашится при попытке открыть отчет о профилировании...
дело не в том, что делается в OnPaint, а почему он вызывается так часто... я в начале этой функции поставил return; чтобы избежать дальнейшего исполнения кода функции, но нагрузка осталась прежней. может и не в нем дело. Это просто первое, что в галаза бросилось...
Перед тем, как задавать вопрос, я попробовал сделать так:
struct MyCmp{
bool operator() (const std::shared_ptr& lhs, const std::shared_ptr& rhs) const
{
if (lhs->Compare(*rhs.get()) == 0) return ture;
return false;
}
};
std::set< std::shared_ptr, MyCmp > mySet;
Но добавлялись только 2 строки, причем это именно та строка, которая добавилась первой. больше в set ничего не попало. Я не понял, что operator() должен возвращать в таком случае. Решил задать вопрос более обще, может другие решения есть.
>> формулировка в виде задач ...
Так проще понять проблему.
Спасибо за книгу!)
Так уж сложилось, приходится работать под разными платформами. Эксель, очень хороший вариант для моей задачи, но хотелось бы инструмент не зависимый от платформы,не на столько избыточный и легковесный. Мне очень нравится, к примеру, программка для быстрого составления всяких диаграммок - umlet за то, что она простая, быстрая, на любой платформе работает одинаково. Интересно, есть ли что то подобное.
Спасибо!
А это по производительности будет не сильно медленее отрисовки через CPaintDC?
Вообще, это в тему разработки собственных контролов. Не подскажете, может есть какая то информация по этой теме? как лучше организовать архитектуру контрола, вызовы итп?
Это делаю в первый раз, и шишки набиваю довольно болезнено))