Hi Frank,
So observations:

On Fri, Feb 3, 2012 at 10:44 PM, Frank Kleinburg <fklei...@gmail.com> wrote:

> I appreciate your suggestions.. Thanks for taking the time to reply..
> Obviously this problem is a real rear end kicker as there have not been
> many replies.. Perhaps most are lucky not to have to work in winders
> environments.. ****
>
> ** **
>
> But I was looking for answers as to why this doesn’t work in Windows 2008
> but works in previous versions of Windows.. ****
>
> ** **
>
> A couple of things first since you asked.. ****
>
> ** **
>
> The double quotes are required since the scalar $Name can contain spaces
> and the double quotes make sure the value is passed as one command line
> argument.. ****
>
> ** **
>
> The back ticks are a simple way to capture the output of the command to a
> scalar as in $output = `cluster group “$Name”`; (less typing)..
>
I only asked the question to indicate that there is no need for the double
qoute, since the scalar $Name get interpolated in double quote. It's like
double work!
$output = `cluster group $Name`; will also work!
 Moreover, I think, backtick is not really a good way to write maintainable
code.
Please check perldoc -q backtick

> ****
>
> ** **
>
> Now to the problem..****
>
> ** **
>
> My first thoughts were to provide the full path to the cluster command
> (i.e. c:\\windows\\system32\\cluster.exe) but this also returned the same
> results..
>

 If  I may suggest, Try File::Basename / File::Spec. why hardcore your your
file paths?

> ****
>
>  ****
>
> I did some research and found the problem to be related to the way the
> 64bit “stuff” works in winders.. ****
>
> ** **
>
> I found the following web link which defines the problem and the fix..
>
good then!!![?]

> ****
>
> ** **
>
>
> http://www.tipandtrick.net/2008/how-to-suppress-and-bypass-system32-file-system-redirect-to-syswow64-folder-with-sysnative/
> ****
>
> ** **
>
> So my thoughts about providing the full path were correct, I just had to
> use the fake path as shown below.. ****
>
> ** **
>
> *`%windir%\\Sysnative\\cluster.exe group “$Name”`;*
>
> * *
>
> So now I get to add a block to lots of code to be moved to Windows 2008 to
> check for windows version info and set the path accordingly.. lots of fun..
> ****
>
> ** **
>
> Anyway thanks again for the reply and I sure hope what I found helps
> someone in the future..
>
God willing........

> ****
>
> Flk k****
>
> ** **
>
> *From:* timothy adigun [mailto:2teezp...@gmail.com]
> *Sent:* Friday, February 03, 2012 2:35 PM
> *To:* Frank Kleinburg
> *Subject:* Re: local commands in Win2008R2****
>
> ** **
>
> Hi Frank,
>
>   Try system("cluster group $Name"); why use backtick?
>    ****
>
> On Thu, Feb 2, 2012 at 6:02 PM, Frank Kleinburg <fklei...@gmail.com>
> wrote:****
>
> Folks,
>
>
>
> Forever I have used the following to run an external command on a Winders
> box:
>
>
>
> `cluster group "$Name"`   (where name is the name of the cluster group in
> question)****
>
>   1. Why use backtick? Try system("cluster group $Name");
>   2. Why put $Name in a double quote?****
>
>
> But today I had to run a script which works on previous versions of
> Windows,
> is failing on Windows 2008 R2..
>  ****
>
> Debuging the command, I see the command is coming back "cluster" command
> not
> found.. OK so I tell myself, R2 doesn't have the correct path, and so I
> added the fully qualified path, including adding the ".exe" at the end of
> the local command name (i.e. `c:\\windows\\system32\\cluster.exe group
> group
> "$Name"`;).. Still same problem..
>
>
>
> Any ideas why this is failing in Windows 2008 R2??****
>
>
>     I don't use Windows 2008 R2, try the above and if that doesn't work
> you might have to state the error message you are getting.****
>
>
> Flk k
>
>
>
>
> ****
>
>
>
>
> --
> Tim****
>



-- 
Tim

<<330.png>>

Reply via email to