|
|
  |
программатор Usbasp, покритикуйте мою оболочку |
|
|
|
Jan 12 2008, 22:38
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Usbasp+avrdude+оболочка. Выскажете плиз своё мнение, начиная от точек и запятых, технической грамотности, проверки битов по умолчанию, до полного оформления программы. Любая "здоровая" критика приветствуется! Сам проверял только на мега8 и 16.....работает  . Просьба отписаться в данном топике о результатах работы с другими контроллерами. Зы: c программатором от prottoss_а почему то "не дружит ". Программатор(железо) USBasp лучше залить приложенным файлом "USBasp_187,5.hex" , что даст возможность программировать "чистые" контроллеры без понижения скорости (установки перемычки на 8кГц), т.к. SCK программирования составляет 187,5 кГц.
|
|
|
|
Guest_=AVR=_*
|
Jan 12 2008, 23:28
|
Guests

|
Вот как это выглядит под англоязычным Win98SE:
|
|
|
|
Guest_=AVR=_*
|
Jan 13 2008, 09:57
|
Guests

|
На том моем "карантинном" компе с Win98SE всего две таких программы, которые пишут такую пургу - эта и еще одна (Элтеховская программа подбора DC/DC модулей). Видимо, в коде есть ссылки на какой-то не у всех имеющийся фонт, либо криво делаются манипуляции с Locale/CodePage. А насчет весь текст писать на английском - это еще одна грустная песня. Почитаешь такой самопальный "рунглиш", и думаешь - "лучше бы они по-китайски писали"
|
|
|
|
|
Jan 13 2008, 19:01
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Благодарю всех отписавшихся). 1) поколдавал со шрифтами, возможно всё будет ок. Фаил прикреплён. Посмотрите плиз). 2) В английском не силён, так что скорей всего получиться как говорят) 3) А какие пункты порекомендуете в меню ввести? С ABOUTOM подумаю. На счёт длл незнаю, возможно проблеммы с драйвером программатора. 4) с самого начала хотел сделать как в аврстудио, но долгое это занятие, оставил на "потом").
|
|
|
|
|
Jan 14 2008, 08:02
|

Иногдящий
   
Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931

|
Цитата Не возникнет проблем в W98? Да нет, как раз и не должно возникнуть  Цитата Скорее, наоборот, проблема в использовании UNICODE Да вот как раз борландовские продукты (С++ Builder и Delphi) с юникодом не сильно дружат... Что бы писать там в юникоде надо погеморроиться  По крайней мере эта программа держит текст не в юникоде...
|
|
|
|
|
Jan 14 2008, 13:11
|
Местный
  
Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621

