Re: How do I execute dos command without a path

From: PAPutzback (Phillip_Putzback_at_insightbb.com)
Date: 12/16/04


Date: Thu, 16 Dec 2004 11:17:08 -0500

PAPutzback wrote:
> Herfried K. Wagner [MVP] wrote:
>
>> "PAPutzback" <phillip_putzback@insightbb.com> schrieb:
>>
>>> The process and execute methods want a path to the executable otherwise
>>> they kick out a file not found. So how can I execute the following. It
>>> works fine from a command window.
>>>
>>> echo password| gpg.exe --yes --output c:\working\inbound\test.txt
>>> --passphrase 0 -d c:\working\inbound\anstest.gpg
>>
>>
>>
>> Are you sure you specified everything after "pgp.exe" in the
>> 'ProcessStartInfo''s 'Arguments' property instead of appending it to
>> the 'FileName' property?
>>
>
> No arguments -Error: cannot find file specified
> System.Environment.CurrentDirectory = "c:\gnupg"
> GPGProcess.StartInfo.WorkingDirectory = "c:\gnupg"
> GPGProcess.StartInfo.FileName = "echo little boy blue| gpg"
> GPGProcess.StartInfo.CreateNoWindow = True
> GPGProcess.StartInfo.UseShellExecute = False
> GPGProcess.Start()
>
> No space between pipe and the exectuble = same error
>
> Add .exe = same error
>
> Add the full path "echo little boy blue| c:\gnupg\gpg.exe" = same error
>
> Paste this into a cmd window
>
> C:\gnupg>echo little boy blue| c:\gnupg\gpg.exe
> gpg: no valid OpenPGP data found.
> gpg: processing message failed: eof
>
> I know the command is valid and this variation works also
> C:\gnupg>echo little boy blue| gpg.exe
> gpg: no valid OpenPGP data found.
> gpg: processing message failed: eof
>
> And also
> C:\gnupg>echo little boy blue| gpg
> gpg: no valid OpenPGP data found.
> gpg: processing message failed: eof
>
> Put the arguments on
> C:\gnupg>echo little boy blue| gpg --passphrase-fd 0 -d
> c:\gnupg\anstest.gpg
> Reading passphrase from file descriptor 0
>
> You need a passphrase to unlock the secret key for
> user: "Indiana Prohealth <admin@ecommunity.com>"
> 1024-bit ELG-E key, ID 778EBE0E, created 2004-12-07 (main key ID FA28FB8B)
>
> gpg: encrypted with 1024-bit ELG-E key, ID 778EBE0E, created 2004-12-07
> "Indiana Prohealth <admin@ecommunity.com>"
> This is a test of the emergency broadcast system...
>
> BEEEEEEEEEEEEEEEEEEEEEEEPPPPPPPPPPPPPPPPPP!!!!!
>
> Testing 1,2,3...
>
> Testing 1,2,3...
>
> Testing 1,2,3...
>
> Testing 1,2,3...
>
> Testing 1,2,3...
>
> And it all works.
>
> Is there not a straight up way to fire off a command like you were in
> the command window?
>
> I appreciate your help with this because I am really stressed about
> this. It is the final link in an app I need to finish.
>

Now without the echo command
        System.Environment.CurrentDirectory = "c:\gnupg"
             GPGProcess.StartInfo.WorkingDirectory = "c:\gnupg"
             GPGProcess.StartInfo.FileName = "gpg.exe"

             GPGProcess.StartInfo.CreateNoWindow = True
             GPGProcess.StartInfo.UseShellExecute = False
             GPGProcess.Start()

No errors and the gpg process is running in Task manager

With the arguments
GPGProcess.StartInfo.Arguments = "--yes --output c:\gnupg\test.txt
--passphrase-fd 0 < c:\gnupg\gpg\password.txt --decrypt
c:\gnupg\anstest.gpg"

It is running in task manager but it did not create the file

If I change GPGProcess.StartInfo.CreateNoWindow = false
I get this and it just hangs there.
Reading passphrase from file descriptor 0 ...

If I change the arguments to
GPGProcess.StartInfo.Arguments = "--yes --output c:\gnupg\test.txt
--decrypt c:\gnupg\anstest.gpg"

I get the passphrase prompt

If I add
GPGProcess.StartInfo.RedirectStandardInput = True
GPGProcess.Start()
GPGProcess.StandardInput.Write("little boy blue")
GPGProcess.StandardInput.Flush()
GPGProcess.StandardInput.Close()

It still hangs at the passphrase prompt

-Phil



Relevant Pages

  • Re: How do I execute dos command without a path
    ... > Paste this into a cmd window ... > gpg: no valid OpenPGP data found. ... > Is there not a straight up way to fire off a command like you were in the ...
    (microsoft.public.dotnet.languages.vb)
  • Simple expect script has erratic behavior, why?
    ... I have a simple expect script to decrypt a gpg file when passed the ... passphrase on the command line. ... If I run the gpg command from the command line, ...
    (comp.lang.tcl)
  • Konqueror Service Menu - Decrypt Tarball
    ... I often create tarballs files and encrypt them using gpg. ... Click on the file and enter my passphrase. ... Konqueror Service Menu. ... I use the following command: ...
    (alt.os.linux.suse)
  • Re: How to encrypt and burn to dvdr my home dir?
    ... would you suggest I encrypt the resulting .tar.bz2 file? ... I'd use gpg from the command line. ... passphrase to encrypt the file. ...
    (Fedora)
  • Re: GC and security
    ... comes back at end to encrypt and then app is done. ... gpg is fairly careful about passphrases. ... passphrase in the Python app instead of letting gpg handle it? ...
    (comp.lang.python)