Nareshm

Script for paste previously copied text (Clipboard)

5 posts in this topic

#1 ·  Posted

Its possible to past previously copied text to somewhere with autoit script ?
If yes, How it ?
example : Before I copied ABCD and then copied the PQRS, how to past the previously copied ABCD ?

Share this post


Link to post
Share on other sites



#2 ·  Posted

Use: ClipGet()

MsgBox(48, "Retrieves text from the clipboard.", ClipGet() )

 


Regards,
 

Share this post


Link to post
Share on other sites

#4 ·  Posted

Thanks InunoTaishou
 

Global $sLastClip = ClipGet()

While (True)
    Local $sNewClip = ClipGet()
    If (ClipGet() <> $sLastClip) Then
        ConsoleWrite("Last Clip:" & @LF & $sLastClip & @LF)
        $sLastClip = $sNewClip
    EndIf
    Sleep(100)
WEnd

But i can i past this i past last copied text using controlsend, so how to send this
My window information is
Windows : Title - Single Sign On
Class - WindowsForms10.Window.8.app.0.33c0d9d

Control : Class - WindowsForms10.EDIT.app.0.33c0d9d
Instance - 2
Name- txtPassword

Advance Mode - [NAME:txtPassword]
ID - 132444

Share this post


Link to post
Share on other sites

#5 ·  Posted

5 minutes ago, Nareshm said:

Thanks InunoTaishou
 

Global $sLastClip = ClipGet()

While (True)
    Local $sNewClip = ClipGet()
    If (ClipGet() <> $sLastClip) Then
        ConsoleWrite("Last Clip:" & @LF & $sLastClip & @LF)
        $sLastClip = $sNewClip
    EndIf
    Sleep(100)
WEnd

But i can i past this i past last copied text using controlsend, so how to send this
My window information is
Windows : Title - Single Sign On
Class - WindowsForms10.Window.8.app.0.33c0d9d

Control : Class - WindowsForms10.EDIT.app.0.33c0d9d
Instance - 2
Name- txtPassword

Advance Mode - [NAME:txtPassword]
ID - 132444