|
Цитата(=AVR= @ Jan 13 2008, 03:28)  Вот как это выглядит под англоязычным Win98SE: Вместе ссообщениями о отсутствии dll - необходимо инсталляцию дополнить используемыми фонтами и используемыми библиотеками. 98-я винда, я думаю, не станет возражать, если ей системный фонт на русскоязычный помнять. С либами - либо компилить надо с опцией "все в одном", либо класть в папку с прогой используемые библиотеки. Либо ограничивать возможные ОСи.
|
|
|
|
|
Jan 15 2008, 03:53
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Цитата(one_man_show @ Jan 14 2008, 16:19)  Забыл спросить у автора об основной идее поставленной задачи, ради чего собственно пишите собственную утилиту? Простенький и удобный программатор AVR для USB с неплохой скоростью программирования (ком и лпт на ноуте отсутствуют). Помоем то, что сделано тобой, обладает отличной гибкостью, можешь наворотить как тебя устраивает, в том или ином случае, в этом и заключается удобство. В данном случае «удобство» - установил все настройки, сохранил под каким либо именем и объяснил другому человеку, что надо выбрать название проги в зависимости от программируемой платы и нажать кнопку программировать. Значительно сложней рассказать как пользоваться программатором из аврстудии, коде вижон и т.д. и т.п. Самообразование. Получить удовольствие от проделанной работы). Результаты работы оболочки меня устроили, вот и решил поделиться. Возможно кому то пригодиться. Зы. прицепляю фаил, исправил ошибки в автопрограммировании
|
|
|
|
|
Jan 15 2008, 06:35
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Какие предложите названия вкладок? Прикрепляю длл
|
|
|
|
|
Jan 15 2008, 15:10
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Цитата(prottoss @ Jan 15 2008, 15:09)  Простите, мож я пропустил чего то - зачем вообще утилита из нескольких файлов - нельзя обойтись одним екзешником? Может и можно, пока этим вопросом не занимался. На данный момент делаю основу, критерий которой - стабильная работа, а потом уже всё остальное. Спасибо за рекомендацию, если всё пойдёт ок, то на будущее учту  Ps. Проверил мега162. Работает!. Но надо подредактировать avrdude.conf, в файле ошибка. Изменить строчку программирования efuse соответствии с pdf на контроллер. Было write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", "x x x x x x x x 1 1 1 1 1 i i i"; Стало write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0", "x x x x x x x x 1 1 1 i i i i 1";
|
|
|
|
|
Jan 15 2008, 18:55
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(bodja74 @ Jan 16 2008, 00:18)  Использование GUI изначально закладывает под себя использование DLL ,все что нужно решить автору этой ветки ,так это использование DLL идущих в комплекте к винде ,а не из расширенного комплекта в составе среды разработки. Я бы сказал точнее  Использование Win32 изначально закладывает под себя использование DLL, хоть для консольных приложений, хоть для использующих GUI... Другое дело, если используется Borland Builder или аналогичная среда разработки для быстрого создания GUI приложений, то нужно в соответсвующем месте поставить галочку, дабы среда разработки собирала приложение одним файлом. Ибо такие среды, обычно, имеют прослойку между создаваемым приложением и Windows Win32 API в виде собственных библиотек (динамических или статических), которые должны поставлятся вместе с приложением, если соответсвующая галка не поставлена...О как  Надеюсь, получилось понятно
--------------------
|
|
|
|
|
Jan 15 2008, 19:39
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
2prottoss Действительно верите ,что Борландовские Си и Делфи больше знают про WinApi ,чем Майкрософтовские Си и Бейсик ?  Тут есть выбор или иметь многомегабайтный код в одном файле ,или многокилобайтный код с использованием библиотек. И если такой библиотеки нет в комплекте винды ,вам все равно прийдется за собой ее таскать ,вне зависимости от того ,на чем вы эту прогу напишете.
|
|
|
|
|
Jan 15 2008, 20:03
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(*SERG @ Jan 16 2008, 02:25)  Пока не в курсе о чём идёт речь  Но огромная просьба не переводить тему в другое русло  Сорри но хочется ответить:-) Цитата(bodja74 @ Jan 16 2008, 02:39)  2prottoss Действительно верите ,что Борландовские Си и Делфи больше знают про WinApi ,чем Майкрософтовские Си и Бейсик ?  Нет, но верю, что WIn32 API они знают лучше чем мы Цитата(bodja74 @ Jan 16 2008, 02:39)  Тут есть выбор или иметь многомегабайтный код в одном файле ,или многокилобайтный код с использованием библиотек. И если такой библиотеки нет в комплекте винды ,вам все равно прийдется за собой ее таскать ,вне зависимости от того ,на чем вы эту прогу напишете. Нууу, этт Вы загнули. Я давольно давно программирую под Windows, и, в частности, на Borland Builder-е. Если пользоваться стандартными компонентами, то в 600 - 800 кБ можно уложиться одним файлом, без использования внешних DLL и LIB... Цитата(*SERG @ Jan 16 2008, 02:25)  Пока не в курсе о чём идёт речь  Но огромная просьба не переводить тему в другое русло После исправления ошибок, работает с тини12. Немного откорректировал интерфейс. Отредактировал avrdude.conf для меги162 Скачал - красивая облочка - НО у мя ничего не запустилось - требует lib"чегой-то".dll...
--------------------
|
|
|
|
|
Jan 16 2008, 14:57
|

Иногдящий
   
Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931

