Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Программирование (VB,C#,ASP,.NET): новости, советы, примеры


Выпуск # 722

Приветствую вас, любители высоких технологий! Вот и очередной выпуск рассылки. За неделю на сайте появилось много новых и интересных материалов, некоторые из которых вы сможете увидеть в этом выпуске.
Надеюсь, этот выпуск будет интересен для вас. Если вы хотите увидеть в следующих выпусках что-то конкретное, напишите мне об этом на ящик subscribe@kbyte.ru.


Содержание выпуска

Читайте в этом выпуске:

Если у вас есть вопросы по программированию или работе с компьютером, не стесняйтесь, спрашивайте.

Форумы Kbyte.Ru

На форумах Kbyte.Ru постоянно появляются новые интересные темы и обсуждения. В этом выпуске представлены лишь новые темы, с момента прошлой рассылки.

Кстати, любой желающий может на форумах Kbyte.Ru совершенно свободно получить помощь грамотных специалистов в области программирования, да и в целом информационных технологий.

Задать свой вопрос прямо сейчас

Подскажите пожалуйста...Проблемма такова: Программа писалась на VB6 на XP, При сохранении данных в txt файл (изначально его нет, создается программно) Все работает нормально, а при переносе программы на V7 (64bit) пишет что такого файла не существует...Может есть возможность определения типа ОС по клику по кнопке: и если к примеру ХР то сохраняем файл таким образом ...если V7 или Vista то такой код сохранения...Или как-то еще...допетрить не могу. Спасибо...
вырезка из кода:

Private Sub Command4_Click()
Open "1.txt" For Output As #1
Print #1, "Доброе утро"
Print #1, " "
'********************************
Close #1
Shell "cmd /X /C start 1.txt", vbHide
End Sub
P.S. может при установке моего приложения следует указывать определенную папку на пример Рабочий стол? Буду признателен за разъяснения...

[- к содержанию -]

Ответ #1 @Алексей Немиро 27.03.2013 10:22
Если программа создает файлы в системных папках, типа Program Files, то запускать её нужно от имени администратора, чтобы она имела возможность создавать и изменять файлы.

Определить версию операционной системы можно следующим образом:
Declare Function GetVersionEx Lib "kernel32.dll" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long

Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type

Dim os As OSVERSIONINFO ' информация о версии
Dim retval As Long 'возвращаемое значение

os.dwOSVersionInfoSize = Len(os) ' устанавливаем размер структуры
retval = GetVersionEx(os) ' читаем информацию о версии Windows
Print "Версия Windows:"; os.dwMajorVersion; "."; os.dwMinorVersion; os.dwBuildNumber
(не проверял, не имею vb 6.0)

Еще можно попробовать обойтись без API, и поискать версию ОС в результатах функции Environ. Что-нибудь типа Environ("OS").

[- к содержанию -]

Ответ #2 @Shark1 27.03.2013 19:49
Старый Basic уже позабыл, а на VB.Net что-то типа такого,для проверки версии:

If Environment.OSVersion.Version < New Version(5, 1) Then 
    Console.WriteLine("Windows XP or later required.") 
    'или ваш код
    Return 
End If

[- к содержанию -]

Ответ #3 @Леонид 27.03.2013 23:49
Сам перехожу на VB.net... Но все же жаль программа объемная но на VB6 Может есть еще варианты...Спасибо

[- к содержанию -]

Ответ #4 @Леонид 27.03.2013 23:58
os.dwOSVersionInfoSize = Len(os) здесь пишет ошибку "неправильная внешняя процедура"

[- к содержанию -]

Ответ #5 @Алексей Немиро 28.03.2013 10:04
Вот аналогичный пример в более понятном виде.

[- к содержанию -]

Добавить свой ответ в эту тему
Собрал с инета...
Кого из <звезд> еще подключить.

[- к содержанию -]

Как поместить файлы в архив из лист бокс?

[- к содержанию -]

Ответ #1 @Алексей Немиро 23.03.2013 19:15
Если в списке содержатся полные физические пути к файлам, то примерно так:
Dim strmZipOutputStream As New ZipOutputStream(File.Create("C:\мой
файл.zip"))
strmZipOutputStream.SetLevel(9)
Dim abyBuffer(4096) As Byte

For i As Integer = 0 To ListBox1.Items.Count - 1 'листаем список файлов
  Dim filePath As String = ListBox1.Items(i).ToString()
  'код упаковки файла в zip
  'это код из официального примера
Dim strmFile As FileStream = File.OpenRead(filePath)
                    Try

                        Dim objZipEntry As ZipEntry = New ZipEntry(filePath)

                        objZipEntry.DateTime = DateTime.Now
                        objZipEntry.Size = strmFile.Length

                        strmZipOutputStream.PutNextEntry(objZipEntry)
                        StreamUtils.Copy(strmFile, strmZipOutputStream, abyBuffer)
                    Finally
                        strmFile.Close()
                    End Try
Next

strmZipOutputStream.Finish()
strmZipOutputStream.Close()

Работоспособность не проверял.

PS: В официальном примере к SharpZipLib вполне нормальный пример упаковки множества файлов из указанного каталога.

[- к содержанию -]

Ответ #2 @Crash666 23.03.2013 21:47
Разумеется

[- к содержанию -]

Ответ #3 @Crash666 23.03.2013 22:22
Проблемка русско-язычные названия файлов превращаются в не русско-язычные названия файлов

[- к содержанию -]

Ответ #4 @Алексей Немиро 24.03.2013 10:40
Если верить документации, то кодировка устанавливается так:
ZipConstants.DefaultCodePage = System.Text.Encoding.Default.CodePage

[- к содержанию -]

Ответ #5 @Crash666 24.03.2013 12:47
Не возможно преобразовать в integer System.Text.Encoding.Default.CodePage

[- к содержанию -]

Добавить свой ответ в эту тему · В теме есть еще 24 ответов. Смотреть все ответы.
Среда Visual Basic STUDIO’2010 Professional
На форме Form11 имеется кнопка для добавления
Новой строки в DataGridView1, находящийся на Form11
После щелчка на кнопке открывается форма SubFormForEnter22,
На которй находится 11 контролов, которые надо заполнить в том случае,
когда в DataGridView1 отсутствует запись со значением ключа, которое
находится в нолевом столбце DataGridView1. Если же запись
со значением ключа присутствует, то надо выдать пользователю
ссобщение, чтобы ввести правильное значение, а оставшиеся 10 полей
не разумно вводить.
Я поставил в 5-ти событий
Private Sub MaskTxtBoxtxtNumPensCertificate_Leave
Private Sub MaskTxtBoxtxtNumPensCertificate_MouseLeave
Private Sub MaskTxtBoxtxtNumPensCertificate_ChangeUICues
Private Sub MaskTxtBoxtxtNumPensCertificate_Validated
Private Sub MaskTxtBoxtxtNumPensCertificate_Validating

MaskTxtBoxtxtNumPensCertificate.Text – В ЭТОТ контрол ввожу значения ключевого
поля, тип которого в таблице - Integer
Ниже приведенный код – и всё НЕ ТО:

Private Sub MaskTxtBoxtxtNumPensCertificate_ChangeUICues(ByVal sender As System.Object, ByVal e As System.Windows.Forms.UICuesEventArgs) Handles MaskTxtBoxtxtNumPensCertificate.ChangeUICues
Dim Column2 As Byte
Dim str_find2 As String = MaskTxtBoxtxtNumPensCertificate.Text
MsgBox("MaskTxtBoxtxtNumPensCertificate.Text" = MaskTxtBoxtxtNumPensCertificate.Text)
Column2 = 0 ' column in table "Pensioner"
For Each Row2 In Form11.DataGridView1.Rows
If (Row2.Cells(Column2).Value.ToString().Contains(str_find2)) Then
MsgBox("НАЙДЕНО") '
Exit For
Else
MsgBox("НЕ НАЙДЕНО") ' продолжаем заполнять оставшихся 10 полей
Exit Sub
End If
Next
End Sub

Не выводится
MsgBox("НАЙДЕНО")
Ни
MsgBox("НЕ НАЙДЕНО")

СПАСИБО!

[- к содержанию -]

Все темы и обсуждения

Вакансии в IT

Программист, чертёжник-проектировщик карт раскроя (листовой материал на станки с ЧПУ - лазерные, координатно-пробивные)

Россия, Москва | Работа в офисе | 45 000,00 KBP

Программист 1С

Россия, Москва | Работа в офисе | 100 000,00 KBP

Контент менеджер \ Web-мастер

Россия, Москва | Работа в офисе | 25 000,00 KBP

Инженер программист

Россия, Москва | Работа в офисе

Программист-стажер С++ / Программист PLC

Россия, Москва | Работа в офисе | 25 000,00 KBP

Программист C++

Россия, Москва | Работа в офисе

Программист 1С 7. 7. , 1С 8. 2.

Россия, Москва | Работа в офисе | 65 000,00 KBP

Инженер программист АТС

Россия, Москва | Работа в офисе | 30 000,00 KBP

Программист 1С

Россия, Москва | Работа в офисе | 70 000,00 KBP

Программист C++

Россия, Москва | Работа в офисе | 50 000,00 KBP

Все вакансии в IT · Создать резюме

[- к содержанию -]

Новости мира IT

Пользователи Java-плагинов все еще в большой опасности

Согласно данным секьюрити-вендора Websence, большинство браузеров с установленным Java-плагином уязвимы как минимум перед одним набором эксплоитов, применяемых для реализации ряда распространенных веб-атак. В Websence говорят, что использовали собственную аналитическую сеть, отслеживающую миллиарды веб-запросов от нескольких миллионов конечных пользовательских компьютеров. Сеть способна детектировать версии Java, установленные в системе, а также браузеры, с которыми она работает.

По данным последней телеметрии, лишь 5,5% пользователей имеют последнюю версию Java и последнюю версию используемого браузера в системе (Java 7 Update 17 или Java 6 Update 41), однако даже для этих версий Java в сети уже продаются эксплоит-киты, позволяющие использовать пока не закрытые дыры в программном обеспечении.

Согласно информации Websence, значительная часть эксплоитов есть в наборе Cool Exploit Kit, часто применяемый злоумышленниками для атак типа Drive-by и последующего заражения компьютеров вредоносными кодами. Cool Exploit Kit распространяется по подписке ценой 10 000 долларов в месяц, что позволяет предположить, что не так уж много ИТ-злоумышленников используют его.

В Websence также установили, что 71% Java-поддерживающих браузеров уязвимы и перед более старыми атаками. По крайней мере четыре эксплоит-кита - RedKit, CritXPack, Gong Da и Blackhole 2.0 - позволяют атаковать более старые дыры в Java. Кроме того, 75% браузеров имеют Java-плагины, выпущенные более полугода назад. А две трети из этого числа - более года назад.

28.03.2013 10:05 · Категория: Безопасность · Источник: CyberSecurity.ru

[- к содержанию -]

Ученые создали "био-батарейки" из водных бактерий

Совместная группа ученых из США и Великобритании работает над использованием биологических микроорганизмов в качестве источников электрического питания. В качестве так называемых "био-батареек" исследователи намерены использовать морских бактерий и экзотический механизм генерации электричества, связанный с ним.

Стоит отметить, что прежде исследователи уже использовали бактерии во множестве необычных сфер деятельности, в частности, для генерации человеческого гормона роста, для очистки воздуха, для производства топлива и много чего еще. Однако идея с "био-батарейками" - это нечто новое. В теории идея "био-батареек" была известна давно, но до сих пор было непонятно, как использовать сам организм бактерии для работы с электрическим зарядом.

Сейчас специалисты говорят, что бактерии могли бы в будущем стать одним из значительных источников генерации экологически чистого и автономного электричества для использования в домашних масштабах.

27.03.2013 10:26 · Категория: Железо · Источник: CyberSecurity.ru

[- к содержанию -]

Троян Carberp использует новые техники атак на популярные клиенты систем ДБО

Антивирусный разработчик Eset предупредил сегодня о появлении новой модификации троянской программы Carberp, способной использовать легальное ПО для хищения денежных средств, а также обходить механизм двухфакторной аутентификации с применением одноразовых паролей.

Эксперты вирусной лаборатории Eset обнаружили новую версию банковского трояна Carberp. В результате его анализа было установлено, что вредоносный код начал использовать специальную Java-библиотеку с открытым исходным кодом (т.н. Javassist). С ее помощью Carberp может модифицировать банковское ПО, основанное на языке программирования Java.

Хакерская группа Carberp была одной из первых киберпреступных групп, использовавших вредоносные программы для массового заражения систем удаленного банковского обслуживания. И хотя летом 2012 года многие члены группы Carberp были арестованы, семейство этих вредоносных программ сохраняет высокую активность, особенно в России и на Украине.

«Мы наблюдаем за Carberp достаточно давно и можем разделить время его активности на два больших периода: уверенный рост до лета 2012 года и уверенный спад после. Такое падение активности этого вредоносного кода связано, прежде всего, с арестами членов этой киберпреступной группы, которые занимались его дистрибуцией и распространением. В то же время мы отмечаем, что код бота продолжал свое развитие несмотря ни на что. Это является дополнительным свидетельством того, что написание и распространение вредоносного кода могут осуществляться разными лицами или группами лиц» — говорит старший вирусный аналитик Eset Артем Баранов.

27.03.2013 10:25 · Категория: Безопасность · Источник: CyberSecurity.ru

[- к содержанию -]

Доменный регистратор Webnames.ru пытается отстоять за собой домены .КОМ и .ОРГ

Российский доменный регистратор Webnames.ru представил в ICANN официальные возражения против заявок на кириллические домены .КОМ и .ОРГ. На эти домены верхнего уровня претендуют крупные западные компании — VeriSign и Public Interest Registry.

"Заявки на домены .КОМ и .ОРГ нарушают исключительные права Webnames.ru на соответствующие товарные знаки. Кроме того, компании принадлежит первенство в их использовании: регистрация доменных имен на русском языке в зонах .КОМ и .ОРГ стартовала в 2001 году, и за 12 лет клиенты Webnames.ru зарегистрировали несколько тысяч кириллических доменов. Вопрос выходит за рамки спора двух правообладателей, - считает Сергей Шариков, директор Webnames.ru. - Судьба доменов .КОМ и .ОРГ затрагивает национальные интересы России в доменном пространстве. Почему домены, которые уже стали частью Рунета, могут оказаться в руках иностранных компаний? В наше время доменные имена — это стратегический ресурс, и государство все чаще занимает активную позицию в вопросах управления Интернетом».

В Webnames.ru полагают, что существует реальная перспектива того, что предстоящий спор вокруг товарных знаков «КОМ» и «ОРГ» способен создать прецедент главенства узкокорпоративных правил ICANN, которые обслуживают, в основном, интеллектуальную собственность американских компаний над российским правом на территории России. Причем решение о главенстве корпоративного права может быть принято заранее, еще до того, как российский суд получит возможность применить нормы собственного права.

С целью привлечения внимания к этим проблемам, компания Webnames.ru обратилась с официальным письмом в Минкомсвязи РФ, а также к представителю России в Правительственном консультативном комитете в составе ICANN (GAC).

Заявки на домены .КОМ и .ОРГ были поданы в 2012 году в рамках масштабной программы по созданию новых доменов верхнего уровня, инициированной Международной корпорацией ICANN. На первом этапе в ICANN поступило 1930 заявок из 60 стран, среди которых - несколько российских (.РУС, .ДЕТИ, .MOSCOW и другие). До 13 марта 2013 года пользователь или организация могли направить в адрес ICANN обоснованное возражение против отдельных заявок, если они, по их мнению, вводят в заблуждение, нарушают исключительные права, вступают в противоречие с общественными интересами.

Возражение против заявок на домены .КОМ и .ОРГ уже рассматривается в ICANN, о результатах рассмотрения станет известно во второй половине апреля 2013 года.

27.03.2013 10:24 · Категория: Бизнес в IT · Источник: CyberSecurity.ru

[- к содержанию -]

Солнечные панели с квантовыми точками дешевле, проще и эффективнее

Инженеры продолжают заниматься поиском методов, направленных на повышение эффективности современных фотоэлектрических панелей, генерирующих электричество за счет солнечного света. Специалисты из Массачусетского института технологий говорят, что они решили на практике создать солнечные панели, которые будут объединять в себе такое явление, как квантовые точки и фотоэлектричество. Сама теория использования квантовых точек в фотоэлектричестве не нова, но до сих пор она не находила практического применения.

В МИТ говорят, что создали прототип солнечной панели, внутри которой находятся нанопровода со встроенными наноточками. Миллиарды нанопроводов значительно повышают КПД солнечной панели, говорят исследователи.

Как рассказали авторы разработки, использование наноточек в солнечных панелях имеет несколько значительных преимуществ для солнечной панели: во-первых, это более высокий КПД за счет более полного поглощения солнечного света, во-вторых, такие панели можно выпускать при комнатной температуре и они не требуют особого режима на производстве, в-третьих, по своей структуре они проще и не такие дорогие, как кремниевые пластины со слоеной структурой, в-четвертых, система с квантовыми точками не требует такой же чистоты исходного материала панели, как кремниевые панели, и это позволяет работать со значительно более дешевыми материалами.

Однако у панелей с квантовыми точками есть два нюанса: с одной стороны, панели должны быть достаточно тонкими, чтобы свет Солнца мог проходить через них, а с другой стороны они не должны быть слишком тонкими, чтобы задержка света была эффективной. Подогнать идеальную композицию и материалов - достаточно сложная задача.

26.03.2013 09:57 · Категория: Железо · Источник: CyberSecurity.ru

[- к содержанию -]

Все новости


Подпишитесь на тематические RSS-ленты Kbyte.Ru, чтобы быть в курсе последних новостей:

Основная лента · Форумы (темы и сообщения) · Visual Basic 5.0/6.0 · Visual Basic .NET · C# (Си шарп) · Delphi · JavaScript · ActionScript · ASP .NET · ASP .NET MVC

Ищите Kbyte.Ru в социальных сетях FaceBook, ВКонтакте, Twitter.

Если вы занимаетесь программированием, то наверняка вам пригодятся хитрые инструменты.


Международный портал для программистов и разработчиков Kbyte.Ru основан в 2006 году. Целью портала является объединение программистов и специалистов IT-бизнеса, студентов и преподавателей для обмена опытом и знаниями, оказания помощи во всех делах и начинаниях в области IT.
Kbyte.Ru является парнёром компаний Mail.Ru Group, WebMoney Transfer, Ozon.Ru и др.
Выпуск рассылки подготовлен автоматически. Все права на материалы выпуска принадлежат Kbyte.Ru если иное не указано отдельно.


В избранное