← Февраль 2003 → | ||||||
1
|
||||||
---|---|---|---|---|---|---|
4
|
5
|
6
|
8
|
9
|
||
11
|
12
|
13
|
15
|
16
|
||
18
|
19
|
20
|
22
|
23
|
||
25
|
26
|
27
|
За последние 60 дней ни разу не выходила
Сайт рассылки:
http://vbnet.ru
Открыта:
31-07-2001
Статистика
0 за неделю
Visual Basic: новости сайтов, советы, примеры кодов. Выпуск 135.
Информационный Канал Subscribe.Ru |
Visual Basic: новости сайтов, советы, примеры кодов.
Выпуск 135.
VBNet
VBMania
Голосование: Голосования сайта VBNet.Ru. Результаты голосований передаются на сайт. Проследите, что есть соединение с интернетом. Ссылки: |
Господа!!! читайте MSDN!!! Несколько слов от автора:
Обязательно загляните в раздел "MSAgent CD"!
Читайте! Содержание выпуска
Книги
Остальные книги о VB можно найти здесь. наверх MSAgent CD VBNet.Ru представляет новый компакт-диск! Этот CD полностью посвящён технологии Microsoft Agent. На диске Вы сможете найти:
Полное содержание диска можно скачать здесь. Обращаю Ваше внимание на то, что в магазин CD сайта VBNet.Ru действует система скидок. Если Вы уже приобрели у нас один компакт-диск, то на последующие заказы действует скидка 5%. Если же Вы купили 3 или более CD, то скидка - 10%. Компакт-диск распространяется по почте наложенным платежом. Чтобы заказать диск, зайдите сюда: http://vbnet.ru/vbshop/order.asp?id=3. наверх Добавить горизонтальную прокрутку в ListBox Добавьте ListBox на форму, а также элемент CommandButton. Добавьте 1 длинную string-переменную в ListBox. Самым полным примером я считаю вариант 3,
поскольку заранее вы не можете знать, какой у вас
элемент в ListBox'е самый длинный. А Вариант
3 методом перебора всех элементов ListBox'а
определяет самый длинный элемент (по числу
символов)
Private Declare Function SendMessageByNum Lib
"user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long,
ByVal wParam As Long, ByVal lParam As Long) As Long 'Пример 2 Private Declare Function SendMessageByNum Lib "user32" Alias
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long,
ByVal lParam As Long) As Long 'Пример 3 Private Declare Function SendMessageByNum Lib "user32" Alias
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long,
ByVal lParam As Long) As Long Автоскролинг текста Данный пример покажет, как можно организовать автоскролинг элемента RichTextBox. Для проверки выполнения кода вам надо добавить
на форму элементы RichTextBox, Picture и
CommandButton. Не забудьте указать правильную
ссылку на файл mydoc.rtf
Основы элемента RichTextBox Элемент RichTextBox представляет собой усовершенствованное текстовое окно, с помощью которого вы можете создавать полноценные файлы в формате RTF, в которых вы можете как угодно форматировать внешний вид своего документа: расставлять переносы, выделять текст различными шрифтами, менять гарнитуру текста и т.д. Подключается данный контрол очень просто:
через меню Project | Components. установите
флажок на строчке Microsoft Rich Textbox Control 6.0 и у
вас на панели Toolbox появится значок этого
компонента. Затем вы размещаете данный контрол
на вашей форме... и все.
RichTextBox1.SelBold = True Выделить текст курсивомRichTextBox1.SelItalic = True Выделить текст подчеркнутым шрифтомRichTextBox1.SelUnderline = True Просмотр текста в виде простого текстаMsgBox RichTextBox1.Text Просмотр текста в виде RTFMsgBox RichTextBox1.TextRTF Загрузить файлRichTextBox1.LoadFile App.Path & "\RTFText.rtf", rtfRTF или RichTextBox1.LoadFile App.Path & "\RTFText.rtf", rtfText Определение строки, на которой находится курсорНа самом деле определение строки, на которой находится курсор, не вызывает никаких трудностей. У элемента RichTextBox существует метод GetLineFromChar, который и отвечает на вопрос этой страницы. Непонятно только, почему разработчики не предусмотрели определение позиции курсора на строке. Ответ на этот вопрос остается открытым. Пишите Private Sub Command1_Click() Какое слово под курсором мыши Данный пример покажет вам, какое слово находится под курсором мыши в элементе RichTextBox. Добавьте на форму элемент RichTextBox и элемент Label Private Const EM_CHARFROMPOS& = &HD7 Private Type POINTAPI X As Long Y As Long End Type Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Public Function RichWordOver(rch As RichTextBox, X As Single, Y As Single) As String Dim pt As POINTAPI Dim pos As Integer Dim start_pos As Integer Dim end_pos As Integer Dim ch As String Dim txt As String Dim txtlen As Integer pt.X = X \ Screen.TwipsPerPixelX pt.Y = Y \ Screen.TwipsPerPixelY pos = SendMessage(rch.hWnd, EM_CHARFROMPOS, 0&, pt) If pos <= 0 Then Exit Function txt = rch.Text For start_pos = pos To 1 Step -1 ch = Mid$(rch.Text, start_pos, 1) If Not ((ch >= "0" And ch <= "9") Or (ch >= "a" And ch <= "z") Or (ch >= "A" And ch <= "Z") Or ch = "_") Then Exit For Next start_pos start_pos = start_pos + 1 txtlen = Len(txt) For end_pos = pos To txtlen ch = Mid$(txt, end_pos, 1) If Not ((ch >= "0" And ch <= "9") Or (ch >= "a" And ch <= "z") Or (ch >= "A" And ch <= "Z") Or ch = "_") Then Exit For Next end_pos end_pos = end_pos - 1 If start_pos <= end_pos Then RichWordOver = Mid$(txt, start_pos, end_pos - start_pos + 1) End Function Private Sub Form_Load() Label1.Caption = "" RichTextBox1.Text = "Ready-To-Run Visual Basic Algorithms, Second Edition" & vbCrLf & vbCrLf & "Extend your applications with powerful algorithms written in Visual Basic. Sorting, searching, trees, hashing, advanced recursion, network algorithms, object-oriented programming, and much more. Visual Basic Algorithms updated and expanded for Visual Basic 5." & vbCrLf & vbCrLf & "http://www.vb-helper.com/vba.htm" End Sub Private Sub RichTextBox1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim txt As String txt = RichWordOver(RichTextBox1, X, Y) If Label1.Caption <> txt Then Label1.Caption = txt End Sub наверх Как включить прокрутку по горизонтали По умолчанию, когда вы помещаете RichTextBox на форму, VB устанавливает свойство RightMargin как 0. Это означает, что вводимый пользователем текст целиком располагается внутри текстового окна. Для вывода горизонтальной линейки прокрутки необходимо, чтобы значение свойства RightMargin было больше, чем ширина текстового окна. Иначе, даже если установить свойство ScrollBars как 1-rtfHorizontal, RichTextBox не выведет линейку прокрутки. Поместите на форму RichTextBox, имеющий
ширину 4000. Затем установите свойство RightMargin
как 4400, а свойство ScrollBars как 1-rtfHorizontal.
Запустите проект на выполнение и начните вводить
текст. Когда достигнете границы текстового окна,
VB выведет горизонтальную линейку прокрутки.
Мои программы BalloonMessage for MS Agent BalloonMessage for Microsoft Agent реализует диалог программы с
пользователем, используя при этом технологию Microsoft Agent. OCX реализует три
типа диалоговых окон: InputBox, MsgBox и MsgLabels. Автора: Шатрыкин Иван и Павел Сурменок. наверх Вопрос/Ответ Здесь Вы можете задать вопрос, или ответить на уже имеющиеся вопросы. Вопросы:Автор вопроса: Костик Ответ ожидается по этому адресу Как можно выключить компьютер в WinXP и Win9x (нужно чтобы код был для WinXP и Win9x одним и темже)? Автор вопроса: Костик Ответ ожидается по этому адресу Можно ли сделать Рабочий стол = Enebled или сделать форму прозрачного цвета? Нужно чтобы до определённого события нельзя было польяоваться ни рабочим столом, ни панелью (там где кнопка Пуск) Автор вопроса: Paul Ответ ожидается по этому адресу Подскажите, есть ли программа для автоматического подсчета количества распечатанных листов на принтере. Я не спец в VB, но может быть есть люди, которые ее уже написали и успешно пользуются. Если не трудно, то пришлите мне ее или хотя бы адрес, где эту программу можно взять. Автор вопроса: Володя Шестерень Ответ ожидается по этому адресу Пишу прогу по типу простенького маршрутизатора: удаленная тачка-[1] с модемом ловит входящие звонки от DialUp-почтовок-[3] и перенаправляет по TCP данные на почтовку-[2] (Argus). Использую MSCOMM И WINSOCKET. Вообщем все работает но есть одна проблемка: при приеме WINSOCKET-ом [1] от [2] больших файлов - он почти сразу загоняет их к себе в буфер и т.к. модем-то помедленнее передает, то нарушается синхронность модемного протокола т.е. при появлении ошибок и запроса с [3]-й на Resend from byte... принятый ответ WINSOCKET-ом [1] от [2] попадает в конец буфера и покуда он дойдет на отправку в модем для [3] модемная связь [1] с [3] обрывается. Вопрос: можно ли уменьшить размер входного буфера WINSOCKET-а или как-то притормаживать закачку входного потока по TCP в его буфер или че другое попробовать. (На маршрутизаторах Cisco - размер буфера видать пару килобайт и все работает на ура, хотя конечно это разные вещи). Автор вопроса: Lexa Ответ ожидается по этому адресу Есть ли такой грид который мог бы отображать данные различными цветами в зависимости от условий,скажем если значение поля меньше 10 тогда чёрным, больше - красным? Автор вопроса: Valer Ответ ожидается по этому адресу Подскажите, плиз, как сделать прогу на VB, чтобы она запускалась только с CD (т.е.ссылалась на серийный номер CD-диска). Приведите пример кода, если не трудно. Автор вопроса: Шурик Ответ ожидается по этому адресу Подскажите как из программы открыть сидюк? И кто нибудь знает где можно достать инфу по работе с Swiftsoft Multimedia Tools OCX Автор вопроса: Роман Ответ ожидается по этому адресу Как осуществить перебор всех контролов только на одной вкладке SSTab? Автор вопроса: Олег Ответ ожидается по этому адресу Не подскажите ли вы как в тестбоксе (или рич текст боксе) изменить цвет (программным путём) конкретных символов, например, я ввожу в текст-бокс "Привет всем !!!". Нужно слово "привет" сделать зелёным, "всем" красным и "!!!" синим цветом. Или ещё например как в редакторе VB- все команды синим цветом, ремарки зелёным и т.д. Автор вопроса: Dmitri Islentyev Ответ ожидается по этому адресу Может кто подскажет как быть: пишу на vbscript(asp), задача - с помощью word.application сохранить указанный документ ворда как html? На vb все работает, а на asp валится с сообщением "Не удается открыть банк макросов", хотя никаких макросов там нет. Вот кусок кода, валится на 3 строке: Dim objWdDoc Set objWdDoc=Server.CreateObject("Word.Application") objWdDoc.Documents.Open "C:\work\word-work\bar.doc" Автор вопроса: Лёха Ответ ожидается по этому адресу Кто-нибудь может подсказать, как сделать прозрачный контрол, который бы реагировал на нажатие кнопок мыши. А может, кто знает, как отлавливать события мыши MouseUp MouseDown??? Автор вопроса: LexSys Ответ ожидается по этому адресу 1) Люди помогите, мне нужно сделать 1 графическую фишку: Есть Пикчер с картинкой (растянутый на весь экран), мне нучно, разбить его на много кубиков, и чтобы каждый кубик полетел в произвольную сторону, за границу экрана? (Может кто видал такую заставку) 2) И еще дайте пример записи\чтения данных в ини файлы, но чтобы было без всяких ocx, dllок? Автор вопроса: Артем Коваль Ответ ожидается по этому адресу Скажите пожалуйста как перемещать строки в ListView'е, и как програмно выделять любую строку по индексу. Автор вопроса: Hidel Ответ ожидается по этому адресу Как програмно реализовать на VB принятый в LPT или COM порт сигнал, чтобы на экране что нибудь происходило? Автор вопроса: s-in Ответ ожидается по этому адресу Как получить пароли Outlook Express? У меня есть исходник на с++, но никак не могу перевести его на VB. Все что я понял, так это то, что используется не документируемая функция PStoreCreateInstancePtr, которая вызывается из файла pstorec.dll. В общем похож на алгоритм получения кешированых паролей. Ответы: Вопрос: У меня вопрос, как узнать список расшаренных ресурсов с определенного ip. Ответ: Автор ответа: Alex Ну, вот как всегда... на вопросы типа "как открыть меню" отвечает 10 человек, а на "нормальные" вопросы не отвечает никто. Непорядок! Кстати, в свое время я долго (приблизительно год) не мог получить вразумительного ответа на этот вопрос. Но... кто ищет тот всегда найдет. Нашел и ты. Для этого надо воспользоваться API функциями класса WNet Это: WNetOpenEnum - начинает процесс перечисления сетевых ресурсов с корневого уровня или уровня другого сетевого ресурса WNetEnumResource - перечисляет сетевые ресурсы WNetCloseEnum - закрывает манипулятор перечисления сетевых ресурсов Все это работает как поиск файлов с помощью FindeFirst и FindeNext, только чуть-чуть сложнее. Тебе также будут полезны функции: WNetGetConnection - получает информацию подключения для локального ресурса WNetGetUniversalName - получает полное сетевое имя файла или сетевого ресурса Недеюсь как пользоваться API ты разберешься сам, ну если что... мыль. Вопрос: Есть прога - локальный чат, который использует широковещательные пакеты. так вот, надо написать прогу, которая слушает порт (на котором сидит этот чат) и принимает не только "свои" пакеты с сообщениями, но и "чужие". Короче говоря, че-то типа сниффера! Как это можно организовать? Ответ: Автор ответа: Alex Берешь WinSock. Выбираешь UDP протокол, и говоришь какой порт слушать. Если "зашевелится" кто у тебя событие наступит и ты сможешь пакет этот прочитать. Вопрос: Как можно создать метку (Label) во время работы программы, и как можно ее удалить. Причем добавление и удаление по возможности неограниченного количества Labelов за один запуск программы и по возможности чтобы они были систематизированы. Ответ: Автор ответа: Alex Кладешь Label на форму. В свойстве index=0. Load Label1 'Создать новый Label со следующим индексом Unload Label1 'Выгрузить (удалить) Label из масива В процедуре события пишешь: Private Sub Label1_Click(Index As Integer) Label1(Index).Caption = "---" End Sub Надеюсь ясно. Вопрос: Не мог бы мне кто-нибудь подсказать, как работать с числами в двоичной, 16-ричной, 8-ричной системами счисления. Может быть, в бэйсике есть какие-нибудь операции и функции для работы с ними? Ответ: Автор ответа: Alex Функции: HEX(255) - вернет "FF" - шестнадцатиричное представление десятичного OCT(8) - вернет "10" - восьмеричное представление десятичного числа BIN - к сожалению из VB ее убрали, а QBasic и QBX и VBDos она помниться мне была. Ну, ничего, напиши сам свою. И это еще не все... VAL("&HFF") - вернет 255 (число, а не строку) VAL("&O10") - вернет 8 И в своей программе ты можешь наровне с десятичными писать шестнадцатиричные и восьмиричные числа: A = &HFF или A = &O10 Вопрос: Как привязать программу к ЭВМ. Только пожалуйста не надо писать всякую бурду про дату биоса т.к она одинакова на половине мам и в 2к эта фигня не работает SOS!!!!!!! Ответ: Автор ответа: shadow А чево ты сам-то к дате биоса привязался? Есьть ведь еще дофигища параметров - номер винта, мамки, видюхи - а если все эти номера еще и сложить(умножить, разделить и т.д.) - тогда вообще уникальное число получится. Ответ: Автор ответа: Alex В свое время я тоже сталкивался с этой проблемой, и единственный выход, который я нашел для себя это собрать как можно больше уникальной информации о конкретной машине. Это: 1) Серийный номер HDD - он уникален. Используй API GetVolumeInformation 2) При установке винда в реестре пишет уникальный идентефикатор машины т.е. machine_id. Точно не помню как он называется и где именно находится, попробуй поискать его в разделе: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion (неохото лезть искать, но если оч. надо, то поискать можно) 3) Серийный номер CPU. (надо рыть исходники) С первыми двумя у меня проблем не возникло, а третий работал не на всех процах. Надеюсь понятно. В принципе тебе может хватить и первого. Вопрос: Нужна помощь в написании программы программа должна открывать .html, .mdb файлы и искать e-mail'ы, программа нужна, чтобы вести базу данных пользователей. Базы есть но в html и mdb в ручную переволит очень долго,люди если кто нибудь может помочь хелпните. Ответ: Автор ответа: shadow Видимо предполагается что будет происходить поиск по слылкам на емайл, т.к. в тексте HTML @(сабака) может встречаться и без привязки к емылу (например в анекдотах для замены мата: х@й). Тогда нет ничего проще: открываеш HTML как текстовый файл на чтение и отсеиваещ по тегам: например есть HTML MyString="<куча текста> biaka@buka.ru <куча текста>" считываеш весь текст в MyString(или построчно если большой) и проверяеш (в случае считывания всего текста, проверенный кусок надо отсекать MyString=Right(MyString, Len(MyString)-A) ) Dim A As Integer Dim Emyl As String Dim Begin As String Dim MyString As String MyString = Text1.Text Begin = " A = InStr(1, MyString, Begin, 1) + Len(Begin) Emyl = Mid(MyString, A, InStr(A, MyString, Chr$(34) + ">", 1) - A) Text1.Text = Emyl Пример рабочий Вопрос: У меня один маленький вопрос по объекту ADODB.Recordset. Чем отличаются значения свойства CursorLocation - adUseClient и adUseServer? И почему, если это свойство установлено в adUserServer, то свойство RecordCount воявращает -1 и при попытке связать Recordset с DataGrid вояникает ошибка. Ответ: Автор ответа: Sergey Вопрос слишком глобальный, чтобы на него ответить одним предожением. Значения этого св-ва зависят от того какой источник данных и какой провайдер используется ADO для доступа к данным. Если брать MSSQL, то действительно при CursorLocation = adUseServer RecordCount всегда -1 потому что ADO не знает сколько записей в рекордсете и которые нужно вытягивать через Eof/MoveNext. Клиентские курсоры быстрее потому что данные располагаются на клиенте, но серверные используют меньше ресурсов. Вопрос: У меня 2 принтера, HP и VentaFax. Из моей проги мне нужно то напечатать заявку, то послать ее по факсу. Эту проблему пока я решаю вызовом окна Windows "Принтеры" и переключением принтера по умолчанию. А вот программно, выбрав сообветствующий переключатель на форме не удается. Если кто решил эту проблему, помогите п-та. Ответ: Автор ответа: Артем Кривокрисенко Думаю, так: Printers(n).print ..... где n - номер принтера Вопрос: Как, если можно, сделать в VB ассемблерные вставки? Ответ: Автор ответа: Артем Кривокрисенко Option Explicit 'restarting your machine by assembly 'works only on win 9x os (not sure of win me) Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal ptrMC As Long, ByVal P1 As Long, ByVal P2 As Long, ByVal P3 As Long, ByVal P4 As Long) As Long Private MCode(0 To 8) As Byte 'the byte array to hold the machine code Private pointerMC As Long 'pointer to the first byte Private Sub Command1_Click() Dim dl As Long Dim response response = MsgBox("If you are using Win9x, this will restart your machine now. Save your works before clicking 'yes'. Are you sure to do it?", vbQuestion + vbYesNo + vbDefaultButton2) If response = vbNo Then Exit Sub dl = CallWindowProc(pointerMC, 0&, 0&, 0&, 0&) End Sub Private Sub Form_Load() 'the assembly codes are these: ' in al,92h ' or al,1 ' out 92h,al ' ret 16 'the hex values of these codes from the generated binary file 'by NASM are put into the byte array MCode(0) = &HE4 MCode(1) = &H92 MCode(2) = &HC MCode(3) = &H1 MCode(4) = &HE6 MCode(5) = &H92 MCode(6) = &HC2 MCode(7) = &H10 MCode(8) = &H0 'pointing to the first byte of machine code pointerMC = VarPtr(MCode(0)) End Sub Если верить автору кода, этот код должен перезагрузить машину. У меня ни под XP, ни под 98-й ничего не происходит. Ответ: Автор ответа: P@Ssword Можно написать на Ассемблере Dynamic Link Library и использовать её функции в коде VB. Больше никак. Ответ: Автор ответа: Sergey Никак, да и для чего ? Ведь ты не сможешь все равно использовать в ассемблерном коде переменные/объекты VB. Ответ: Автор ответа: ]CBK[CRaSH Чего нету того нету. Но можно написать DLL на асме и юзать в вб Вопрос: Вот вопрос говарят он тежёлый. Есть обьект DanaGrid в его свойствах есть возможнасть сделать из колонки в ComboBox (как в Access) но я не знаю как. К примеру я делал так Private Sub Form_Load() Dim Indx As Integer DataGrid1.Columns(1).Button = True End Sub Private Sub DataGrid_ButtonClick(ByVal ColIndex As Integer) With DataGrid List1.Top = .RowTop(.Row) + .Top + .RowHeight + 10 List1.Width = .Columns(1).Width + 50 If Not .Columns(1).Text = "" Then For Indx = 0 To List1.ListCount - 1 List1.ListIndex = Indx If List1.Text = .Columns(1).Text Then List1.ListIndex = Indx Exit For End If Next Indx Else List1.ListIndex = 0 End If End With List1.Visible = True List1.SetFocus End Sub Может есть на много удобный способ, не проста так сделали эту кнопку в DataGrid. Ответ: Автор ответа: Sergey Если тебе нужен чтобы ты мог ввести данные из списка (ComboBox) в какую-то из ячеек используй ComponentOne True DBGrid + TDBDropDown компоненты. Вопрос: У меня VB6 не хочет работать с базами Access2000, примеры из Access97 берет, а для 2000 пишет - нераспознанный формат данных, когда выбираю RecordSource. Помогите, что я делаю не так? Ответ: Автор ответа: Кварк Привет, тебе нужно инстальнуть новый MDAC 2.6 вроде... Я нашел в 5 сервис паке (говорят еще в 4 был) мне помогло. Ответ: Автор ответа: Лозовский Антон Борисович Попробуй поставить Servicepack 5. Ответ: Автор ответа: Алексей Нужно работать через dao360.dll (формат Access 2000). Ответ: Автор ответа: Корик VB6 работает с Access2000 только после установления Server Pack, который ты можешь найти на сайте микрософта. Ответ: Автор ответа: Sergey Я так понял, речь идет о библиотеке DAO? Если так то для того, чтобы она понимала Access 2000/XP необходима версия 3.60 и не ниже. Вопрос: Подскажите пожалуйста где можно бесплатно скачать самоучитель для начинающих или может быть есть какие-нибудь рассылеи уроков. Я живу за границей и поэтому имеются сложности с оплатой. Ответ: Автор ответа: Артем Кривокрисенко www.vb.kiev.ua - Прекрасный учебник Андрея Гончарова "Мышление в стиле Visual Basic". Must have! Есть такая конференция - SoobCha_VB. Там можно получить ответ практически на любой ответ любой сложности. Подписаться можно, отправив пустое письмо по адресу vb-on@soobcha.org Ответ: Автор ответа: Loki Зайди на www.subscribe.ru там ты можешь подписаться на рассылки. Там ты найдеш раздел програмирование!!! Вопрос: Почему у меня 2 проекта не принимают функции Right или Left, создаю новый проект - все нормально, а в этих он просто не принимает их, как-будто их не существует. Эти 2 проекта исп. Winsock, может из-за этого? Если пишу так Right$ - Ошибка: Type-declaration character does not match declared date tupe. Если пишу так Right - Ошибка: Ожидаемый массив Ответ: Автор ответа: Артем Кривокрисенко Не пойму, в чем проблема. Неплохо бы и привести кусочек кода. Попробуй сделать так: str= VBA.Right(.....) Ответ: Автор ответа: ]CBK[CRaSH Здесь может быть из-за того что у тебя в References подключин обьекс которого не существует Ответ: Автор ответа: TiborF В полне возможно что в твоих проектах уже объявлены одноимённые переменные или ф Вопрос: Подскажите, как сделать форму проярачной? С SetWindowLong что-то не получается Ответ: Автор ответа: P@Ssword Если с SetWinLong не получается, то первое, что надо сделать - установить Windows не ниже 2000. Вопрос: Делаю так (естественно все продекларировав): Dim hwnd As Long Dim pid As Long Dim pHandle As Long Dim str As String*20 hwnd = FindWindow(vbNullString,"яаголовок окна игры") If(hwnd=0) Then Exit Sub GetWindowThreadProcessld hwnd,pid pHandle =OpenProcess(PROCESS_ALL_ACCESS,False,pid) If(pHandle=0)Then Exit Sub ReadProcessMemory pHandle, &H(adres),str,20,0& text1.text=str CloseHandle hProcess Всё это яамечательно, только мне надо считывать не строку, а число. Если поставить str в Long то воявращается ноль, все остальные типы дают ошибку - несовпадение типов. Скажите как считать число? или придется преобраяовывать строчку по Asc? Ответ: Автор ответа: P@Ssword Может, у тебя прописана передача строки ByVal, если да - то просто убери. Вопрос: Как в VB играть MIDI,WAV,MP3и другие файлы? Ответ: Автор ответа: Кварк Привет, а ты просто подцепи медиа оcx (из набора стандартных) он все могет Ответ: Автор ответа: lom Используй такой контрол, как WindowsMediaPlayer (Component-WindowsMediaPlayer) WindowsMediaPlayer.FileName = "Путь к твоемй файлу" а так же можешь использовать методы WindowsMediaPlayer.Play WindowsMediaPlayer.Stop WindowsMediaPlayer.Pause Вопрос: Скажите, существует ли такая API функция, которая считывает состояние трафика, при соединении с Инетом? Ответ: Автор ответа: Лозовский Антон Борисович Нету. Пиши заглушку через Винсок. Вопрос: Я создал прогу типа обучающего комплекса(Full ass) но самое главное что я хочу сделать это чтобы все базы были на серванте, а клиен юзал их по сети. НО фишка в том что WinSock едри его растуды связанный по протаколу TCP не разрешает конектится нескольким клиентам к одному порту. Я сделал процедуру автомотического добовления WinSocka и встретил баг. после дабавления около 40 sockoв всех обрубало или начинало все глючить. Я начил использовать UDP и о чудо в забиндиный порт могут конектится дох..на народу и посылать инфу серванту, а вот наоборот сервер посылает инфу только тому кто первый ему пошлет что-нибудь. Ответ: Автор ответа: shadow У винсока есть такое свойство RemoteHost, и если RemoteHost не указан явно, то VB хватает тот хост который первым чевото сообщил. Видимо надо делать чтото вроде этого: Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim strData As String Dim Adres As Long Adres = Winsock1.RemoteHost If strData = "zapros" Then Winsock1.RemoteHost = Adres Winsock1.RemotePort = kakoi_to_tam Winsock1.SendData "infa" End If End Sub Ответ: Автор ответа: P@Ssword ... WinSock едри его растуды связанный по протаколу TCP не разрешает конектится нескольким клиентам к одному порту... Это кто ж сказал, что не позволяет? Ещё как позволяет! А про UDP. Ты тоже загружаешь кучу WinSock? Нет? А надо... Или каждый раз менять RemoteHost на следующего клиента. Вопрос: Как мне создать новый элемент а именно OptionButton в работающей программе на фрейме и определить ему свойства. Ответ: Автор ответа: Артем Кривокрисенко Могу прислать такой контрол. В стиле XP Вопрос: Подскажите как можно из Vb считать/отследить информацию по COM - порту. Скажем получить код со сканера штрих-кодов (как в супермаркете). Ответ: Автор ответа: Лозовский Антон Борисович Чтобы на VB работать с COM портом - используй Microfoft Comm Control (элемент управления такой). А чтоб получить еще и код со сканера штрих-кода этого мало: нужно знать его протокол обмена информацией с компьютером. Вопрос: Как отправить данные на определённый порт. Т.е. нужно изменить значение второго (...девятого) штырька на LPT. В Qbasic-е это выглядит так: OUT &H378, g 'g-число от 0 до 255 а на VB неизвестно. Сколько вольт и ампер должно быть на штырьках, чтоб порт не сгорел. Есть ли у кого-нибудь что-нибудь в примерах по этой теме? Ответ: Автор ответа: Лозовский Антон Борисович Лучше не экспериментируй с вольтами и амперами - или порт попалишь, или принтер угробишь. Можете заполнить эту форму, либо отослать вопрос СЮДА Форма для добавления нового вопроса в этот раздел. Информация отсылается по E-mail владельцу сайта. |
|||||||||||||||
Выпуск подготовили: |
Сурменок Павел |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||