PDA

Просмотр полной версии : slil.ru File Uploader


slesh
11.06.2010, 16:10
1) Что это?
Это программка которая позволяет быстро закачивать файлы на сайт slil.ru. Писал чисто для себя, для удобства.
2) Как пользоваться?
Есть 2 варианта:
1) просто запустить её и она предложит выбрать файл
2) можно кинуть её в
2000, XP, 2003 - C:\Documents and Settings\<Имя Пользователя>\SendTo\
Vista, 7 - C:\Users\<Имя Пользователя>\AppData\Roaming\Microsoft\Windows\SendTo
И тогда можно выбрать файл, кликнуть по нем правой кнопкой мышки и в пункте Отправить (SendTo) выбрать пунки slil.ru
3) Какие характеристики?
1) Можно отправить тока 1 файл за раз
2) Не поддерживает прокси ( влом добавлять
3) Отображает прогрессбар, хотя на реале он почти никогда не нужен
4) компактный дизайн и возможность скопировать ссылку сразу в буфер обмена
5) макс размер файла - 50 метров (ограничение slil)
4) Техническая часть
1) написан на Си (в MS VS 2008)
2) написан полностью на WinAPI и WinSock
3) чистый размер - 7680 байт.
5) А исходники?
А исходники не дам, потому что там написан отчасти быдлокод не оптимизированный ) писался после пьянки пару часов.
Но по просьбе трудящихся тож выложил.
P.S.
Советую всё же добавить её в SendTo потому что очень удобно юзать получается, когда надо быстро чтото залить.

desTiny
11.06.2010, 16:53
"Максимальный размер файла должен быть не более 50 мегабайт"
Что такое "Максимальный размер" моего файла? :)

slesh
11.06.2010, 16:58
Вообще на slil разрешено загружать файлы размером не более 50 мегабайт.

desTiny
11.06.2010, 17:01
не, я про составляющую русского языка. Понятие "максимальный размер уже выбранного файла" является кривым.

Berman
11.06.2010, 19:00
У меня не качается.

Nelzone
11.06.2010, 19:31
Berman все пашет

nuBo
13.06.2010, 23:35
отличная софтина, работает на ура, только на windows 7 (x86) прогрессбар сразу доходит до конца, в общем, это не очень важно :)

slesh
13.06.2010, 23:49
НУ с прогрессбаром везеде проблемки, потому что он показывает сколько файла была считано с винта и отправлено на сервак. Но вот винда сначало кидает данные в буфер в ядре, по этому кажется что файл отправился. такое почти на всех системах есть.

qwerra
15.06.2010, 18:57
Эх,Слэш,молодец,но подобный софт+ещё возможность отправки ещё на несколько файлопомоек давно уже на Злом в "Мастерской" выложен)
Вот если бы ты написал удачный загрузчик на ex.ua,вместо ихнего кривого,то да-респект!

RedFern.89
15.06.2010, 19:06
qwerra, я этим займусь)) 947-6восемь5 - пиши)))

greki_hoy
16.06.2010, 18:16
2 slesh вот этот кусочек может стать маленькой неприятностью

char buf[4096];
data_size = recv(MainSocket, buf, 4096, 0);
if (data_size > 0)
{
buf[data_size] = 0x00;
}
а если data_size вернет все 4096 ?

slesh
16.06.2010, 18:24
Знаю, я ж и говорю что быдлокод наскоро написанный.
Если учесть что пакет вообще может быть разбитый и за один раз не считать полностью HTTP заголовок и следовательно не получить ссылку на редирект, то считай проваливается всё. И по этому нужно делать цикл. да и таймауты не повредили бы.