Passei horas em documentação e fóruns para tentar descobrir isso.
o código é executado sem erros, mas o script em lote não é executado.
poupei a #include<*>
parte do leitor porque é bastante prolixo.
oToClip()
Func oToClip()
Local $sleep = 250
Sleep($sleep)
Local $sFilePath = "%userprofile%\oToClip.bat"
Sleep($sleep)
Local $hFileOpen = FileOpen($sFilePath, $FO_APPEND + $FO_CREATEPATH)
If $hFileOpen = -1 Then
MsgBox($MB_SYSTEMMODAL, "", "An error occurred when opening the file.")
EndIf
Sleep($sleep)
FileWriteLine($hFileOpen, "type %userprofile%\o.txt | clip")
Sleep($sleep)
FileClose($hFileOpen)
Sleep($sleep)
RunWait(@ComSpec & " /c " & $sFilePath)
EndFunc ;==>oToClip