Mercury13: Слушай, я согласен с тем, что не знаю как мне правильно сделать и мне не хватает знаний, за этим я сюда и пришел, ты можешь подсказать или объяснить как мне лучше сделать? Мне нужно обрезать изображения в потоке например. то есть в потоке bmp->assign(jpeg); делаем операции с bmp->canvas, затем обратно jpeg->assign(bmp) и сохранить.
После отправки вопроса сюда еще много читал и экспериментировал. Сейчас упрощаю функцию, которая обрабатывается в потоке и исправляю косяки по мере их нахождения. Первый косяк - В функцию потока передаю Jpeg и сохраняю его оттуда же, все хорошо (и в несколько потоков и в один), потом вместо сохранения пишу bmp->Assign(jpeg); и сохраняю bmp. В один поток все прекрасно, но в несколько картинки сохраняются искаженными. Если делать все то же самое через TThread Synchronize, то картинки сохраняются замечательно, но форма висит намертво во время выполнения.
Что значит крупным блоком? Выделить 1 раз и обращаться из потоков через критические секции или мьютексы? Но это ведь потеря скорости. Да вот есть пользователи, которым не хватает 1400 потоков (
Хотелось бы сразу загружать dll в адресное пространство, чтобы не было возможности скачать dll и положить рядом с софтом. Идея fornit1917 сработает, но после дизассемблирования пираты увидят как грузится библиотека и скачают ее с сервера
Для первого поста информации достаточно, решение оказалось простым и очевидным, кто сталкивался с подобным ответил бы, кому недостаточно информации спросил бы, а ваш ответ увы бесполезен
std::wofstream f;
f.imbue(locale(".866"));
f.open(path.c_str() , ios::app);
if (!f) {
//
}
else {
tempString = L"привет";
len = tempString.Length() ;
f.write(tempString.c_str(), len);
f.close();
};
Так не работает(