|
Цитата Действительно верите ,что Борландовские Си и Делфи больше знают про WinApi ,чем МайкрософтовскиеСи и Бейсик ? А это ту совершенно ни при чем. Есть стандартные виндовые библиотеки, а есть борландовские рилтайм-библиотеки  . Борландовские библиотеки - это прослойка между WinAPI и пользователем - как раз для тех, кто не очень хочет разбираться с этим WinAPI и для ускорения разработки приложений. Эти борландовские библиотеки могут линковаться в исполняемый файл программы, а могут использоваться динамически - как поставить галочку  . При динамическом использовании этих библиотек размер небольшого исполняемого файла, как правило, не превышает 150 Кб, при статическом - 500 Кб и более. Хотя, и на Билдере можно написать приложение размером в 10 Кб...  Цитата или многокилобайтный код с использованием библиотек. И если такой библиотеки нет в комплекте винды ,вам все равно прийдется за собой ее таскать ,вне зависимости от того ,на чем вы эту прогу напишете. Неправда  . Мегабайтное приложение от Билдера - это уже довольно навороченная программа. Многокилобайтная - в любом случае. И стандартные библиотеки никуда не надо таскать, они всегда есть в винде, а вот специфичные - да, надо. Или в отдельном виде или прилинкованные к исполняемому файлу. Причем, это сильно зависит от того, в чем и как писалась программа  . Цитата Если пользоваться стандартными компонентами, то в 600 - 800 кБ можно уложиться одним файлом, без использования внешних DLL и LIB... А если не использовать компонентов вообще, то можно уложиться и в 70-80 Кб  Цитата Не загнул ,при использовании стандартных компонент на Васике ,прога средней сложности займет 100-150кБайт ,такого плана как автор выложил примерно 60кбайт ,а в упакованом виде килобайт 15 ,думаю примерно тоже можно получить и на Делфи ,а вот с Си На бейсике??? 60 Кб??? Наверное поэтому ко всем бейсиковским программам в инете идет в нагрузку ссылка на скачивание бейсиковских библиотек весом в 5-6 метров?  И не путайте язык программирования Си и среду разработки Си++Билдер. Программа на Си может занять вообще 10 байт  . Кстати, именно здешняя программа написана в Делфи, как я понимаю. А запрашиваемая ею библиотека не имеет отношения ни к виндам, ни к Борланду. Это какая-то дополнительная библиотека работы с USB, вероятно, она должна идти в комплекте с программатором. Пусть автор меня поправит  Цитата В оправдание могу сказать ,что собственно наша неспешная дискуссия с prottoss ,это косвенный материал для автора темы ,как улучшить свою программу Тоже согласен. После решения вопроса о размере и дополнительных библиотеках будет меньше нареканий на его программу
|
|
|
|
|
Jan 16 2008, 21:39
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(AndyBig @ Jan 16 2008, 18:57)  А это ту совершенно ни при чем. Есть стандартные виндовые библиотеки, а есть борландовские рилтайм-библиотеки  . Борландовские библиотеки - это прослойка между WinAPI и пользователем - как раз для тех, кто не очень хочет разбираться с этим WinAPI и для ускорения разработки приложений. Что значит не причем? Если они позволяют напрямую работать с WinAPI ,без всяких прослоек, все что нужно - просто обьявить функцию . Цитата На бейсике??? 60 Кб??? Наверное поэтому ко всем бейсиковским программам в инете идет в нагрузку ссылка на скачивание бейсиковских библиотек весом в 5-6 метров?  Бред. Цитата А запрашиваемая ею библиотека не имеет отношения ни к виндам, ни к Борланду. Это какая-то дополнительная библиотека работы с USB, вероятно, она должна идти в комплекте с программатором. Это драйвер ЮСБ. Теперь по теме,я тут порыскал инфу по этому драйверу (libusb0.dll) ,нашел достаточно подробное описание API деклараций ,можно попробоывать напрямую пощупать эту дллку ,если интересно декларации могу выложить, если допустим USBASP это просто преобразователь USB-SPI тогда AVRDUDE можно отправить в дальнее плаванье
|
|
|
|
|
Jan 17 2008, 09:59
|

Иногдящий
   
Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931

|
Цитата Что значит не причем?Если они позволяют напрямую работать с WinAPI ,без всяких прослоек,все что нужно - просто обьявить функцию . То и значит - ни при чем. Какое отношение имеет знание Борландом WinAPI к размеру кода и дополнительным библиотекам?  А Вы пробовали писать приложения на чистом API?  Если нет, то советую попробовать для осознания полезности прослоек (Билдеровских, Дельфийских, Бейсиковских и т.п.). Про бейсик - не бред. Его программы без своих рилтаймовских библиотек работать не способны. И эти библиотеки, так же, как и Борландовские, с виндой не поставляются.
|
|
|
|
|
Jan 17 2008, 10:27
|
Участник

Группа: Свой
Сообщений: 37
Регистрация: 13-05-07
Из: Minsk, Belarus
Пользователь №: 27 694

|
Цитата(*SERG @ Jan 17 2008, 05:01)  Конечно выкладывайте, дополнительная инфа никогда не помешает :) Если мне не пригодиться может когонибудь заинтересует Нескромные вопросы: #зачем писать оболочку, которая, как я понял, ещё чего-то там пытается сама программировать, когда для этого есть avrdude? `man avrdude(1)` исчерпывающе описывает всё, что можно им сделать, и я не вижу ничего такого, для чего может понадобиться libusb в оболочке. #почему бы не написать оболочку на чём-то, что для этого специально предназначено? например tcl/tk? #велосипедостроение - конечно, важная часть FL/OSS, но ведь уже есть туча всяких фронтэндов к avrdude. почему не взять какой-нибудь из них (например, gccStudio) и не допилить под свои нужды? -- WBR, Andrew
|
|
|
|
|
Jan 17 2008, 11:05
|
Бывалый
    
