Jump to content

VAG

Active Members
  • Posts

    67
  • Joined

  • Last visited

Profile Information

  • Location
    Singapore

Recent Profile Visitors

573 profile views

VAG's Achievements

  1. I am building an audio checking script on PC which requires me to identify the audio on another platform. eg. TV or Boombox. So I need to encode some metadata into the audio track on TV or Boombox for my script to identify the current playback audio correctly. I was thinking of encrypting the metadata into the beginning of audio track using [Audio Modem] method. I found a few api like followings: https://github.com/jamesonrader/AudioQR https://github.com/seiferteric/audio-modem I would like t know is there any UDF already exists which uses Audio Modem as example?
  2. Thanks @junkew, I'm able to workout a funtion to traverse the JAB structure based on your recommendation: ;Search for page tab: Soundcard Local $Tab_Preferences_Soundcard = _JAB_getAccessibleContextByFindAll($__g_vmId, $__g_acJavaMainWindow, "Soundcard", "page tab") ;child: panel Local $Panel_Preferences_Soundcard = _JAB_getFirstChildByRole($__g_vmId, $Tab_Preferences_Soundcard, "panel") ;Search all element in same level for description Local $iCount = _JAB_getChildrenCount($__g_vmId, $Panel_Preferences_Soundcard) For $i = 0 To $iCount - 1 Local $child_ac = __getAccessibleChildFromContext($__g_vmId, $Panel_Preferences_Soundcard, $i) Local $child_ac_s1 = _JAB_getDescription($__g_vmId, $child_ac) If StringInStr($child_ac_s1 ,$Value) Then $re2 = $i ExitLoop EndIf Next return $child_ac I also added this function in JAVAUI.au3 for getting description property: Func _JAB_getDescription($vmId, $ac) Local $acInfo = DllStructCreate($tagAccessibleContextInfo) __getAccessibleContextInfo($vmId, $ac, $acInfo) Return DllStructGetData($acInfo, "description") EndFunc Currently, I hit another issue with the Radio Button element. I noticed there is no singleAction function for this in JAVAUI.au3. May I know how do I send to this AccessibleInterface. Thanks
  3. I'm automating the UI of a 64bit Java app with this UDF, I'm able to button click on pushbutton element. So I proceed to select the combobox using _JAB_comboBoxSelectItem(). But I always get this return from the UDF. $__g_hwndJavaWindow = WinActivate("REW V5.20.9", "") __getAccessibleContextFromHWND($__g_hwndJavaWindow, $__g_vmId, $__g_acJavaMainWindow) ;~ Get our vmid into the global variable $PreferencesButton= _JAB_getAccessibleContextByFindAll($__g_vmId, $__g_acJavaMainWindow, "Preferences", "push button") _JAB_singleAction($__g_vmId, $PreferencesButton) Sleep(1000) $__g_hwndJavaWindow = WinActivate("Preferences", "") __getAccessibleContextFromHWND($__g_hwndJavaWindow, $__g_vmId, $__g_acJavaMainWindow) ;~ Get our vmid into the global variable _JAB_comboBoxSelectItem($__g_vmId, "Select sample rate", "192 kHz") Console print: Java Home: C:\Program Files (x86)\Java\jre1.8.0_331 We are using OS X64 at cpu X64; Autoit 64 bit version @AutoItX64=0 C:\Program Files (x86)\Java\jre1.8.0_331\bin\WindowsAccessBridge-32.dll PASS: Windows accessbridge WindowsAccessBridge-32.dll opened returns: 1 0 Windows_run returns: _JAB_comboBoxSelectItem: this element isn't combo box So I use JAB explorer to check on the element, I noticed all combobox name property in this app only use "-" value. So I can only identify them with Description property. Under JAVAUI.au3, there is "WCHAR description[1024];" defined in $tagAccessibleContextInfo. But _JAB_comboBoxSelectItem() is searching by name property. How can I modify the __getAccessibleContextInfo() to search by Description or any suggesstion? Thanks. Func __getAccessibleContextInfo($vmId, $ac, byref $info) $result = DllCall($hAccessBridgeDll, "bool:cdecl", "getAccessibleContextInfo", "long", $vmId, $c_JOBJECT64, $ac, "struct*", $info) If @error Then Return SetError(1, 0, 0) $info = $result[3] Return $result[0] EndFunc
  4. Found a solution, I need to STDINWRITE the following script commands into the Expect console: dsp param 0x00333099 ;return no stream to stdoutread, only display in console. set var [dsp param 0x00333099] puts stdout $var ;return 0x12340000 to stdoutread, also display in console.
  5. I used this udf to OCR the content in Command Prompt. After I adjusted the ClearType settings in Control Panel. The recognition rate becomes very poor. Now I can't get back to to the initial result even I disabled it. Is there any requirement stated in the API reference? Noticed the OCR on number string are not very accurate.
  6. I am trying to use STDOUTREAD and STDINWRITE to interact with the TCL console in DOS prompt. I can only capture those returns from Expect Script partly as I noticed the data I get from STDOUTREAD always don't includes the % string after end of stream. [%] represent [$] in the console I am working on. I also noticed only multi lines return can be captured but not for single line. I have try to look into STDERR stream but nothing is returned for single line stream. Is there any Expect command which I can send to the console to make the single line return visible to STDOUTREAD? eg. step
  7. Thanks MHz, I used your code. I have inserted some SLEEP before the GUICtrlRead because it will cause my In-house application to become faulty if the button string is not ready yet. As those buttons I need to control are located under a few tabs so need to navigate to it first before clicking. Everything seems to work correctly now even the INSTANCE keeps changing. Just curious of how this works instead of polling the ClassList like Jdelaney?
  8. Here is the console output, I found a few [iD:1000] and one of it seems to be the correct button ControlCounter =[ 44]. So how may I made a filter to grab this out? >"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\XPS15\Desktop\prob.au3" Func=[Var_GetAllWindowsControls]: ControlCounter=[ 1] ControlID=[ 0] Handle=[0x000A02A4] ClassNN=[ #327701] XPos=[ 674] YPos=[ 26] Width=[ 246] Height=[ 666] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 2] ControlID=[ 0] Handle=[0x000A02A0] ClassNN=[ #327702] XPos=[ 674] YPos=[ 26] Width=[ 246] Height=[ 515] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 3] ControlID=[ 0] Handle=[0x000B05AE] ClassNN=[ #327703] XPos=[ 684] YPos=[ 151] Width=[ 226] Height=[ 536] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 4] ControlID=[ 0] Handle=[0x001D03B4] ClassNN=[ #327704] XPos=[ 684] YPos=[ 151] Width=[ 226] Height=[ 536] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 5] ControlID=[ 0] Handle=[0x001706A0] ClassNN=[ #327705] XPos=[ 684] YPos=[ 151] Width=[ 226] Height=[ 536] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 6] ControlID=[ 0] Handle=[0x0029038E] ClassNN=[ #327706] XPos=[ 684] YPos=[ 151] Width=[ 226] Height=[ 536] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 7] ControlID=[ 0] Handle=[0x001204BE] ClassNN=[ #327707] XPos=[ 8] YPos=[ 26] Width=[ 620] Height=[ 666] isVisible=[1] isEnabled=[1] Text=[{4C37CA32-FE05-4fad-B181-E9B278A58559}]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 8] ControlID=[ 0] Handle=[0x000702EA] ClassNN=[ #327708] XPos=[ 8] YPos=[ 27] Width=[ 620] Height=[ 540] isVisible=[1] isEnabled=[1] Text=[{D5EB2D64-2887-455d-9CF2-D0715E41068E}]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 9] ControlID=[ 0] Handle=[0x000703AE] ClassNN=[ #327709] XPos=[ 8] YPos=[ 574] Width=[ 620] Height=[ 118] isVisible=[1] isEnabled=[1] Text=[{FA4F201C-C608-43e1-B3D1-5B39141989F5}]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 10] ControlID=[ 1005] Handle=[0x000702BA] ClassNN=[ Afx:06860000:01] XPos=[ 694] YPos=[ 286] Width=[ 198] Height=[ 351] isVisible=[1] isEnabled=[1] Text=[SkinScrollBarFrame]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 11] ControlID=[ 200] Handle=[0x000F0362] ClassNN=[ AfxWnd90u1] XPos=[ 694] YPos=[ 286] Width=[ 183] Height=[ 351] isVisible=[1] isEnabled=[1] Text=[LIMIT]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 12] ControlID=[ 1060] Handle=[0x000A0778] ClassNN=[ AfxWnd90u2] XPos=[ 33] YPos=[ 577] Width=[ 570] Height=[ 80] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 13] ControlID=[ 1070] Handle=[0x000D06F0] ClassNN=[ AfxWnd90u3] XPos=[ 33] YPos=[ 577] Width=[ 570] Height=[ 80] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 14] ControlID=[ 1003] Handle=[0x000A02A2] ClassNN=[ Button1] XPos=[ 637] YPos=[ 296] Width=[ 27] Height=[ 128] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 15] ControlID=[ 1005] Handle=[0x000A029C] ClassNN=[ Button2] XPos=[ 9] YPos=[ 693] Width=[ 215] Height=[ 18] isVisible=[0] isEnabled=[1] Text=[Devices]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 16] ControlID=[ 1006] Handle=[0x000A0296] ClassNN=[ Button3] XPos=[ 788] YPos=[ 693] Width=[ 115] Height=[ 18] isVisible=[1] isEnabled=[1] Text=[Capture Mode]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 17] ControlID=[ 1007] Handle=[0x000A0298] ClassNN=[ Button4] XPos=[ 810] YPos=[ 2] Width=[ 24] Height=[ 24] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 18] ControlID=[ 1008] Handle=[0x000A0292] ClassNN=[ Button5] XPos=[ 840] YPos=[ 2] Width=[ 24] Height=[ 24] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 19] ControlID=[ 1009] Handle=[0x000A0294] ClassNN=[ Button6] XPos=[ 900] YPos=[ 2] Width=[ 24] Height=[ 24] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 20] ControlID=[ 1015] Handle=[0x000A0290] ClassNN=[ Button7] XPos=[ 488] YPos=[ 693] Width=[ 115] Height=[ 18] isVisible=[1] isEnabled=[1] Text=[www.mylivecam.com]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 21] ControlID=[ 1013] Handle=[0x000A02A8] ClassNN=[ Button8] XPos=[ 870] YPos=[ 2] Width=[ 24] Height=[ 24] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 22] ControlID=[ 1017] Handle=[0x000A02AA] ClassNN=[ Button9] XPos=[ 9] YPos=[ 693] Width=[ 115] Height=[ 18] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 23] ControlID=[ 1018] Handle=[0x000A02CC] ClassNN=[ Button10] XPos=[ 9] YPos=[ 6] Width=[ 20] Height=[ 20] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 24] ControlID=[ 1002] Handle=[0x00080474] ClassNN=[ Button11] XPos=[ 677] YPos=[ 29] Width=[ 120] Height=[ 38] isVisible=[1] isEnabled=[1] Text=[Effects]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 25] ControlID=[ 1003] Handle=[0x000C028E] ClassNN=[ Button12] XPos=[ 796] YPos=[ 29] Width=[ 121] Height=[ 38] isVisible=[1] isEnabled=[1] Text=[Settings]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 26] ControlID=[ 11] Handle=[0x000702AC] ClassNN=[ Button13] XPos=[ 682] YPos=[ 66] Width=[ 32] Height=[ 32] isVisible=[0] isEnabled=[1] Text=[L]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 27] ControlID=[ 12] Handle=[0x000702B8] ClassNN=[ Button14] XPos=[ 682] YPos=[ 66] Width=[ 32] Height=[ 32] isVisible=[0] isEnabled=[1] Text=[R]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 28] ControlID=[ 13] Handle=[0x000702B2] ClassNN=[ Button15] XPos=[ 898] YPos=[ 76] Width=[ 16] Height=[ 32] isVisible=[1] isEnabled=[1] Text=[More]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 29] ControlID=[ 2512] Handle=[0x0008045A] ClassNN=[ Button16] XPos=[ 695] YPos=[ 71] Width=[ 50] Height=[ 43] isVisible=[1] isEnabled=[1] Text=[Visual Effects]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 30] ControlID=[ 2514] Handle=[0x000803E2] ClassNN=[ Button17] XPos=[ 746] YPos=[ 71] Width=[ 50] Height=[ 43] isVisible=[1] isEnabled=[1] Text=[Avatar Effects]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 31] ControlID=[ 2515] Handle=[0x000D06DA] ClassNN=[ Button18] XPos=[ 797] YPos=[ 71] Width=[ 50] Height=[ 43] isVisible=[1] isEnabled=[1] Text=[Media Show]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 32] ControlID=[ 2517] Handle=[0x00080490] ClassNN=[ Button19] XPos=[ 848] YPos=[ 71] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[Desktop Share]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 33] ControlID=[ 2513] Handle=[0x0008044E] ClassNN=[ Button20] XPos=[ 848] YPos=[ 71] Width=[ 50] Height=[ 43] isVisible=[1] isEnabled=[1] Text=[CrystalVoiceâ„¢ FX]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 34] ControlID=[ 11] Handle=[0x000702C0] ClassNN=[ Button21] XPos=[ 682] YPos=[ 69] Width=[ 32] Height=[ 32] isVisible=[0] isEnabled=[1] Text=[L]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 35] ControlID=[ 12] Handle=[0x000702D0] ClassNN=[ Button22] XPos=[ 682] YPos=[ 69] Width=[ 32] Height=[ 32] isVisible=[0] isEnabled=[1] Text=[R]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 36] ControlID=[ 13] Handle=[0x000702D6] ClassNN=[ Button23] XPos=[ 898] YPos=[ 79] Width=[ 16] Height=[ 32] isVisible=[0] isEnabled=[1] Text=[More]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 37] ControlID=[ 2263] Handle=[0x00080462] ClassNN=[ Button24] XPos=[ 695] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[Picture Control]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 38] ControlID=[ 2264] Handle=[0x000702E8] ClassNN=[ Button25] XPos=[ 746] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[View Control]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 39] ControlID=[ 2256] Handle=[0x000702E6] ClassNN=[ Button26] XPos=[ 797] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[Auto Tuning]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 40] ControlID=[ 2262] Handle=[0x0008046C] ClassNN=[ Button27] XPos=[ 848] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[CrystalVoiceâ„¢ Noise Reduction]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 41] ControlID=[ 2267] Handle=[0x000702C4] ClassNN=[ Button28] XPos=[ 848] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[CrystalVoiceâ„¢ Focus]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 42] ControlID=[ 2268] Handle=[0x000702C6] ClassNN=[ Button29] XPos=[ 848] YPos=[ 74] Width=[ 50] Height=[ 43] isVisible=[0] isEnabled=[1] Text=[Parental Control]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 43] ControlID=[20002] Handle=[0x000904A0] ClassNN=[ Button30] XPos=[ 709] YPos=[ 41] Width=[ 184] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[Enable Parental Control]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 44] ControlID=[ 1000] Handle=[0x0009049C] ClassNN=[ Button31] XPos=[ 719] YPos=[ 166] Width=[ 154] Height=[ 25] isVisible=[1] isEnabled=[1] Text=[Turn off FX]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 45] ControlID=[ 1000] Handle=[0x001706B6] ClassNN=[ Button32] XPos=[ 744] YPos=[ 351] Width=[ 106] Height=[ 22] isVisible=[0] isEnabled=[0] Text=[Share]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 46] ControlID=[ 1002] Handle=[0x0015069E] ClassNN=[ Button33] XPos=[ 694] YPos=[ 301] Width=[ 200] Height=[ 25] isVisible=[0] isEnabled=[0] Text=[Show Original Video]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 47] ControlID=[ 1004] Handle=[0x0015070A] ClassNN=[ Button34] XPos=[ 694] YPos=[ 161] Width=[ 200] Height=[ 25] isVisible=[0] isEnabled=[0] Text=[Entire Desktop]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 48] ControlID=[ 1007] Handle=[0x00190606] ClassNN=[ Button35] XPos=[ 694] YPos=[ 201] Width=[ 200] Height=[ 25] isVisible=[0] isEnabled=[0] Text=[Custom Area]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 49] ControlID=[ 1014] Handle=[0x00180564] ClassNN=[ Button36] XPos=[ 714] YPos=[ 241] Width=[ 185] Height=[ 40] isVisible=[0] isEnabled=[0] Text=[Synchronize movement of the custom area with your cursor]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 50] ControlID=[ 1000] Handle=[0x00160604] ClassNN=[ Button37] XPos=[ 719] YPos=[ 166] Width=[ 154] Height=[ 25] isVisible=[0] isEnabled=[0] Text=[Turn off Focus]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 51] ControlID=[ 1000] Handle=[0x0026024C] ClassNN=[ Button38] XPos=[ 719] YPos=[ 166] Width=[ 190] Height=[ 25] isVisible=[0] isEnabled=[0] Text=[Turn off Noise Reduction]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 52] ControlID=[ 3001] Handle=[0x000D020C] ClassNN=[ Button39] XPos=[ 694] YPos=[ 271] Width=[ 215] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[Directional]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 53] ControlID=[ 3002] Handle=[0x0024021A] ClassNN=[ Button40] XPos=[ 694] YPos=[ 301] Width=[ 215] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[Non-directional]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 54] ControlID=[ 1008] Handle=[0x00090532] ClassNN=[ Button41] XPos=[ 268] YPos=[ 533] Width=[ 72] Height=[ 32] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 55] ControlID=[ 1009] Handle=[0x000702BC] ClassNN=[ Button42] XPos=[ 340] YPos=[ 533] Width=[ 29] Height=[ 32] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 56] ControlID=[ 1003] Handle=[0x001004B2] ClassNN=[ Button43] XPos=[ 11] YPos=[ 30] Width=[ 170] Height=[ 38] isVisible=[1] isEnabled=[1] Text=[Snap Photos]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 57] ControlID=[ 1004] Handle=[0x0008046E] ClassNN=[ Button44] XPos=[ 180] YPos=[ 30] Width=[ 170] Height=[ 38] isVisible=[1] isEnabled=[1] Text=[Record Videos]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 58] ControlID=[ 1072] Handle=[0x00080472] ClassNN=[ Button45] XPos=[ 599] YPos=[ 534] Width=[ 20] Height=[ 30] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 59] ControlID=[ 1073] Handle=[0x001C04C4] ClassNN=[ Button46] XPos=[ 563] YPos=[ 534] Width=[ 36] Height=[ 30] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 60] ControlID=[ 1000] Handle=[0x00080494] ClassNN=[ Button47] XPos=[ 505] YPos=[ 661] Width=[ 91] Height=[ 27] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 61] ControlID=[ 1001] Handle=[0x0011060A] ClassNN=[ Button48] XPos=[ 595] YPos=[ 661] Width=[ 25] Height=[ 27] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 62] ControlID=[ 1002] Handle=[0x000E065E] ClassNN=[ Button49] XPos=[ 460] YPos=[ 661] Width=[ 35] Height=[ 27] isVisible=[1] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 63] ControlID=[ 1008] Handle=[0x000C05D6] ClassNN=[ Button50] XPos=[ 366] YPos=[ 661] Width=[ 35] Height=[ 27] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 64] ControlID=[ 1006] Handle=[0x0012065A] ClassNN=[ Button51] XPos=[ 411] YPos=[ 661] Width=[ 39] Height=[ 27] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 65] ControlID=[ 1022] Handle=[0x000904AE] ClassNN=[ Button52] XPos=[ 12] YPos=[ 584] Width=[ 20] Height=[ 66] isVisible=[1] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 66] ControlID=[ 1023] Handle=[0x0008048E] ClassNN=[ Button53] XPos=[ 604] YPos=[ 584] Width=[ 20] Height=[ 66] isVisible=[1] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 67] ControlID=[ 1009] Handle=[0x0009049A] ClassNN=[ Button54] XPos=[ 208] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 68] ControlID=[ 1035] Handle=[0x0008051E] ClassNN=[ Button55] XPos=[ 61] YPos=[ 661] Width=[ 39] Height=[ 27] isVisible=[0] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 69] ControlID=[ 1036] Handle=[0x001803AC] ClassNN=[ Button56] XPos=[ 239] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 70] ControlID=[ 1037] Handle=[0x002B0226] ClassNN=[ Button57] XPos=[ 16] YPos=[ 661] Width=[ 35] Height=[ 27] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 71] ControlID=[ 1049] Handle=[0x0009057E] ClassNN=[ Button58] XPos=[ 302] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 72] ControlID=[ 1050] Handle=[0x000D06AE] ClassNN=[ Button59] XPos=[ 334] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 73] ControlID=[ 1051] Handle=[0x0008058C] ClassNN=[ Button60] XPos=[ 365] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 74] ControlID=[ 1052] Handle=[0x000B06B4] ClassNN=[ Button61] XPos=[ 397] YPos=[ 724] Width=[ 27] Height=[ 23] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 75] ControlID=[ 1006] Handle=[0x00080488] ClassNN=[ ComboBox1] XPos=[ 694] YPos=[ 226] Width=[ 197] Height=[ 30] isVisible=[1] isEnabled=[1] Text=[Microphone Array (Creative Senz3D VF0780)]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 76] ControlID=[ 1006] Handle=[0x001606D2] ClassNN=[ ComboBox2] XPos=[ 694] YPos=[ 226] Width=[ 205] Height=[ 21] isVisible=[0] isEnabled=[0] Text=[Microphone Array (Creative Senz3D VF0780)]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 77] ControlID=[ 1006] Handle=[0x0024038C] ClassNN=[ ComboBox3] XPos=[ 694] YPos=[ 226] Width=[ 215] Height=[ 30] isVisible=[0] isEnabled=[0] Text=[Microphone Array (Creative Senz3D VF0780)]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 78] ControlID=[ 100] Handle=[0x000703C4] ClassNN=[HKComboBoxCover_Class1] XPos=[ 694] YPos=[ 226] Width=[ 197] Height=[ 30] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 79] ControlID=[ 100] Handle=[0x0008048C] ClassNN=[HKComboBoxCover_Class2] XPos=[ 694] YPos=[ 226] Width=[ 205] Height=[ 21] isVisible=[0] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 80] ControlID=[ 100] Handle=[0x0016032E] ClassNN=[HKComboBoxCover_Class3] XPos=[ 694] YPos=[ 226] Width=[ 215] Height=[ 30] isVisible=[0] isEnabled=[0] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 81] ControlID=[ 1005] Handle=[0x00080496] ClassNN=[ ListBox1] XPos=[ 694] YPos=[ 286] Width=[ 198] Height=[ 351] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 82] ControlID=[ 100] Handle=[0x001C0542] ClassNN=[ ScrollBar1] XPos=[ 694] YPos=[ 286] Width=[ 0] Height=[ 15] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 83] ControlID=[ 101] Handle=[0x00080450] ClassNN=[ ScrollBar2] XPos=[ 877] YPos=[ 286] Width=[ 15] Height=[ 351] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 84] ControlID=[ 1000] Handle=[0x000802C8] ClassNN=[ Static1] XPos=[ 11] YPos=[ 44] Width=[ 564] Height=[ 629] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 85] ControlID=[ 1001] Handle=[0x000C05EA] ClassNN=[ Static2] XPos=[ 596] YPos=[ 42] Width=[ 306] Height=[ 629] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 86] ControlID=[ 1004] Handle=[0x000A029A] ClassNN=[ Static3] XPos=[ 13] YPos=[ 697] Width=[ 202] Height=[ 16] isVisible=[1] isEnabled=[1] Text=[Creative Senz3D VF0780]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 87] ControlID=[ 1010] Handle=[0x000A0264] ClassNN=[ Static4] XPos=[ 40] YPos=[ 8] Width=[ 768] Height=[ 12] isVisible=[1] isEnabled=[0] Text=[Live! Central 3]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 88] ControlID=[ 1016] Handle=[0x000A0266] ClassNN=[ Static5] XPos=[ 13] YPos=[ 697] Width=[ 97] Height=[ 16] isVisible=[0] isEnabled=[1] Text=[Creative Senz3D...]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 89] ControlID=[ 1001] Handle=[0x000F0486] ClassNN=[ Static6] XPos=[ 691] YPos=[ 156] Width=[ 229] Height=[ 50] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 90] ControlID=[ 1000] Handle=[0x0009046A] ClassNN=[ Static7] XPos=[ 684] YPos=[ 151] Width=[ 226] Height=[ 536] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 91] ControlID=[ 1004] Handle=[0x000702B6] ClassNN=[ Static8] XPos=[ 682] YPos=[ 123] Width=[ 229] Height=[ 20] isVisible=[1] isEnabled=[1] Text=[CrystalVoiceâ„¢ FX]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 92] ControlID=[ 1005] Handle=[0x00080498] ClassNN=[ Static9] XPos=[ 694] YPos=[ 156] Width=[ 210] Height=[ 50] isVisible=[0] isEnabled=[1] Text=[Some software files are missing. Please try to reinstall the software.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 93] ControlID=[ 1006] Handle=[0x00080444] ClassNN=[ Static10] XPos=[ 694] YPos=[ 156] Width=[ 210] Height=[ 430] isVisible=[0] isEnabled=[1] Text=[To use this feature, ensure that the video streaming format is not MJPEG.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 94] ControlID=[65535] Handle=[0x000D0258] ClassNN=[ Static11] XPos=[ 746] YPos=[ 134] Width=[ 44] Height=[ 20] isVisible=[0] isEnabled=[1] Text=[Avatar Effects]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 95] ControlID=[65535] Handle=[0x000A029E] ClassNN=[ Static12] XPos=[ 746] YPos=[ 137] Width=[ 44] Height=[ 20] isVisible=[0] isEnabled=[1] Text=[View Control]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 96] ControlID=[20001] Handle=[0x000802DA] ClassNN=[ Static13] XPos=[ 684] YPos=[ 41] Width=[ 25] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 97] ControlID=[ 1001] Handle=[0x000A0256] ClassNN=[ Static14] XPos=[ 694] YPos=[ 261] Width=[ 190] Height=[ 23] isVisible=[1] isEnabled=[1] Text=[Effects:]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 98] ControlID=[ 1002] Handle=[0x000A04FA] ClassNN=[ Static15] XPos=[ 694] YPos=[ 201] Width=[ 190] Height=[ 23] isVisible=[1] isEnabled=[1] Text=[Microphone:]. Func=[Var_GetAllWindowsControls]: ControlCounter=[ 99] ControlID=[ 1004] Handle=[0x000703A8] ClassNN=[ Static16] XPos=[ 694] YPos=[ 647] Width=[ 216] Height=[ 70] isVisible=[1] isEnabled=[1] Text=[The effect will work with the selected microphone.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[100] ControlID=[ 1007] Handle=[0x000702D2] ClassNN=[ Static17] XPos=[ 694] YPos=[ 166] Width=[ 25] Height=[ 25] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[101] ControlID=[ 1002] Handle=[0x001206B8] ClassNN=[ Static18] XPos=[ 694] YPos=[ 201] Width=[ 190] Height=[ 23] isVisible=[0] isEnabled=[0] Text=[Microphone:]. Func=[Var_GetAllWindowsControls]: ControlCounter=[102] ControlID=[ 1004] Handle=[0x000E06E2] ClassNN=[ Static19] XPos=[ 694] YPos=[ 637] Width=[ 215] Height=[ 40] isVisible=[0] isEnabled=[0] Text=[This feature will only work if your application has selected the above microphone.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[103] ControlID=[ 1008] Handle=[0x00070588] ClassNN=[ Static20] XPos=[ 694] YPos=[ 166] Width=[ 25] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[104] ControlID=[ 1010] Handle=[0x000702C2] ClassNN=[ Static21] XPos=[ 694] YPos=[ 281] Width=[ 215] Height=[ 75] isVisible=[0] isEnabled=[1] Text=[CrystalVoiceâ„¢ Focus allows you to get clear audio with focused voice capture and noise cancellation.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[105] ControlID=[ 1011] Handle=[0x00060676] ClassNN=[ Static22] XPos=[ 699] YPos=[ 371] Width=[ 190] Height=[ 165] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[106] ControlID=[ 1002] Handle=[0x0017066A] ClassNN=[ Static23] XPos=[ 694] YPos=[ 201] Width=[ 190] Height=[ 23] isVisible=[0] isEnabled=[0] Text=[Microphone:]. Func=[Var_GetAllWindowsControls]: ControlCounter=[107] ControlID=[ 1004] Handle=[0x003D059A] ClassNN=[ Static24] XPos=[ 694] YPos=[ 351] Width=[ 216] Height=[ 70] isVisible=[0] isEnabled=[0] Text=[This feature will only work if your application has selected the above microphone.]. Func=[Var_GetAllWindowsControls]: ControlCounter=[108] ControlID=[ 1008] Handle=[0x00370016] ClassNN=[ Static25] XPos=[ 694] YPos=[ 166] Width=[ 25] Height=[ 25] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[109] ControlID=[ 1005] Handle=[0x0009044A] ClassNN=[ Static26] XPos=[ 8] YPos=[ 27] Width=[ 620] Height=[ 540] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[110] ControlID=[ 1071] Handle=[0x00080492] ClassNN=[ Static27] XPos=[ 8] YPos=[ 574] Width=[ 619] Height=[ 118] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[111] ControlID=[ 1053] Handle=[0x000804AA] ClassNN=[ Static28] XPos=[ 10] YPos=[ 69] Width=[ 616] Height=[ 462] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[112] ControlID=[ 1006] Handle=[0x000D0252] ClassNN=[ Static29] XPos=[ 11] YPos=[ 542] Width=[ 256] Height=[ 16] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[113] ControlID=[ 1078] Handle=[0x00090622] ClassNN=[ Static30] XPos=[ 193] YPos=[ 540] Width=[ 18] Height=[ 18] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[114] ControlID=[ 1079] Handle=[0x001B02A6] ClassNN=[ Static31] XPos=[ 218] YPos=[ 540] Width=[ 18] Height=[ 18] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[115] ControlID=[ 1080] Handle=[0x000B05CC] ClassNN=[ Static32] XPos=[ 243] YPos=[ 540] Width=[ 18] Height=[ 18] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[116] ControlID=[ 1025] Handle=[0x001004AC] ClassNN=[ Static33] XPos=[ 33] YPos=[ 577] Width=[ 570] Height=[ 80] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[117] ControlID=[ 0] Handle=[0x000A0576] ClassNN=[ SysHeader321] XPos=[ 33] YPos=[ 577] Width=[ 598] Height=[ 24] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[118] ControlID=[ 1080] Handle=[0x000A051C] ClassNN=[ SysListView321] XPos=[ 33] YPos=[ 577] Width=[ 570] Height=[ 80] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[119] ControlID=[ 100] Handle=[0x00080466] ClassNN=[ToolBarHighlight_Class1] XPos=[ 746] YPos=[ 29] Width=[ 50] Height=[ 125] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[120] ControlID=[ 100] Handle=[0x000702AE] ClassNN=[ToolBarHighlight_Class2] XPos=[ 746] YPos=[ 32] Width=[ 50] Height=[ 125] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[121] ControlID=[ 2888] Handle=[0x00080448] ClassNN=[ ToolBarWnd_Class1] XPos=[ 682] YPos=[ 66] Width=[ 229] Height=[ 50] isVisible=[1] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[122] ControlID=[ 2889] Handle=[0x000A02CA] ClassNN=[ ToolBarWnd_Class2] XPos=[ 682] YPos=[ 69] Width=[ 229] Height=[ 50] isVisible=[0] isEnabled=[1] Text=[]. Func=[Var_GetAllWindowsControls]: ControlCounter=[123] ControlID=[ 0] Handle=[0x00410300] ClassNN=[ VideoRenderer1] XPos=[ 10] YPos=[ 127] Width=[ 616] Height=[ 346] isVisible=[1] isEnabled=[1] Text=[ActiveMovie Window]. >Exit code: 0 Time: 0.932
  9. Thanks Junkew, I tried the ID method but it still can't do the clicking. So I use the AU3Info to search for the [iD:1000] on the In-house application GUI , there I found another button using the same [iD:1000] again. Since I know the ID, I tried to use the ControlGetHandle to return a handle string. There is a valid string shown but it don't belong to both buttons which I found on the GUI !? I did tried ControlGetText again with this ID, but it also return empty value. So is there other method or the only way is through imagesearch udf?
  10. I'm having some difficulty in controlling certain GUI button on my in-house application. I'm automating some clicking and read back of status from this button. I am able to ControlClick with it by providing the correct ClassnameNN from AU3Info. However, I noticed my in-house application keeps changing the INSTANCE of the same button. The TEXT of the button remains the same but INSTANCE show a different number every time the application is re-launched. I was thinking of using WinList and WinGetState to scan through all the buttons in the application to try find out the correct INSTANCE but it returns nothing. Is there any method to solve this issue? Func LC3_CrystalVoice_FX($mode) WinActivate("Audio Console") Local $ButtonTxt = ControlGetText("Audio Console", "", "Button32") If $mode = True And $ButtonTxt = "Turn on FX" Then ControlClick("Audio Console", "", "Button32") ElseIf $mode = False And $ButtonTxt = "Turn on FX" Then ;Do Nothing ElseIf $mode = True And $ButtonTxt = "Turn off FX" Then ;Do Nothing ElseIf $mode = False And $ButtonTxt = "Turn off FX" Then ControlClick("Audio Console", "", "Button32") Else MsgBox(48, "CrystalVoice_FX", "Invalid ControlID, please restart application") Exit EndIf EndFunc AU3Info for the same button: >>>> Control <<<< Class: Button Instance: 35 ClassnameNN: Button35 Name: Advanced (Class): [CLASS:Button; INSTANCE:35] ID: 1000 Text: Turn on FX Position: 718, 166 Size: 154, 25 ControlClick Coords: 41, 8 Style: 0x5001010B ExStyle: 0x00000004 Handle: 0x00000000001204F6 >>>> Control <<<< Class: Button Instance: 32 ClassnameNN: Button32 Name: Advanced (Class): [CLASS:Button; INSTANCE:32] ID: 1000 Text: Turn on FX Position: 718, 166 Size: 154, 25 ControlClick Coords: 41, 8 Style: 0x5001010B ExStyle: 0x00000004 Handle: 0x00000000001A034C
  11. I'm trying to use the DeviceAPI.au3 to monitor some USB device connection. Following the example, I have created the following codes to check for device appearing in the Device Manager. What I noticed is that DeviceAPI can only list out devices already ready before running the script. If I unplug the device first and plug it in again during script run, the looping of _DeviceAPI_GetClassArray() cannot detect the device. Is there any other ways to do this? $DeviceName = "Microsoft Hardware USB Mouse" $DeviceClass = "Human Interface Devices" Do ConsoleWrite(@CRLF & "Checking for [" & $DeviceName & "]...") Sleep(5000) Until HWDevice_Detect($DeviceName, $DeviceClass) = True Func HWDevice_Detect($devicename, $classname) Local $DeviceListed = False Local $aClasses = _DeviceAPI_GetClassArray() For $X = 0 to Ubound($aClasses)-1 If $aClasses[$X][2] = $classname Then Local $aDevices = _DeviceAPI_GetDeviceArray($aClasses[$X][0]) For $Y = 0 to Ubound($aDevices)-1 If $aDevices[$Y][1] = $devicename Then $DeviceListed = True EndIf Next EndIf Next If $DeviceListed = True Then Return True Else Return False EndIf EndFunc
  12. I'm trying to create an exe helper to do remote communication using Kip's TCP.AU3. As my outdated 3rd party software can only call external program thru command line, I am thinking of compiling the script helper into exe which support parameters. I have read about the help topic on "Command Line Parameters", I understand that parameters can be passed into the script when running exe. But then the helper I'm creating will need to support different TCP actions like "Connect", "Send", "Receive". So I will need to call this helper several times during the remote session. The problem I am facing now is that TCP.AU3 will be creating a handle after opening a valid TCP session, so all subsequence actions will be based on this handle. Thus, I cannot just end an exe helper after I call for connect. I would like to ask is there method to allow the exe to run at the background, so every time calling the exe with parameters will just execute part of the function inside, while maintaining all the contants. I have tried to search thru the forum for this, but not really sure what type of keyword does this belong to. Thanks
  13. I am trying out BASS WASAPI RC1 from Breff , because I need to run my script on Win7 in exclusive mode instead of using Direct Sound. However, there is no example in the downloaded udf, so I just wrote out some code based on BASSWASAPI C++ sample from U4Seen. My question is how come there is no sound when the _Bass_Wasapi_Start() is returning TRUE? Also I found that the _BASS_Wasapi_GetdeviceInfo() is not working properly in the udf (A correct device index will cause AutoIT to hang) so I just set _Bass_Wasapi_Init() to use default O/P device. Thanks. #include "Bass.au3" #include "BassWASAPI.au3" #include "BassMix.au3" #Include <Array.au3> #Include <String.au3> ; Load Bass Lib _BASS_Startup("bass.dll") ; Load Bass WASAPI Lib _BASS_WASAPI_Startup("basswasapi.dll") ; Load Bass Mix Lib _BASS_MIX_Startup("bassmix.dll") ; Not playing via BASS, so don't need an update thread _BASS_SetConfig($BASS_CONFIG_UPDATEPERIOD, 0) ; Init with no sound device, init dev with exclusive access _BASS_Init(0, 0, 44100, 0, "") ; Decode media file without playing, looping playback, 32-Bit floating sample data $hchannel = _BASS_StreamCreateFile(False, "test.mp3", 0, 0, BitOR($BASS_SAMPLE_LOOP, $BASS_STREAM_DECODE, $BASS_SAMPLE_FLOAT)) ; Get media file info for WASAPI Init $bInfo = _BASS_ChannelGetInfo($hchannel) _ArrayDisplay($bInfo, "Media Info") ; Init default WASAPI o/p device, Exclusive Mode, freq and ch according to source file. _BASS_WASAPI_Init(-1, $bInfo[0], $bInfo[1], BitOR($BASS_WASAPI_EXCLUSIVE, $BASS_WASAPI_AUTOFORMAT, $BASS_WASAPI_BUFFER), 0.5) ; Get WASAPI device info for BassMixer $wInfo = _BASS_WASAPI_GetInfo() _ArrayDisplay($wInfo, "WASAPI Playback Info") ; Init Mixer with stream data without playing it. $hmix = _BASS_Mixer_StreamCreate($wInfo[1], $wInfo[2], BitOR($BASS_SAMPLE_FLOAT, $BASS_STREAM_DECODE)) ; Plugs a channel into a mixer. Downmix if src has more channels _BASS_Mixer_StreamAddChannel($hmix, $hchannel, $BASS_MIXER_DOWNMIX) ; Start WASAPI Device MsgBox(0, "", _BASS_WASAPI_Start()) ; Display Playback Data in realtime While(_BASS_ChannelIsActive($hmix)) ToolTip("Wasapi Playing...") Sleep(100) WEnd ; Free up library _BASS_WASAPI_Stop(False) _BASS_WASAPI_Free() _BASS_Free()
  14. Hi eukalyptus, I notice there is always new updates for BASS DLLs on U4Seen website. Can we just overwrite your current udf with the latest DLLs from there or we must stick to your version of DLLs bundled inside your zip file?
  15. Finally get it working, seems that the problem is in the $lpBuffer type in FTD2XX.dll_UDF.au3 Change from 'char[128]' to 'BYTE[128]' : Global $lpBuffer = DllStructCreate('BYTE[128]') ConsoleWrite(@CR & '!------------ FT_SetBitmode ($FT_HANDLE, $uMask, $uMode)') $Do = _FT_SetBitMode($FT_HANDLE, 255, 1) ;Asynchronous Bit Bang, all channels to output ConsoleWrite(@CR & _USBFT_ErrorDescription($Do)) ConsoleWrite(@CR & '!------------_FT_Write($FT_HANDLE, $lpBuffer, $dwBytesToWrite, $lpdwBytesWritten)') DllStructSetData($lpBuffer, 1, 255) ;Set all channels to high $Do = _FT_Write($FT_HANDLE, $lpBuffer, 1, $lpdwBytesWritten) ;8 channels = 8-bit is 1 byte only ConsoleWrite(@CR & _USBFT_ErrorDescription($Do)) ConsoleWrite(@CR & DllStructGetData($lpBuffer, 1)) ConsoleWrite(@CR & DllStructGetData($lpdwBytesWritten, 1))
×
×
  • Create New...