Jump to content
Macro Express Forums

Namino

Members
  • Posts

    45
  • Joined

  • Last visited

Posts posted by Namino

  1. Hi,

    Here is my humble attempt to do this. I'm not sure if it is the best way of doing it, but it works. I think it would be easy to modify it to work with more than two files.

     

    Text File Begin Process: "A.txt"

    Variable Modify Integer: %N1% = %N1% + 1

    Text File End Process

    Text File Begin Process: "B.txt"

    Variable Modify Integer: %N2% = %N2% + 1

    Text File End Process

    If Variable %N1% > variable %N2%

    Variable Modify Integer: Copy %N1% to %N3%

    Else

    Variable Modify Integer: Copy %N2% to %N3%

    End If

    Variable Modify String: Save %T10% to Text File

    Repeat Start (Repeat %N3% times)

    Variable Modify Integer: %N4% = %N4% + 1

    If Variable %N4% <= variable %N1%

    Text File Begin Process: "A.txt"

    Text File End Process

    Variable Modify String: Append %T1% to Text File

    End If

    If Variable %N4% <= variable %N2%

    Text File Begin Process: "B.txt"

    Text File End Process

    Variable Modify String: Append %T2% to Text File

    End If

    Repeat End

     

     

    <BTFBEG:001:000001:000000:C:\A.txt><NMVAR:01:01:1:0000001:2:0000001><BTFEND><BTFBEG:001:000001:000000:C:\B.txt><NMVAR:01:02:1:0000002:2:0000001><BTFEND><IFVAR2:5:01:4:N2><NMVAR:07:01:0:0000003:0:0000000><ELSE><NMVAR:07:02:0:0000003:0:0000000><ENDIF><TMVAR2:17:10:00:000:000:C:\merged.txtF><REP3:01:000001:000001:%N3%:0:01:><NMVAR:01:04:1:0000004:2:0000001><IFVAR2:5:04:6:N1><BTFBEG:001:N00004:000001:C:\A.txt><BTFEND><TMVAR2:20:01:00:000:000:C:\merged.txtT><ENDIF><IFVAR2:5:04:6:N2><BTFBEG:002:N00004:000001:C:\B.txt><BTFEND><TMVAR2:20:02:00:000:000:C:\merged.txtT><ENDIF><ENDREP>

    Text_file_merge.mxe

  2. Sometimes I get short pauses when moving around the ME editor, but the pauses are no longer than about 2 seconds. It seems to only happen when I've been working in the editor for a few hours straight. It is not connected with CPU or disk usage because when it happens both are almost idle, and I regularly defragment my disk. Guess I've just learnt to live with it.

    Umm...throwing Macro Express into the sea would really have a negative impact on my productivity, so I can't really agree with you on that point.

  3. I would use Print Screen, save the images as jpgs, then compare the sizes of them. Something like this...

     

    Repeat Start (Repeat 2 times)

    Variable Modify Integer: %N1% = %N1% + 1

    Text Type: <ALTD><PRTSCR><ALTU>

    Delay 500 Milliseconds

    Clipboard Save Graphic: "%N1%.jpg"

    Delay 3 Seconds

    Repeat End

    Variable Set Integer %N2% from the size of file "1.jpg"

    Variable Set Integer %N3% from the size of file "2.jpg"

    If Variable %N2% = variable %N3%

    Text Box Display: Image is same

    Else

    Text Box Display: Image has changed

    End If

  4. It's not the Variable Modify integer commmand that takes a long time, it's the copy from the clipboard. You should

    use control commands if you want it faster. Something like:

     

    <LAUNCHDEL2:2:00C:\WINDOWS\NOTEPAD.EXE><WAITWIN2:000010:000000:Untitled - Notepad><TEXTTYPE:333><GETCONTROL:01:NOTEPAD.EXE:002:NotepadUntitled - NotepadEdit333><VARGETCONT:1:1><TMVAR2:05:01:01:000:000:><NMVAR:01:01:1:0000001:2:0000100><TEXTTYPE:<CTRLD>a<CTRLU>><TEXTTYPE:%N1%>

  5. You can process every line in a text file by using the Text File Begin Process command. You don't need to specify the line, just select 'Process all Records' starting from record 1. Do you what to stop processing the file when you find the name you are looking for? That would be a bit more complicated...

  6. Thanks, that is pretty much how I did it. I just made an AutoIT script to get the owner property and then pass it to ME. Maybe you should try AutoIT as a alternative to VB.

    This is all I needed to write in AutoIT to get the Owner property of a file, and then save it to a text file ready for ME to read:

     

     

    #include <extprop.au3>
    $addressfile = FileOpen("H:\AutoIt\Get Owner property\file address.txt", 0)
    $owner_output_file = FileOpen("H:\AutoIt\Get Owner property\owner.txt", 2)
    $address = FileReadLine($addressfile,1)
    $owner1 = _GetExtProperty($address,8)
    $owner2 = StringReplace($owner1,"STARBANK-UK\","")
    FileWrite($owner_output_file, $owner2)
    ;MsgBox(1,"",$owner2)
    FileClose($addressfile)
    FileClose($owner_output_file)

  7. I've made a small application that can display the contents of a short text file as a tray tip (a balloon popup from near the clock in your task bar). This can be used as a low-key alternative to ME's message boxes to give status reports or pass on information while a macro is running.

    The attached zip contains the exe file and the text files it needs to run. The text files and the exe need to be decompressed to the same directory.

    When you want ME to display a tray tip, you save your message to the text file called 'Message to display', and the amount of time (in seconds) you want it to display to the text file called 'Seconds to display'. After you have done that, you change the directory to wherever the exe is located, then launch it. Below is an example ME macro. I've only tested this on my computer but it should work on any. If anyone knows of a more simple way to create Tray Tips from ME, please let us know!

     

     

    <TVAR2:01:01:This is a tray tip from Macro Express><TVAR2:01:02:FEnter text to display as a Tray TipFFCenter:Center><TVAR2:02:01:3><TVAR2:02:02:FSeconds to display forFFCenter:Center><TMVAR2:17:01:00:000:000:C:\Message to display.txtF><TMVAR2:17:02:00:000:000:C:\Seconds to display.txtF><DOFILE:01:NN:C:\>><LAUNCHDEL2:0:01C:\Tray tip.exe>

    Tray_tip.zip

  8. Here is an example if anyone is interested. It launches Notepad in minimized state, then opens its Page Setup, Save As, and Font dialogues simultaneously. You need AutoIT installed for it to work. If indeed this is impossible to do with the current ME alone, I think it would be great if it could be considered for future versions.

     

    <REM2:Put linefeed into T95><ASCIIC:95:1:13><ASCIIC:96:1:10><TVAR2:95:01:%T95%%T96%><REM2:><REM2:><REM2:Create AutoIT script><TVAR2:01:01:AutoItSetOption("WinTitleMatchMode",2)%T95%WinMenuSelectItem("Untitled - Notepad","","F&ormat","&Font")%T95%WinWait("Font")%T95%WinMenuSelectItem("Untitled - Notepad","","&File","Page Set&up")%T95%WinWait("Page Setup")%T95%WinMenuSelectItem("Untitled - Notepad","","&File","Save &As")><TMVAR2:17:01:00:000:000:C:\Example.au3F><REM2:><REM2:><REM2:Launch Notepad in minimized state><LAUNCHDEL2:0:00C:\WINDOWS\NOTEPAD.EXE1><WAITWIN2:000010:000000:Untitled - Notepad><REM2:><REM2:><REM2:Launch AutoIT script to select various menu items of the minimized notepad><LAUNCHDEL2:0:00C:\Example.au3><REM2:><REM2:><REM2:Delete AutoIT script><DOFILE:08:NN:C:\Example.au3>>

  9. In AutoIt (a scripting program similar to ME) there is a command that directly selects an item in a window menu. Below is an example of the command.

     

    WinMenuSelectItem("woodWOP","","&File","&New")

     

    The above script line would instantly select "New" in the File menu of the program Woodwop. It would do so even if Woodwop was minimised or was not the current window, and would not visibly open the menu to do this, like an alt shortcut would.

     

    I find this command extremely useful because in some programs it is more reliable than using ctrl or alt keyboard shortcuts, and using it you can control a program while it is minimised.

     

    I've so far not been able to find a way to do this using ME alone, and am making one-line AutoIT scripts for ME to launch when needed. Is it possible to do what I've described using ME alone?

  10. Initially I had the same problem trying to use ME to work with Japanese. I found that if you use the Regional and Language Options control panel to set the Language for non-Unicode programs to Japanese, ME will then work perfectly with Shift-Jis encoded Japanese. Perhaps if you set the Language for non-Unicode programs to Chinese, then ME will work with Big5 (or other Chinese encoding) text files, however I have not tried this so I'm not certain.

×
×
  • Create New...