Группа: Свой
Сообщений: 1 584
Регистрация: 7-08-07
Пользователь №: 29 615

|
Цитата(*SERG @ Jan 17 2008, 06:01)  Все в одном. Project ->Options -> Package Птичка на Build with runtime packages. Размер сразу увеличится, зато запуск с любого места без дополнительных DLL
|
|
|
|
|
Jan 17 2008, 11:20
|
Участник

Группа: Свой
Сообщений: 37
Регистрация: 13-05-07
Из: Minsk, Belarus
Пользователь №: 27 694

|
Цитата(alexander55 @ Jan 17 2008, 13:05)  Все в одном. Project ->Options -> Package Птичка на Build with runtime packages. Размер сразу увеличится, зато запуск с любого места без дополнительных DLL Дополню: птичку _убрать_ Ещё посоветую убрать из dpr'а все модули, кроме Forms, а также посмотреть по остальным модулям, нет ли ненужных|неиспользуемых|легкозаменяемых модулей. Смартлинкер у борляндии довольно хитрый, но порою им нужно немного поруководить :) -- WBR, Andrew
|
|
|
|
|
Jan 17 2008, 11:30
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Цитата(Andrew O. Shadoura @ Jan 17 2008, 13:27)  Нескромные вопросы: #зачем писать оболочку, которая, как я понял, ещё чего-то там пытается сама программировать, когда для этого есть avrdude? `man avrdude(1)` исчерпывающе описывает всё, что можно им сделать, и я не вижу ничего такого, для чего может понадобиться libusb в оболочке. #почему бы не написать оболочку на чём-то, что для этого специально предназначено? например tcl/tk? #велосипедостроение - конечно, важная часть FL/OSS, но ведь уже есть туча всяких фронтэндов к avrdude. почему не взять какой-нибудь из них (например, gccStudio) и не допилить под свои нужды?
-- WBR, Andrew Ответы на большую часть вопросов уже есть в теме, а выбрал такой путь работы с аврдуде т.к. самая короткая дорога - та которую знаешь
|
|
|
|
|
Jan 17 2008, 14:02
|
Участник

Группа: Свой
Сообщений: 37
Регистрация: 13-05-07
Из: Minsk, Belarus
Пользователь №: 27 694

|
Цитата(*SERG @ Jan 17 2008, 13:30)  самая короткая дорога - та которую знаешь :) Оно-то так, но порой не помешает найти новую дорогу, возможно более продуктивную :) У меня, например, когда-то были дикие идеи насчёт написания оболочки к одной программе на php+gtk, потом эти мысли переползли в использование не gtk, а собственного плагина к php. Кончилось всё тем, что была найдена готовая оболочка, дописана под свои нужды и пущена в ход. -- WBR, Andrew
|
|
|
|
|
Jan 17 2008, 17:47
|

Местный
  
Группа: Свой
Сообщений: 274
Регистрация: 10-08-05
Из: Екатеринбург
Пользователь №: 7 517

|
Цитата(Andrew O. Shadoura @ Jan 17 2008, 17:02)  Оно-то так, но порой не помешает найти новую дорогу, возможно более продуктивную  У меня, например, когда-то были дикие идеи насчёт написания оболочки к одной программе на php+gtk, потом эти мысли переползли в использование не gtk, а собственного плагина к php. Кончилось всё тем, что была найдена готовая оболочка, дописана под свои нужды и пущена в ход. -- WBR, Andrew Так то оно так, но поиск нового пути требует либо большого количества времени (чтоб разобраться, что почему и каким образом) либо хорошего поводыря, а ни того, ни другого у меня нет Да и по большому уже на финише, зачем искать вторую дорогу). Зы. Предлагаю на эту тему больше не говорить, а то уйдём от основной
|
|
|
|
|
Jan 17 2008, 19:21
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(AndyBig @ Jan 17 2008, 13:59)  То и значит - ни при чем. Какое отношение имеет знание Борландом WinAPI к размеру кода и дополнительным библиотекам?  Сначала вы писали ,что есть прослойка между прогой и АПИ ,теперь пишете что это не имеет никакого отношения ни к размеру ни к библиотекам - не вижу логики. Цитата А Вы пробовали писать приложения на чистом API?  Если нет, то советую попробовать для осознания полезности прослоек (Билдеровских, Дельфийских, Бейсиковских и т.п.). Пробовал, вот в качестве простого примера Код Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) По русски это примерно: Обьявляется локальная подпрограмма с именем Sleep находящаяся в библиотеке kernel32 ,передаваемый параметр - число Long переменной dwMilliseconds. Тоесть говорим программе ,что есть функция или подрограмма ,которая находится не у нее ,а в библиотеке. Дальше в проге в любом месте просто пишем Sleep 100 Получаем задержку на 100милисекунд. Можете обьяснить ,что тут сложного ? Цитата Про бейсик - не бред. Его программы без своих рилтаймовских библиотек работать не способны. И эти библиотеки, так же, как и Борландовские, с виндой не поставляются. Ок ,если найдете в папке System или System32 ,файлы MSVBVM60.dll для VB6 и MSVCP60.dll для VC6 - можете спать спокойно ,поддержка этих языков есть в винде  По теме ,выкладываю примеры деклараций и полезных функций для libusb0
|
|
|
|
|
Jan 18 2008, 09:13
|

