Эта книга была задумана как одна из первых книг о.NET, которая ознакомит читателя с основными идеями новой архитектуры и подготовит его к знакомству с более детальной литературой, например документацией Microsoft и ее толкованиями, которая неизбежно появится на рынке. Она поможет вам взглянуть на эту технологию с позиций ваших собственных рабочих планов и быстро освоить те концепции, которые покажутся необычными для большинства прогр...
Автор(ы): Дан Эпплман, Издательство: Питер, 2002 г.
Эта книга является вводным курсом по
изучению языка программирования Visual Basic .NET.
Даны основные принципы объектно-ориентированного
программирования в контексте языка VB .NET,
поскольку без хорошей подготовки в этой
области невозможно в полной мере
пользоваться всеми преимуществами VB .NET.
Изложены азы всех аспектов языка, которыми
должен владеть любой профессиональный
разработчик VB .NET
Автор(ы): Г. Корнелл, Дж. Моррисон, Издательство: Питер, 2002 г.
Основная задача книги - быстро ознакомить
разработчиков Visual Basic с изменениями в .NET
Framework. Программисты, использующие Java, C++, Delphi
или другие инструменты разработки
приложений и интересующиеся Visual Basic или
технологией .NET Framework, также найдут эту книгу
полезной. Хотя книга посвящена Visual Basic.NET, ее
основная цель - продемонстрировать
взаимодействие Visual Basic и ...
Автор(ы): Кит Франклин, Издательство: Вильямс, 2002 г.
Программа Citycat by Email позволяет работать с сервером Subscribe.ru с
помощью электронной почты. Теперь Вам не нужно тратить деньги на работу в
online и просматривать мегабайты рекламы для того, чтобы подписаться на
нужную рассылку! Вам просто необходимо скачать небольшую базу данных по всем
рассылкам каталога с нашего сайта, после чего Вы сможете подписываться и
отписываться от рассылок, заказывать архивы прошлых выпусков, выполнять
поиск по каталогу рассылок и многое другое.
Программу Citycat by Email можно бесплатно загрузить с сайта
http://sapisoft.h1.ru.
Крыса v1.0 - Программа для управления чужим компом в локалке или по инету. Что то на подобе трояна. Я делал его специально для издевательства над нашим информатиком! Просьба не использовать по прямому назначению, только для обучения...
Крыса v1.0 - Программа для управления чужим компом в локалке или по инету. Что то на подобе трояна. Я делал его специально для издевательства над нашим информатиком! :-))
VSN умер, да здравствует VSN (и так каждые пол года) - За последний месяц произошли очень важные события связанные с VSN. О этих событиях должны знать все кто изучает сей предмет, а таких немало. В неведении конечно можно быть и счастливым, а вот программистом – никогда. И потому я решил таки черкнуть несколько строк. За ближайшие пару часов статья получится вряд ли. Поэтому давайте назовем мой новый опус скромнее: краткое информационное сообщение.
Один момент из жизни форума: Для .NET разработчиков
Вопрос: Автор вопроса: Danil
Хочу поделиться со всеми кто пишет или начинает писать на платформе .NET. По данной ссылке http://www.crownwood.net находится дистрибутив с DLL'ой и примерами которая помогает создать интерфейс в стиле похожей на стиль Visual Studion.NET. Я считаю что при желании можно быстро въехать в программный код.
BalloonMessage for Microsoft Agent реализует диалог программы с
пользователем, используя при этом технологию Microsoft Agent. OCX реализует три
типа диалоговых окон: InputBox, MsgBox и MsgLabels.
Как работать со звуковыми .WAV файлами, где найти информацию о их внутренней структуре и способах ее обработки. Ну ОООЧЕНЬ не хочется платить 500 баксов за библиотеку компонентов.
Dim EXL As Excel.Application ' переменная для Excel
Private Sub LoadExcel(FileName As String)
On Error GoTo NotLoaded
Set EXL = GetObject(, "Excel.Application")
NotLoaded:
If Err.Number = 429 Then
Set EXL = CreateObject("Excel.Application")
ElseIf Err.Number <> 0 Then
Screen.MousePointer = vbDefault
' Пользователь нажал на кнопку Cancel
EXL.Workbooks.Close
Set EXL = Nothing
Screen.MousePointer = vbDefault
If Not Err.Number = 32755 Then
MsgBox Err.Description & vbCrLf & "error "
End If
Err.Clear
Exit Sub
End If
EXL.Workbooks.Open FileName:=FileName
End Sub
Вопрос:
Как в VB6 нарисовать амплитудно-частотную характеристику звукового .WAV файла (как например у Windows Sound Recorder)?
Вот, выдрано из одного из моих проектов. Разбирайся :))
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta HTTP-EQUIV="Expires" CONTENT="0">
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
</head>
<%
domain="domain.ru"
group="Domain Users"
ip=request("REMOTE_USER")
ip=replace(ip,"DOMAIN\","")
set objGroup = GetObject("WinNT://" & domain & "/" & group)
For Each objUser in objGroup.Members
If objUser.Class = "User" and objUser.Name = ip Then
sUserInfo = sUserInfo & objUser.FullName
Exit For
End If
Next
%>
<SCRIPT LANGUAGE=vbscript RUNAT=Server>
Class clsUpload
Private m_objFiles
Private m_objForm
Public Property Get Form()
Set Form = m_objForm
End Property
Public Property Get Files()
Set Files = m_objFiles
End Property
Private Sub Class_Initialize()
Set m_objFiles = New clsCollection
Set m_objForm = New clsCollection
ParseRequest
End Sub
Private Sub ParseRequest()
Dim lngTotalBytes, lngPosBeg, lngPosEnd, lngPosBoundary, lngPosTmp, lngPosFileName
Dim strBRequest, strBBoundary, strBContent
Dim strName, strFileName, strContentType, strValue, strTemp
Dim objFile
lngTotalBytes = Request.TotalBytes
strBRequest = Request.BinaryRead(lngTotalBytes)
lngPosBeg = 1
lngPosEnd = InStrB(lngPosBeg, strBRequest, UStr2Bstr(Chr(13)))
If lngPosEnd > 0 Then
strBBoundary = MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg)
lngPosBoundary = InStrB(1, strBRequest, strBBoundary)
End If
If strBBoundary = "" Then
lngPosBeg = 1
lngPosEnd = InStrB(lngPosBeg, strBRequest, UStr2BStr("&"))
Do While lngPosBeg < LenB(strBRequest)
strTemp = BStr2UStr(MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg))
lngPosTmp = InStr(1, strTemp, "=")
strName = URLDecode(Left(strTemp, lngPosTmp - 1))
strValue = URLDecode(Right(strTemp, Len(strTemp) - lngPosTmp))
m_objForm.Add strName, strValue
lngPosBeg = lngPosEnd + 1
lngPosEnd = InStrB(lngPosBeg, strBRequest, UStr2BStr("&"))
If lngPosEnd = 0 Then lngPosEnd = LenB(strBRequest) + 1
Loop
Else
Do Until (lngPosBoundary = InStrB(strBRequest, strBBoundary & UStr2Bstr("--")))
lngPosTmp = InStrB(lngPosBoundary, strBRequest, UStr2BStr("Content-Disposition"))
lngPosTmp = InStrB(lngPosTmp, strBRequest, UStr2BStr("name="))
lngPosBeg = lngPosTmp + 6
lngPosEnd = InStrB(lngPosBeg, strBRequest, UStr2BStr(Chr(34)))
strName = BStr2UStr(MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg))
lngPosFileName = InStrB(lngPosBoundary, strBRequest, UStr2BStr("filename="))
If lngPosFileName <> 0 And lngPosFileName < InStrB(lngPosEnd, strBRequest, strBBoundary) Then 'It is a file
lngPosBeg = lngPosFileName + 10
lngPosEnd = InStrB(lngPosBeg, strBRequest, UStr2BStr(chr(34)))
strFileName = BStr2UStr(MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg))
lngPosTmp = InStrB(lngPosEnd, strBRequest, UStr2BStr("Content-Type:"))
lngPosBeg = lngPosTmp + 14
lngPosEnd = InstrB(lngPosBeg, strBRequest, UStr2BStr(chr(13)))
strContentType = BStr2UStr(MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg))
lngPosBeg = lngPosEnd + 4
lngPosEnd = InStrB(lngPosBeg, strBRequest, strBBoundary) - 2
strBContent = MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg)
If strFileName <> "" And strBContent <> "" Then
Set objFile = New clsFile
objFile.Name = strName
objFile.FileName = Right(strFileName, Len(strFileName) - InStrRev(strFileName, "\"))
objFile.ContentType = strContentType
objFile.Blob = strBContent
m_objFiles.Add strName, objFile
End If
Else
lngPosTmp = InStrB(lngPosTmp, strBRequest, UStr2BStr(chr(13)))
lngPosBeg = lngPosTmp + 4
lngPosEnd = InStrB(lngPosBeg, strBRequest, strBBoundary) - 2
strValue = BStr2UStr(MidB(strBRequest, lngPosBeg, lngPosEnd - lngPosBeg))
m_objForm.Add strName, strValue
End If
lngPosBoundary = InStrB(lngPosBoundary + LenB(strBBoundary), strBRequest, strBBoundary)
Loop
End If
End Sub
Private Function BStr2UStr(BStr)
Dim lngLoop
BStr2UStr = ""
For lngLoop = 1 to LenB(BStr)
BStr2UStr = BStr2UStr & Chr(AscB(MidB(BStr,lngLoop,1)))
Next
End Function
Private Function UStr2Bstr(UStr)
Dim lngLoop
Dim strChar
UStr2Bstr = ""
For lngLoop = 1 to Len(UStr)
strChar = Mid(UStr, lngLoop, 1)
UStr2Bstr = UStr2Bstr & ChrB(AscB(strChar))
Next
End Function
Private Function URLDecode(Expression)
Dim strSource, strTemp, strResult
Dim lngPos
strSource = Replace(Expression, "+", " ")
For lngPos = 1 To Len(strSource)
strTemp = Mid(strSource, lngPos, 1)
If strTemp = "%" Then
If lngPos + 2 < Len(strSource) Then
strResult = strResult & Chr(CInt("&H" & Mid(strSource, lngPos + 1, 2)))
lngPos = lngPos + 2
End If
Else
strResult = strResult & strTemp
End If
Next
URLDecode = strResult
End Function
End Class
Class clsCollection
Private m_objDicItems
Private Sub Class_Initialize()
Set m_objDicItems = Server.CreateObject("Scripting.Dictionary")
m_objDicItems.CompareMode = vbTextCompare
End Sub
Public Property Get Count()
Count = m_objDicItems.Count
End Property
Public Default Function Item(Index)
Dim arrItems
If IsNumeric(Index) Then
arrItems = m_objDicItems.Items
If IsObject(arrItems(Index)) Then
Set Item = arrItems(Index)
Else
Item = arrItems(Index)
End If
Else
If m_objDicItems.Exists(Index) Then
If IsObject(m_objDicItems.Item(Index)) Then
Set Item = m_objDicItems.Item(Index)
Else
Item = m_objDicItems.Item(Index)
End If
End If
End If
End Function
Public Function Key(Index)
Dim arrKeys
If IsNumeric(Index) Then
arrKeys = m_objDicItems.Keys
Key = arrKeys(Index)
End If
End Function
Public Sub Add(Name, Value)
If m_objDicItems.Exists(Name) Then
m_objDicItems.Item(Name) = Value
Else
m_objDicItems.Add Name, Value
End If
End Sub
End Class
Class clsFile
Private m_strName
Private m_strContentType
Private m_strFileName
Private m_Blob
Public Property Get Name() : Name = m_strName : End Property
Public Property Let Name(vIn) : m_strName = vIn : End Property
Public Property Get ContentType() : ContentType = m_strContentType : End Property
Public Property Let ContentType(vIn) : m_strContentType = vIn : End Property
Public Property Get FileName() : FileName = m_strFileName : End Property
Public Property Let FileName(vIn) : m_strFileName = vIn : End Property
Public Property Get Blob() : Blob = m_Blob : End Property
Public Property Let Blob(vIn) : m_Blob = vIn : End Property
Public Sub Save(Path)
Dim objFSO, objFSOFile
Dim lngLoop
oldfilename=m_strFileName
extendet=right(m_strFileName,4)
suserinfo=left(suserinfo,len(suserinfo)/2)
m_strFileName=replace(m_strFileName,extendet," (ABTOP "&ucase(ip)&")"&extendet)
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objFSOFile = objFSO.CreateTextFile(objFSO.BuildPath("c:\inetpub\wwwroot\documents\upload from users", m_strFileName))
For lngLoop = 1 to LenB(m_Blob)
objFSOFile.Write Chr(AscB(MidB(m_Blob, lngLoop, 1)))
Next
objFSOFile.Close
End Sub
End Class
</SCRIPT>
</html>
Вопрос:
Разработал базу данных (.mdb) с интерфейсом на VB6, ADO 2.5 SP1. Структура базы создана средствами MS Access 2000. На моей машине с VB6,MS Access и Win98SE программа работает прекрасно. Проблемы возникли после установки программы на ПК пользователей также с Win98SE. Установка проходит нормально. Предварительно установил на ПК пользователей mdac_type.exe версии 2.5 SP1. MS Access на ПК пользователей не было установлено. При выполнении установленного файла (.exe) стала появляться ошибка с сообщением:
ADO error #-2147467259
Operation must use an updateable query.
Sourse: Microsoft JET Database Engine.
Как выяснилось, ошибка появляется при попытке редактирования или добавления записи программными средствами объекта Recordset:
rst.Fields("Name")="Nina"
rst.Update
Чтение из баэы данных проходит нормально.
В чем же дело?
При выполнении sql-запроса select нужно использовать атрибуты adOpenDynamic, adLockOptimistic:
rs.open "select * from ...", cn, adOpenDynamic, adLockOptimistic
Вопрос:
Может кто знает как передать по локальной сети голос с микрофона средствами WINSOCK. Подскажите как хотя бы это можно проделать или ссылку какую нить киньте.