Jump to content
Tuts 4 You

All Activity

This stream auto-updates     

  1. Past hour
  2. Run a fresh installation of an OS in a virtual machine. It is a simple and good way to test your programs across various OS's and configurations. New installs have UAC set at the second highest value. Check "default" UIPI value in your registry, I suspect there may be a value in "data". Delete this so that a value is not set. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\UIPI The code looks okay, just be sure you have the correct handle and the parameter being passed is correct. You can use GetLastError to check this. The remarks for ChangeWindowMessageFilterEx mention values lower than WM_USER can be, "passed through the filter, regardless of the filter setting"... Ted.
  3. Drin

    DNGuard HVM 3.8.4.0 - Enterprise

    Manually founded offsets (CRC/Trial/Anti-jit/Anti-resolver) in HVMRuntm.dll and patched them, also hooked GetModuleFileNameA(0, ..) to return name of unpacking target and used DNGuard_HVM_Unpackerfr4
  4. Today
  5. My intentions are good and I think that knowledge like this should be made available to all. I came across this mirror site as this was mentioned on several online forums yesterday. So I posted it here. Then there should be no problems for anyone 😉
  6. Same group of children that got banned recently and refuse to grow up. The forums have quited down a lot since all the last drama and most releases are done elsewhere now anyway because of it. Everything they are dumping and mirroring is all public anyway.
  7. we all know who is behind this and I think it's a bad move, this will simply start a new flaming war again !
  8. This seems to be a mirror of the popular EXETOOLS forum website containing all the posts from the original forum, current as of today. Apparently the file attachments from the original site would be uploaded within the next 3-4 days. The mirror is also being updated every 2-3 days. There is no need for registration or login and all the reverse engineering knowledge from the past 20 years (1999 till date), is available to anyone to freely browse on the world wide web. Once the attachments are also uploaded to this mirror site, then anyone would be able to access this treasure-house of knowledge without any need to beg on twitter or solve "puzzles" to get hold of registration codes. This is of course very good news for most of us who are not able to download the attachments on the original EXETOOLS forum site. As of now the site is not searchable but the creator of the mirror site says that google custom search would be added to the mirror site so that we would be able to access the content with lightning fast searches. In certain browsers, the threads do not seem to render correctly at this time but they are easily remedied, as per the author, by switching to the HYBRID MODE under Display Modes as seen in the screenshot: According to the author of the mirror, the TO-DOs are: - Add Google Custom Search to the site - Upload the attachments also - Create a parallel forum also in conjunction with the mirrored threads so that anyone can take part in the discussions This is definitely a work in progress but I think that the author did an excellent job so far already. Knowledge such as this is invaluable and should be free for all to access! The person who put up this mirror did an excellent job.
  9. Yesterday
  10. Hi Ted, thanks for the new files so I did checked them out.So it keep working to send datas from sender to receiver anyway if I allow or disallow it so the counter button gets increased the whole time.I always get this info back if I press reset / allow / disallow buttons... ...seems they have really no effect for me. About UAC.I have this disabled.Do you have yours enabled?I think I need to reboot if I change this settings for UAC.Do you mean if I enable it then it should trigger something?Maybe if its really the UAC setting reason that its not working for so do you know which minimum setting I need to set in UAC window?There are 4 settings I can set.... ....the last one I have = disabled. Of course I dont know the UAC settings of any user who using my apps,so in this case I should better use this function code to allow getting some input from a extern source right? One more thing about allowing.So in my case I wanna allow first a specific EDIT control to receive some text datas with WM_SETTEXT message = like above already.Also I wanna allow the receiver to get WM_COMMAND in my main proc input from extern sources.Have I to enable this too? Example: Below my code in my sender app.Sending text to EDIT control of receiver app and after this also sending WM_COMMAND + ID for a button / wparam to the main routine. Send2StreamTool proc uses edi esi _buffer:DWORD local runs:DWORD invoke FindWindow,NULL,chr$("Stream Tool 1.0 (Drag & Drop broken video files!)") .if eax != FALSE mov edi, eax xor esi, esi .while eax != FALSE invoke FindWindowEx,edi,esi,chr$("Edit"),NULL .if eax != FALSE mov esi, eax invoke GetDlgCtrlID,esi .if eax != FALSE .if eax == 1002 ; URL EDIT Handle of stream tool 1.0 invoke SendMessage,esi,WM_SETTEXT,0,_buffer .if eax == FALSE invoke SetDlgItemText,hWnd_Main,IDC_INFO,chr$("SendMessage to other process failed!") .else invoke GetDlgItem,hWnd_Main,IDC_CHECKBOXSENDPLAY mov ecx, eax invoke IsWindowEnabled,ecx .if eax != FALSE invoke IsDlgButtonChecked,hWnd_Main,IDC_CHECKBOXSENDPLAY .if eax == BST_CHECKED invoke SendMessage,edi,WM_COMMAND,1009,NULL ; IDC_PLAY == 1009 of stream tool .endif .endif .endif .break .endif .endif .endif .endw .endif Ret Send2StreamTool endp ....now in my receiver app I execute this code once only at WM_INIT.... invoke GetDlgItem,hWnd,IDC_URL ; <--- Edit control to receive text invoke SetMessageFilter,eax,WM_SETTEXT,MSGFLT_ALLOW ; <--- allow edit control invoke SetMessageFilter,hWnd,WM_COMMAND,MSGFLT_ALLOW ; <--- allow with main routine handle SetMessageFilter proc uses edi esi _handle:DWORD,_message:DWORD,_mode:DWORD invoke GetModuleHandle,chr$("user32.dll") .if eax == FALSE invoke LoadLibrary,chr$("user32.dll") .if eax == FALSE ret .endif .endif mov edi, eax ; base of user32 invoke GetProcAddress,edi,chr$("ChangeWindowMessageFilterEx") .if eax == FALSE ret .endif mov esi, eax ; function to esi push NULL push _mode push _message push _handle call esi ret SetMessageFilter endp ...like this.Just wanna allow the edit control XY and WM_COMMAND for main routine.Should this be ok so far or do you see any problem issues here?Just wanna be sure also if I cant test it on my PC now because of disabled UAC settings.As I said,I just wanna allow the edit control / WM_SETTEXT & WM_COMMAND for main hwnd at the moment to receive some datas. greetz
  11. Hi nonspin, I didnt care about this stream so I just picked it as example to check out how to download it with specific time stamps accurate. greetz
  12. Kalo

    Obsidium v1.6.1.9

    sorry, what are the configs on plugins? i still can't debug with this...
  13. It seems to be working perfectly fine here. I remade the example code slightly, find attached and below. I added some error checking and reporting, it may help you out a bit. As to why it may not be working for you. Possibly you have changed your Windows settings lowering UAC and/or secure desktop security policy settings. Window1 - Sender (Low UIPI) EnableExplicit Enumeration Windows #Window #Gadget EndEnumeration Declare ChangeWindowMessageFilter() If OpenWindow(#Window, 0, 0, 300, 60, "Window1 - Sender (Low UIPI)", #PB_Window_ScreenCentered | #PB_Window_SystemMenu) ButtonGadget(#Gadget, 5, 5, 290, 50, "CLICK ME!") Repeat Select WaitWindowEvent() Case #PB_Event_Gadget Select EventGadget() Case #Gadget ChangeWindowMessageFilter() EndSelect Case #PB_Event_CloseWindow End EndSelect ForEver EndIf Procedure ChangeWindowMessageFilter() Protected Window, Child Static Num Num = Num + 1 Window = FindWindow_(#Null, "Window2 - Receiver (High UIPI)") Child = GetWindow_(Window, #GW_CHILD) SendMessage_(Child, #WM_SETTEXT, 0, Str(Num)) EndProcedure Window2 - Receiver (High UIPI) EnableExplicit Enumeration Handles #Window #Gadget0 #Gadget1 #Gadget2 #Gadget3 EndEnumeration Enumeration Action #MSGFLT_RESET #MSGFLT_ALLOW #MSGFLT_DISALLOW EndEnumeration Structure CHANGEFILTERSTRUCT cbSize.l ExtStatus.l EndStructure Global CHANGEFILTERSTRUCT.CHANGEFILTERSTRUCT\cbSize = SizeOf(CHANGEFILTERSTRUCT) Declare.i WindowsErrorCode(ErrorCode, ExtStatus) Prototype.i ChangeWindowMessageFilterEx(hwnd, message, action, pChangeFilterStruct) Global ChangeWindowMessageFilterEx.ChangeWindowMessageFilterEx Global User32 = OpenLibrary(#PB_Any, "user32.dll") ChangeWindowMessageFilterEx = GetFunction(User32, "ChangeWindowMessageFilterEx") If OpenWindow(#Window, 0, 0, 305, 60, "Window2 - Receiver (High UIPI)", #PB_Window_ScreenCentered | #PB_Window_SystemMenu) ButtonGadget(#Gadget0, 5, 5, 70, 50, "NUM") ButtonGadget(#Gadget1, 80, 5, 70, 50, "RESET") ButtonGadget(#Gadget2, 155, 5, 70, 50, "ALLOW") ButtonGadget(#Gadget3, 230, 5, 70, 50, "DISALLOW") Repeat Select WaitWindowEvent() Case #PB_Event_Gadget Select EventGadget() Case #Gadget1 ChangeWindowMessageFilterEx(GadgetID(#Gadget0), #Null, #MSGFLT_RESET, @CHANGEFILTERSTRUCT) Case #Gadget2 ChangeWindowMessageFilterEx(GadgetID(#Gadget0), #WM_SETTEXT, #MSGFLT_ALLOW, @CHANGEFILTERSTRUCT) Case #Gadget3 ChangeWindowMessageFilterEx(GadgetID(#Gadget0), #WM_SETTEXT, #MSGFLT_DISALLOW, @CHANGEFILTERSTRUCT) EndSelect WindowsErrorCode(GetLastError_(), CHANGEFILTERSTRUCT\ExtStatus) Case #PB_Event_CloseWindow End EndSelect ForEver EndIf Procedure.i WindowsErrorCode(ErrorCode, ExtStatus) Protected lpBuffer, Message.s Select ExtStatus Case 0 Message.s = "MSGFLTINFO_NONE" + #CRLF$ + "Applies to MSGFLT_ALLOW and MSGFLT_DISALLOW." Case 1 Message.s = "MSGFLTINFO_ALREADYALLOWED_FORWND" + #CRLF$ + "The message has already been allowed by this window's message filter, and the function thus succeeded with no change to the window's message filter. Applies to MSGFLT_ALLOW." Case 2 Message.s = "MSGFLTINFO_ALREADYDISALLOWED_FORWND" + #CRLF$ + "The message has already been blocked by this window's message filter, and the function thus succeeded with no change to the window's message filter. Applies to MSGFLT_DISALLOW." Case 3 Message.s = "MSGFLTINFO_ALLOWED_HIGHER" + #CRLF$ + "The message is allowed at a scope higher than the window. Applies to MSGFLT_DISALLOW." EndSelect FormatMessage_(#FORMAT_MESSAGE_FROM_SYSTEM | #FORMAT_MESSAGE_ALLOCATE_BUFFER, #FORMAT_MESSAGE_FROM_STRING, ErrorCode, #Null, @lpBuffer, #Null, #Null) MessageRequester("GetLastError Code: " + ErrorCode, PeekS(lpBuffer) + #CRLF$ + Message.s, #MB_ICONERROR | #MB_TOPMOST | #MB_SETFOREGROUND) EndProcedure Ted. ChangeWindowMessageFilterEx.zip
  14. Here's how i'd access the media.. ZDF-Mediathek "Die Subway-Falle" -> grab the "master.m3u8" https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/master.m3u8 instead of: https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_776000_av.m3u8 use: https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/master.m3u8 now have a looksy with FFMpeg -i Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_229000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_476000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_776000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_1496000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_2296000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_3296000_av.m3u8?null=0' for reading [https @ 00000000026807c0] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/index_229000_a.m3u8?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_229000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_229000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_476000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_476000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_776000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_776000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_1496000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_1496000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_2296000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_2296000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_3296000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_3296000_av.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment1_229000_a.ts?null=0' for reading [hls,applehttp @ 0000000002678c80] Opening 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/segment2_229000_a.ts?null=0' for reading Input #0, hls,applehttp, from 'https://zdfvodde-vh.akamaihd.net/i/meta-files/zdf/smil/m3u8/300/16/11/161124_subwaylfalle_inf/6/161124_subwaylfalle_inf.smil/master.m3u8': Duration: 00:44:43.44, start: 0.100511, bitrate: 0 kb/s Program 0 Metadata: variant_bitrate : 226000 Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 320x176 [SAR 1:1 DAR 20:11], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 226000 Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 226000 Program 1 Metadata: variant_bitrate : 474000 Stream #0:2: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 480x272 [SAR 1:1 DAR 30:17], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 474000 Stream #0:3: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 474000 Program 2 Metadata: variant_bitrate : 775000 Stream #0:4: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 775000 Stream #0:5: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 775000 Program 3 Metadata: variant_bitrate : 1495000 Stream #0:6: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 852x480 [SAR 1:1 DAR 71:40], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 1495000 Stream #0:7: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 1495000 Program 4 Metadata: variant_bitrate : 2297000 Stream #0:8: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 1024x576 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 2297000 Stream #0:9: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 2297000 Program 5 Metadata: variant_bitrate : 3298000 Stream #0:10: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Metadata: variant_bitrate : 3298000 Stream #0:11: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 3298000 Program 6 Metadata: variant_bitrate : 95000 Stream #0:12: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 95000
  15. JMC31337

    Chinese Spy App

    MobileHunter base.apk
  16. Last week
  17. Hi Ted, thanks for that versions.Ok I have test it and see some issue.In default mode (my PC setting etc) its already working without problems to send any datas to another exe file what means in your receiver app I dont need to press the click button to call the ChangeWindowMessageFilterEx function.Now I tried to change the paramter of this function in your receiver app from 1 = allow to 2 disallow,the function returns success but your sender app can still send datas into receiver app and the text of button does change.Exactly thats the problem I also talked before already.Why isnt it working? 00401199 PUSH 0x0 0040119E PUSH 0x2 <--- disallow 004011A0 NOP 004011A1 NOP 004011A2 NOP 004011A3 PUSH 0xC 004011A8 PUSH 0x1 004011AD CALL 004026A7 004011B2 PUSH EAX 004011B3 CALL DWORD PTR DS:[0x40BE54] ; USER32.ChangeWindowMessageFilterEx eax = 1 You know what I mean right.So if I need to allow it in some cases then it should be also possible to disallow it but this does not work for me.If this isnt working from where should I know whether its working to allow it if I need it in any cases etc.So maybe you can check your files again but this time with the MSGFLT_DISALLOW 2 paramter just to verify whether this works and if yes then the button text of your receiver app shouldnt change anymore.Maybe you can check this on your PC so I dont know why its not working for me to disallow it. greetz
  18. x32 versions attached here... Ted. ChangeWindowMessageFilterEx.zip
  19. Hi Ted, thanks for that example so far.Could you compile the executable files again but this time for x86 / 32 bit please.You always forget that I dont use x64.Tha tks. Question: Do you have to call the code the whole time in a loop?Isnt is enough to call it only once like at WM_INIT.. message? As I see you do only use this ChangeWindowMessageFilterEx in the reciver app using the handle of the GadgetID.But if I see it right then I tried this already as I said before with paramter 2 = MSGFLT_DISALLOW and but the sender app could still send datas to the edit control of my receiver app.Just tried here to use MSGFLT_DISALLOW to see whether its working. Receiver App WM_INITDIALOG invoke GetDlgItem,hWnd,IDC_URL ; <--- Edit control of receiver mov edi, eax mov cbs.cbSize, sizeof cbs mov cbs.ExtStatus, NULL invoke LoadLibrary,chr$("user32.dll") invoke GetProcAddress,eax,chr$("ChangeWindowMessageFilterEx") lea esi, cbs push esi ; cbs struct push 2 ; 1 = MSGFLT_ALLOW 2 = MSGFLT_DISALLOW 0 = MSGFLT_RESET push WM_SETTEXT ; message push edi ; handle of Edit control above call eax ; ChangeWindowMessageFilterEx The code above should disallow WM_SETTEXT for this edit control to receive any text from extern apps right?So this app runs now.....and now I do start a other app manually via mouse what does send text to the edit control of reveiver app and its still working also if I have used disallow paramter above and the function ChangeWindowMessageFilterEx did return with eax 1 = success.Somehow it dosent work in my case. Ok,just send me your x86 compiled files then I can test it to see whether yours do work for me and if yes then I can debug it to see how to make it correctly etc. greetz
  20. I led you astray when I stated getting the higher privileged window to change the lower privileged window. Apologies for that! What you need to do is have the higher privileged window change its own handles (window, gadget, etc.) to accept specified messages. In the example below a lower window wants to send #WM_SETTEXT to a higher window. It will not be able to complete this because of UIPI... EnableExplicit Enumeration Windows #Window #Gadget EndEnumeration Declare ChangeWindowMessageFilter() If OpenWindow(#Window, 0, 0, 300, 60, "Window1 - Sender (Low UIPI)", #PB_Window_ScreenCentered | #PB_Window_SystemMenu) ButtonGadget(#Gadget, 5, 5, 290, 50, "CLICK ME!") Repeat Select WaitWindowEvent() Case #PB_Event_Gadget Select EventGadget() Case #Gadget ChangeWindowMessageFilter() EndSelect Case #PB_Event_CloseWindow End EndSelect ForEver EndIf Procedure ChangeWindowMessageFilter() Protected Window, Child Window = FindWindow_(#Null, "Window2 - Receiver (High UIPI)") Child = GetWindow_(Window, #GW_CHILD) SendMessage_(Child, #WM_SETTEXT, 0, "Some text") EndProcedure The example below is the higher window. It wants to receive #WM_SETTEXT from the lower window to change the text of a gadget. Note that I am getting the handle of the gadget and using ChangeWindowMessageFilterEx to allow window messages to be sent from the lower window. EnableExplicit Enumeration Windows #Window #Gadget EndEnumeration Declare ChangeWindowMessageFilter() Global User32 = OpenLibrary(#PB_Any, "user32.dll") Prototype.i ChangeWindowMessageFilterEx(hwnd, message, action, pChangeFilterStruct) Global ChangeWindowMessageFilterEx.ChangeWindowMessageFilterEx ChangeWindowMessageFilterEx = GetFunction(User32, "ChangeWindowMessageFilterEx") If OpenWindow(#Window, 0, 0, 300, 60, "Window2 - Receiver (High UIPI)", #PB_Window_ScreenCentered | #PB_Window_SystemMenu) ButtonGadget(#Gadget, 5, 5, 290, 50, "CLICK ME!") Repeat Select WaitWindowEvent() Case #PB_Event_Gadget Select EventGadget() Case #Gadget ChangeWindowMessageFilter() EndSelect Case #PB_Event_CloseWindow End EndSelect ForEver EndIf Procedure ChangeWindowMessageFilter() #MSGFLT_ALLOW = 1 ; Modifies the User Interface Privilege Isolation (UIPI) message filter for a specified window. If ChangeWindowMessageFilterEx(GadgetID(#Gadget), #WM_SETTEXT, #MSGFLT_ALLOW, #Null) SetGadgetText(#Gadget, "Sender Can Now Change This Text") Else SetGadgetText(#Gadget, "Something Went Wrong!") EndIf EndProcedure 1) Run both executables. 2) Click "CLICK ME!" in Window1 a few times and you will notice nothing changes in Window2 3) Click "CLICK ME!" in Window2 and it will update the message filter of its gadget to accept WM_SETTEXT. Button text should change now. 4) Click "CLICK ME!" in Window1 and the button (gadget) text in Window2 should now change. Ted. ChangeWindowMessageFilterEx.zip
  21. JMC31337

    Evil Gnome

    Linux Evil Gnome pass: infected HUGE APT collection with others where this came from at: https://github.com/CyberMonitor/APT_CyberCriminal_Campagin_Collections/ 7ffab36b2fa68d0708c82f01a70c8d10614ca742d838b69007f5104337a4b869.zip
  22. JMC31337

    Visual Studios 2019 Pro - trial

    All of you are awesome thnx
  23. Hi Ted, I still dont know how to use this function right.I tried to use it in both apps already but without success to disable it (for testing).As I said I have 2 apps. App 1 main app and App 2. 1.) If I am using ChangeWindowMessageFilterEx in App 1 at WM_INITDIALOG message then I get success in eax back... .if uMsg == WM_INITDIALOG invoke GetDlgItem,hWnd,IDC_URL ; Edit control mov edi, eax invoke LoadLibrary,chr$("user32.dll") invoke GetProcAddress,eax,chr$("ChangeWindowMessageFilterEx") push NULL push 2;TRUE ; MSGFLT_ALLOW 2 = MSGFLT_DISALLOW 0 = MSGFLT_RESET push WM_SETTEXT push edi call eax ...now if App 1 runs I start App 2 and send some text into the IDC_URL edit control of App 1 using SendMessage / WM_SETTEXT and its still working.In this example I thought it would no more work because I called ChangeWindowMessageFilterEx with paramter MSGFLT_DISALLOW = 2 but its still working.Why? I also tried to use it with main routine handle instaed of Edit control handle but also has no effect.Also tried to use the CHANGEFILTERSTRUCT.How its done right? greetz
  24. ...or just use MSDN key that's available on the net and avoid all that insanity. NYWVH-....
  25. Make sure the higher privileged application is the one changing the message filter of the lower privileged window. Ensure you have the correct window handle of the lower privileged window. Have a read through the remarks for ChangeWindowMessageFilterEx. Another thing to be mindful of is if you allow multiple instances of the same application. You may need to consider using mutex's or assigning unique identifiers to each application... Ted.
  26. or simply use tools like RunAsDate
  27. JMC31337

    Visual Studios 2019 Pro - trial

    didn’t mean to stir up arguments 1) I'm not signing into anything 2) not re-downloading vis studio 3) not paying point was just to show how dumb MCSFT is that this ide should have expired and forced me to do any of the above prior 1-3’s, and all it takes is a simple clock setback to continue to use it despite its being expired without any license ps: sure, I could vm my os and do it that way
  28. Apuromafo

    Visual Studios 2019 Pro - trial

    https://visualstudio.microsoft.com/es/vs/support/community-edition-expired-buy-license/ really need login for unlock the ide, only that Community Edition is free. You just need to sign-in with your Microsoft account and everything will be fine again. im was using from 2017 to today..never i was need a licence .. only login BR, Apuromafo
  29. CodeExplorer

    Visual Studios 2019 Pro - trial

    Visual Studio Community also expires: I mean you still have to register online: https://www.quora.com/Visual-Studio-Community-Edition-2017-is-alerting-me-that-Your-30-day-free-trial-has-ended-activate-license-or-close-Why-would-this-be-happening
  1. Load more activity
×
×
  • Create New...