Иногдящий
   
Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931

|
Цитата Сначала вы писали ,что есть прослойка между прогой и АПИ ,теперь пишете что это не имеет никакого отношения ни к размеру ни к библиотекам - не вижу логики. Я говорил о Вашем вопросе про знания Борладном WinAPI  . Что именно это их знание слабо связано с размером кода. Цитата Пробовал, вот в качестве простого примераc1ec1Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Я имею в виду полностью все приложение на API  . Окна, меню, диалоги, элементы интерфейса и т.д. Естественно, что объявить и вызвать любую из функций API сложностей не представляет. В Сях для этого не надо даже ничего объявлять, все уже объявлено до нас в хидерах  .
|
|
|
|
|
Jan 18 2008, 17:52
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(AndyBig @ Jan 18 2008, 13:13)  Я имею в виду полностью все приложение на API  . Окна, меню, диалоги, элементы интерфейса и т.д. Зачем ,если все эти окошки,кнопочки и д.т. можно просто нарисовать в редакторе среды, я использую API для спецефических вещей ,например получить номер и модель винта или диска ,цвет точки с экрана ,открывать стандартные виндовые окна,работать с драйверами - тоесть то, что мне могут дать функции ОС ,но могут дать функции языка. Цитата Воспользуюсь темой для вопроса. Есть ли у кого-нибудь компоненты USB под C++Builder (в первую очередь HID). Вот здесь видел неплохой ресурс ,там сразу и под разные котроллеры есть. Правда похоже только под VB и VC ,но я думаю можно перезаточить. http://www.lvr.com/hidpage.htm
|
|
|
|
|
Jan 19 2008, 16:40
|

Местный
  
Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317

|
Цитата(*SERG @ Jan 19 2008, 18:51)  А зачем исходники? Вот результат! Просьба его оценить, а не исходники.  Знаете, я так и не понял, что Ваша программа делает и какая в ней необходимость. Думал, если поковыряю исходник, то пойму... Цитата(*SERG @ Jan 19 2008, 18:51)  Вот результат! Просьба его оценить, а не исходники.  Ну это мало интересно... Иеет смысл обсудить, то, как Вы это сделали. Из GUI мне к примеру не понятно, как Вы в делфи сделали границы групбоксов в стиле WinXP. Я, подключая нужный манифест для компиляции, мог добиться, только того, что только кнопки и текстбоксы выглядели в стиле XP. Ну а вообще, неужели Ваша программа представляет какаю-то коммерческую ценность? Я естесственно не имею права призывать вас к открытию кода - это было бы провакацией. Тем не менее, если бы в привели исходник, пользы для всех было бы больше.
|
|
|
|
|
Jan 19 2008, 21:29
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Aesthete Animus @ Jan 19 2008, 19:40)  Тем не менее, если бы в привели исходник, пользы для всех было бы больше. Отчего больше пользы? Многие знания умножают печали  . А уж лишние сущности ввиде борлондячих прослоек над MS тем более. P.S. Ближе к теме, пожалуйста!
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Jan 21 2008, 12:32
|
Знающий
   
Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984

|
Цитата(AndyBig @ Jan 19 2008, 19:05)  Вот об этом я и говорю. "Просто рисование" влечет за собой несколько метров библиотек этой среды. Не угадали  Что нужно ,я выше наисал ,а то начинаем уже по второму кругу. SERGДумаю если сделать в подобном духе (качаем прикрепленный файл) ,народу будет уже все равно ,сколько файлов использует ваша прога
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|