i copy every time random text i means diffrent text

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • mmoalem
      By mmoalem
      I seem to have an issue with clipget() - the following bit of code copy URL from chrome address bar - than using clipget() i try to grab the URL into a variable and input it into a spreadsheet. the script did not put anything into the sheet 
      originally I though it was an issue with  OOo/LibO Calc UDF and posted it there :
       
      than I tried writing $NewURL into a text file and than just a msgbox but it comes blank. (the URL is in the clipboard as i can paste it)
       
      send ("!d") ;select URL in browser send ("^c") ;copy selected URL Local $NewURL = ClipGet() MsgBox($MB_ICONINFORMATION + $MB_TOPMOST, $sTitle, $NewURL ) am I doing something wrong? is there an issue with a URL characters?
    • tcurran
      By tcurran
      Here's a short UDF that will, at least in most cases, detect whether a window can be copied from or pasted to programmatically--for example, by Send()ing ctl-c, ctl-v. This is often disabled when programs (like your AutoIt script) run at a lower UAC integrity level than the application they are trying to operate on.
      #include <WinAPI.au3> Func _WindowIsPasteable($handle) ;accepts window handle; returns true or false whether a window will accept Ctl-C, Ctl-V Local $bCanPaste = True Local $hTestWindowPID = 0 Local $hTestWindowTID = _WinAPI_GetWindowThreadProcessId($handle, $hTestWindowPID) _WinAPI_AttachThreadInput(_WinAPI_GetCurrentThreadId(), $hTestWindowTID, True);attach to window we want to paste into $bCanPaste = _WinAPI_GetFocus() ;Test whether window is paste-able--returns False if it is not _WinAPI_AttachThreadInput(_WinAPI_GetCurrentThreadId, $hTestWindowTID, False);detach from window thread Return $bCanPaste EndFunc Pass it a window handle; it returns true or false whether a window will accept programmatic pasting. The function may not work on the CMD window, since it handles the clipboard uniquely.
      This function works by attaching to the program thread of the window whose handle it receives, then attempting to perform a GetFocus on that thread. In most cases, the attempt will fail if the window will not accept programmatic copy-paste.
    • caramen
      By caramen
      Hello Guys,
      I am trying to make a screenshoot copy it to clipboard and paste it into a word document i want to do that to simplify my procedures création. 
       
      I am trying to use the way of sending Keys "^c" & "^v" i tryed also CTRLDOWN and c but no one of these is working. 
       
      First question :
      Why that's not working? 
      Is there anyother way i can work with ?
       
      I watched the help file for FileCopy but it s only moving Files and not copy them. 
       
      Maybe you can see somthing going wrong in my script but i guess it s not a syntax problem. 
      #cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.14.2 Author: myName Script Function: Template AutoIt script. #ce ---------------------------------------------------------------------------- ; Script Start - Add your code below here #include <ScreenCapture.au3> #include <MsgBoxConstants.au3> HotKeySet("{F2}", "Capture") HotKeySet("{F3}", "Windows") HotKeySet("{F4}", "Copy") Global $Numero = 0 Attendre () Capture() Func Capture() ; Capture full screen $Numero = $Numero+1 _ScreenCapture_Capture (@DesktopDir & "\ScreenCapture\Image"&$Numero&".jpg") ShellExecute( @DesktopDir &"\ScreenCapture\Image"&$Numero&".jpg") Sleep (500) Run("C:\WINDOWS\EXPLORER.EXE /Select, /n,/e," & @DesktopDir & "\ScreenCapture\Image"&$Numero&".jpg" ) WinWaitActive("ScreenCapture") Sleep(1500) Send("^c") ;~ Send ("{CTRLDOWN}") ;~ Sleep(10) ;~ Send ("C") ;~ Sleep(10) ;~ Send ("{CTRLUP}") EndFunc ;==>Example Func Windows () Global $Windows = WinGetTitle("[active]") MsgBox($MB_SYSTEMMODAL, "Windows", "Windows selected for copy is : "&@CRLF&$Windows) EndFunc Func Copy () WinActivate (""&$Windows) Sleep (100) Send("^v") ;~ Send ("{CTRLDOWN}") ;~ Sleep(10) ;~ Send ("V") ;~ Sleep(10) ;~ Send ("{CTRLUP}") EndFunc Func Attendre () While 1 Sleep (10) ;~ GUICreate ("Help",100,100) WEnd EndFunc  
    • Katie_Deely
      By Katie_Deely
      Hey
       
      I have a GUI with an edit-field and a button.
      First I write some text into the edit-field and select a part of it. After that I press the button, and the selection is edited.
      How would I do that, though? When the text is selected and I press the button, it's unselected before the button actually raises an event. 
    • jamesinnewcastle
      By jamesinnewcastle
      Hi All
      I have used my script to paste a string ($TestCSVGenerator) onto the clipboard - it has text seperated by tabs and at certain intervals there are CRLF. I am certain that this is a valid string because after I run my script (and it fails to do what I need) I can then manually 'Paste' the string into Excel using CTRL v and Excel puts the text in rows separated by the tab position and starts a new row of cells after a CRLF. (I make sure that the clipboard was empty before running my program).
      All I need is a command that pastes the string into a certain cell and in theory the above should happen but it doesn't!
      First I tried the following:
      _Excel_RangeWrite ($oWorkbook, 1, $TestCSVGenerator, "C18", False, True)
      This pastes, but everything goes in one cell! I've tried all the combinations of True/false
      Next I tried:
      _Excel_RangeCopyPaste($oWorkbook.ActiveSheet, Default, "C18")
      This pastes nothing at all (gives @error =4 ), if I define a range of cells Excel does highlight them.
       
      Any ideas or alternative methods? I guess I could paste the text painfully cell by cell but Excel seems to understand what I have on the clipboard if I paste it manually - it's the automation that is flooring me!
       
      Cheers
      James