ставите блокировки в метод счетчика и метод таймера а в таймере под блокировкой перебрасываете значения из счетчика в какой-то глобал и обнуляете счетчик. и естессно пускаете их в разных нитях.
|
Не проще объем скачанного разделить на время прошедшее с начала скачивания? Получите среднюю скорость скачивания.
На C# пример: Код:
using System; |
Код:
void Form1::_DownloadProgressChanged(System::Object ^sender, System::Net::DownloadProgressChangedEventArgs ^e) сложные расчеты?backgroundworker? add глючит на вин7 на 2003 не глючит; debug намекает что строчка пропадает при Код:
while(_WebClient->IsBusy) перенес Код:
while(_WebClient->IsBusy) Код:
void Form1::_DownloadProgressChanged(System::Object ^sender, System::Net::DownloadProgressChangedEventArgs ^e) |
Вложений: 1
Можно просто создать свой кастомный прогресс бар.
|
в моей программе после
_WebClient->DownloadFileAsync(gcnew Uri(_URL), _SaveAs, DateTime::Now); следущий код Код:
String^ Form1::getMD5Stream(String^ fileName) Код:
Application::DoEvents(); Код:
DownloadFileAsync Спасибо за подсказку и вообщем то готовый код. |
Тогда можно вызвать getMD5Stream() из DownloadFileCompleted() чтобы избавится от Application::DoEvents()...
|
|
Не проще создать инсталятор для всего этого?
File->New Project->Other Project Files->Setup and Deployment->Visual Studio Installer->Setup Project... http://msdn.microsoft.com/en-us/library/206sadcd |
|
Доброго времени суток!
Подскажите ,столкнулся с фризом при использовании коннектора: случай 1: не доходим до блока finally Код:
try Код:
try теперь собственно вопрос: есть функция которая делает запрос в базу: блок чтения; Код:
while(reader->Read()) Код:
while(reader->Read()) p.s под фризом я имел ввиду в момент первого вызова фукнции ,приложения виснет от 3-10 секунд,даже бывает вываливается в таймаут . Последующие вызовы проходят мгновенно. кхм пересмотрел всю свою писаннину и наверно понял что не в одном блоке финали не закрываю соединение Код:
conn->Close(); Код:
if(conn->State == ConnectionState::Open) |
Код:
char buf[5]; и как можно удалить всю информацию из массива,допустим что бы повторно запросить информацию из конфига о другом параметре в тот же массив; |
А почему ini? Это же устаревший формат. Можно легко заменить на XML и использовать сериализацию. А если бы писали на C#, то вообще можно было бы использовать встроеную функцию Application Settings...
Я у себя в одной тулзе использовал что-то типа этого: C# Код:
using System; Код:
#pragma once Код:
var streamsCount = Config.Instance.Streams.Count; Код:
<?xml version="1.0"?> |
Извиняюсь за небольшой оффтоп, но не нашел тут подходящей темы, а новую создавать ради такого маленького вопроса не очень хочется. Собственно пытаюсь сделать аналог C# ReadUInt32 на C++.
Код:
uint32 result = 0; |
ReadUInt32 - откуда читаешь то? Например через reinterpret_cast
Код:
uint32 value = *reinterpret_cast<uint32*>(data); Или допустим с сокета в Qt я считываю вот так Код:
read((char*)&value, 4); |
const char* ptr;
|
Текущее время: 15:14. Часовой пояс GMT +3. |
ru-mangos.ru - Русское сообщество MaNGOS