Премини към съдържанието

hWnd

Потребител
  • Публикации

    9
  • Регистрация

  • Последно онлайн

Харесвания

0 Неутрална репутация

Всичко за hWnd

  • Титла
    Новобранец
  • Рожден ден 23.11.1987

Информация

  • Град
    Пловдив
  • Интереси
    Visual Basic, Visual Basic Scripting Edition, (D)HTML, ECMAScript, Webdesign, UI design, Windows APIs, eMbedded Systems, etc.

Контакти

  • Facebook
    George
  • ICQ
    173377653
  • Интернет сайт
    http://smilyanov.net
  1. Какви неудобства? Освен може би DLL Hell-а?!
  2. Преди малко пуснах официалната версия на TweakFX. Screenshot: Download | Site Ще съм балгодарен на всякакви коментари, препоръки и насоки!
  3. hWnd

    Да се представим

    Айде и аз... :-)) Казвам се Георги Смилянов, на 16 съм, от Пловдив Уча в ЕГ Иван Вазов - 11д клас Интереси: -- software development: Win32, .NET, Windows APIs, Windows Messaging System, Hookin' & Subclassin' :-)), Visual Basic, Visual Basic Scripting Edition, ECMAScript, UI Design, HTML, XHTML, XML, eMbedded Systems... -- skiing Имам много проекти, като най-големият ми Tweak FX -- Представлява програмка за настройки на Windows с плъгини, който са написани на HTML и VBScript. Вижте и www.smilianov.net за повече инфо... Ето и една снимчица :-)): Правена е в Madame Tussauds, London :-)) Btw, оправете си снимките, че страницата се width-ва до ~1200px-ла! P.S. G-YON, и аз съм малко пироман! :-)))
  4. Днес се почудих, как се слагат custom item-и в system menu-то на даден джам и реших да драсна нещо, ето какво се получи: frmMain '//--------------------------------------------------------------------------------------- '//Change System Menu '//(c) 2004 George Smilianov '//www.smilianov.net, [email protected], ICQ UIN: 173377653 '//--------------------------------------------------------------------------------------- Option Explicit Private Sub Form_Load() Dim mnuString As MENUITEMINFO Dim mnuSeparator As MENUITEMINFO '//The MENUITEMINFO structures that contain information about the new menu items mnuString.cbSize = Len(mnuString) mnuString.fMask = MIIM_STRING Or MIIM_ID mnuString.fType = MFT_STRING mnuString.dwTypeData = "&About..." mnuString.wID = UDC_ABOUTMNU mnuSeparator.cbSize = Len(mnuSeparator) mnuSeparator.fMask = MIIM_STRING mnuSeparator.fType = MFT_SEPARATOR '//Insert the new items into the system menu InsertMenuItem GetSystemMenu(Me.hWnd, 0), GetMenuItemCount(GetSystemMenu(Me.hWnd, 0)) + 1, False, mnuSeparator InsertMenuItem GetSystemMenu(Me.hWnd, 0), GetMenuItemCount(GetSystemMenu(Me.hWnd, 0)) + 2, False, mnuString '//Install a new WindowProc message handler ChangeWindowProc End Sub mdDeclarations Option Explicit '//Menu management API declarations Public Declare Function GetSystemMenu Lib "user32.dll" (ByVal hWnd As Long, ByVal bRevert As Long) As Long Public Declare Function InsertMenuItem Lib "user32.dll" Alias "InsertMenuItemA" (ByVal hMenu As Long, ByVal un As Long, ByVal bool As Boolean, ByRef lpcMenuItemInfo As MENUITEMINFO) As Long Public Declare Function GetMenuItemCount Lib "user32.dll" (ByVal hMenu As Long) As Long Public Type MENUITEMINFO cbSize As Long fMask As Long fType As Long fState As Long wID As Long hSubMenu As Long hbmpChecked As Long hbmpUnchecked As Long dwItemData As Long dwTypeData As String cch As Long End Type Public Const MF_STRING As Long = &H0& Public Const MIIM_ID As Long = &H2 Public Const MIIM_STRING As Long = &H40 Public Const MFT_SEPARATOR = &H800 Public Const MFT_STRING = &H0 '//Subclasing API declarations Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Public Const GWL_WNDPROC = (-4) Public Const WM_SYSCOMMAND As Long = &H112& mdSubclassing Option Explicit '//Defines the ID of the added menu item Public Const UDC_ABOUTMNU As Long = 1 '//Stores the old winproc Global OldWndProc As Long Public Sub ChangeWindowProc() OldWndProc = SetWindowLong(frmMain.hWnd, GWL_WNDPROC, AddressOf WindowProc) End Sub Function WindowProc(ByVal hw As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long If msg = WM_SYSCOMMAND Then If wParam = UDC_ABOUTMNU Then MsgBox "Change System Menu v" & App.Major & "." & App.Minor & "." & App.Revision & vbCrLf & "(c) George Smilianov 2004" & vbCrLf & "www.smilianov.net, [email protected]", vbInformation, "About" End If '//Pass the message on to the original WindowProc for normal processing WindowProc = CallWindowProc(OldWndProc, hw, msg, wParam, lParam) End Function Проекта може да се дръпне оттук Please vote for me @ PSC, if you like the code! :-))
  5. Повече инфо ще даде ли някой за SCF и LNK файловете?
  6. Трябва ми повечко информация за PCA (Printed Circuit Assembly) processor-ите на Intel. Дали вече има device-и с PX26x и 27x и дали има някаква осезаема разлика в производителноста спрямо тези с PXA255?
  7. Това е една от най-добрите програми, които съм виждал. JEXT - редактор написан на JAVA и с отворен код -поддържа C, C++, C#, ASP, PHP, Python, Perl, Ruby, TeX, XHTML, XSLT, Eiffel, JSP и още многоп езици... -използва плъгини -с отворен код -платформено независим Трябва да го видите и да го опитате сами: http://www.jext.org , няма да съжалявате
  8. 1.0 Устройството Устойството е същото, което е представено на сайта на WinLIRC - Снимка на оригиналното устройство оттам, но вместо паралелен интерфейс (DB25) използва сериен (RS232). Тук може да видите и опростената схема нарисувана набързо от мен Лошото е, че забравих да напиша какъв е диода: 1N914 Ето как изглежда направеният от мен приемник накрая. Описание на пиновете на RS232 женски куплунг: DTR: 4 RTS: 7 GND: 5 txD: 3 DCD: 1 Още една схема на подобно устройство, но по-трудна е разгледана тук За тези, който живеят в Пловдив: Всички елементо могат да се закупят в Регионалния Център по Електроника - ВИКИВАТ (до моста на "Герджика"), обаче на щанда за куплунзи и конектори има едни лелички дето незнаят нито какво е RS232, нито сериен интерфейс, та аз си загубих половин час докато ме разберат какво искам 2.0 Софтуера Има много програмки с който може да управлявате компютъра от дистанционно. Проблема тук е, че не всички поддържат такива home-made devices, ето няколко, с който ще си осигурите безпроблемна работа. Тук ще покажа също и някои настройки. Ще разберете и как може програмите ви да бъдат контролирани от дистанционно. 2.1 Програми Girder Представялва изключително мощно приложение, може да се контролира абсолютно всичко с него посредством допълнителни плъгини, които осигуряват и съвместимостта на програмата с различни устройства. За да проработи нешето устройство с нея, изтеглете http://smilianov.net/res/private/genericdevice.zip , разархивирайте го в папката "plugins" на програмата. После отидете на: File > Settings > Plugins > Igor SFH-56 Device и го маркирайте, натиснете Apply, после Settings. Ето какви настройки трябва да се направят: COM Port: порта където сте го закачили Input Signal: DCD WinLIRC Сама по себе си тази програма е напълно безполезна. С нея неможе да контролирате нищо. Целта тук е, тя да действа като сървър - прихваща сигналите и ги предоставя на програмити, който ги изискват. Точно с нея е изграден примерният проект. Настройките тук са: Port: порта където сте го закачили Speed: 38400 Sense: Autodetect DCD Device animax (enable DTR) Transmitter settings: DTR После натискате Learn и щракате по бутоните, после им давате имена. 2.2 Примерен проект на VB6 Във формата слагате една контрола Winsock. После paste-вате това: Private Sub Form_Load() Dim strLocalIP As String strLocalIP = Winsock1.LocalIP Winsock1.Protocol = sckTCPProtocol Winsock1.RemoteHost = strLocalIP Winsock1.RemotePort = 8765 Winsock1.Connect End Sub Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim strData As String Dim strRemoteHex, strRemoteName, strRemoteKey As String Dim intRemoteIdx, intSeperatorOne, intSeperatorTwo As Integer Winsock1.GetData strData, vbString strRemoteHex = Left(strData, 16) intRemoteIdx = Val(Mid$(strData, 18, 2)) intSeperatorOne = InStr(21, strData, " ", vbBinaryCompare) strRemoteKey = Mid$(strData, 21, intSeperatorOne - 21) 'Code of the Key from Remote Control intSeperatorTwo = InStr(intSeperatorOne, strData, Chr(10), vbBinaryCompare) strRemoteName = Mid$(strData, intSeperatorOne + 1, (intSeperatorTwo - intSeperatorOne) - 1) 'Name of the Key - defined in WinLircServer msgbox "Data: " & strData & "Key:" & strRemoteKey & " Control:" & strRemoteName End Sub Версия на статията: 1.00 Използвани са материали от: Списание "Млад Конструктор" 1/2001; Сайта на WinLIRC
  • Разглеждащи това в момента   0 потребители

    Няма регистрирани потребители разглеждащи тази страница.

×
×
  • Добави ново...