Jump to content
momitty

stdout_child is truncating some output

Recommended Posts

momitty

This is a very old thread, but did anybody ever solve this?  I'm having the exact same problem!  Truncates PSEXEC output in the same spot every time.

Share this post


Link to post
Share on other sites
Melba23

momitty,

Please do not necro 10 year old threads!

Just open a new one as I have now done for you.

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
water

This is a very old thread, but did anybody ever solve this?  I'm having the exact same problem!  Truncates PSEXEC output in the same spot every time.

​Can you please add a link to the old thread here so we know what you are talking about?


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (2018-06-01 - Version 1.4.9.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2018-09-01 - Version 1.3.4.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
Melba23

water,

My fault - I should have thought of that:

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
water

Thanks :)


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (2018-06-01 - Version 1.4.9.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2018-09-01 - Version 1.3.4.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
water

momitty,

how many characters do you get and how many characters get truncated?


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (2018-06-01 - Version 1.4.9.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2018-09-01 - Version 1.3.4.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
PowerPoint (2017-06-06 - Version 0.0.5.0) - Download - General Help & Support
Excel - Example Scripts - Wiki
Word - Wiki
 
Tutorials:

ADO - Wiki

 

Share this post


Link to post
Share on other sites
momitty

So the specific command I am running with psexec is the sc command.  The reason I'm doing it with psexec is because using sc or using psservice on a remote computer actually returns the results a lot slower! That aside, when you run the command it has multiple "blocks" of output, one for each service.  Like so...

SERVICE_NAME: axinstsv
        TYPE               : 20  WIN32_SHARE_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

 

Normally if you run the command sc query type= service state= all you would get probably about 100-200 services (how many ever services you have on your computer).  But when you run it through AutoIt you will only ever get one (runs just fine at a command prompt).  Now to make things even stranger, when I run that same command but with a findstr like so....

sc query type= service state= all|findstr SERVICE_NAME  

it only returns one line.  So it's not the length of the string, I'm wondering if there is some hidden character in there it dumps out on?  

 

 

 

Share this post


Link to post
Share on other sites
BrewManNH

Have you tried running the script locally and querying the remote computer? As long as you can access the computer remotely, you can run the SC commands remotely.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites
momitty

It works fine locally, and it works fine if I run this manually from a command prompt but as soon as I put it inside AutoIt it dumps out.  The other weird thing is if I put this in a batch file and try to capture the stdout from the batch file it still gives me the single line but if I redirect stdout to a file it all makes it into the file.  That's what led me to think it's AutoIt stopping on some sort of embedded character that occurs after each of the service sections.

Here's the command I run from the command line (works):
c:\pstools\psexec -accepteula \\192.168.0.5 sc query type= service state= all

Here's the command in AutoIt (runs but only shows one service)
Run(@ComSpec & " /C c:\pstools\psexec \\192.168.0.5 sc query type= service state= all", @SW_HIDE, 0x8)    (I've tried all the different flags to see if it's losing something in stderr or something)

 

 

Share this post


Link to post
Share on other sites
BrewManNH

My point was that you don't need psexec to run this command against a remote computer. Just use something like this to do it.

Run(@ComSpec & " /k sc \\192.168.0.5 query type= service state= all", "", @SW_SHOW, 8)

PSExec is the issue, it isn't using the StdOut to display it's text in the console window. It's a known issue with it. The only way to get it to give you the StdOut text is to run another file script or batch file, on the remote computer using PSExec and get the output from THAT instead of PSExec.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites
momitty

I know you can run sc remote too.  What I was saying in my earlier explanation is I found is it runs a lot lot slower when you run the sc command remote versus using psexec to run it remote and capture the output from there (except obviously the output isn't getting fully captured in AutoIt).  Some of it is due to a firewall issue but even without a firewall running sc to a remote PC takes several seconds but PsExec running sc gets me the output in basically the same time as running it local.  If I have to just call a batch file and redirect that to an output file and then parse that output file that it creates I can probably live with that.  It's just so weird it can get some of the stdout but not the whole thing.  

Share this post


Link to post
Share on other sites
momitty

Oh jeez.... you know what fixed this?  Just not using the @comspec to call the psexec command.  I just called psexec directly in the Run command and all is well.  I wonder if it has something to do with passing a command that's passing a command to a command (that just reminded me of Tropic Thunder I'm just a dude playing a dude)

$iPID = Run("PsExec.exe ""\\192.168.0.5"" sc query type= service state= all", "")
ProcessWaitClose($iPID)
$stdOut = StdoutRead($iPID)

Share this post


Link to post
Share on other sites
momitty

Nevermind... that worked one or two times.  Quit working again.

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

×