Jump to content











Photo
* * * - - 4 votes

BootSDI, zCopy and ImageCreator utility


  • Please log in to reply
595 replies to this topic

#201 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 07 June 2007 - 02:28 PM

Hi,

Clicking the ? button in the Temp location section of the SDIBoot scritpt causes an Access Violation. I am using Winbuilder 068. I have the latest native_ex project.

niche99


This access violation is a 'feature' of WinBuilder when using one of the System,??? functions.
It appears in other scripts, too. e.g. in ReOpen or WBManager.

As far as I know, it does not make anything wrong. And I'm sure that Nuno will fix it.

Peter

#202 niche99

niche99

    Frequent Member

  • Advanced user
  • 226 posts
  • Location:Aberdeen, Scotland
  •  
    Scotland

Posted 07 June 2007 - 03:32 PM

Hi,

Trying the latest native_ex project using WinBuilder 068 and choosing BootSDi script. After a successful build, the Iso fails to boot in qEmu and VirtualBox, boot stops at please wait message. Using Win2003 files as instructed by script. Last time I built this project, 2 weeks ago I think, SDIBoot was working.


niche99

#203 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 07 June 2007 - 03:48 PM

Hi,

Trying the latest native_ex project using WinBuilder 068 and choosing BootSDi script. After a successful build, the Iso fails to boot in qEmu and VirtualBox, boot stops at please wait message. Using Win2003 files as instructed by script. Last time I built this project, 2 weeks ago I think, SDIBoot was working.


niche99


During the test with Sherpya's 'special source CD' something went wrong with version numbers.

Please download again all new scripts.
AND include Explorer and PENetwork scripts. Check them if they are unchecked!

Peter


#204 niche99

niche99

    Frequent Member

  • Advanced user
  • 226 posts
  • Location:Aberdeen, Scotland
  •  
    Scotland

Posted 07 June 2007 - 04:29 PM

During the test with Sherpya's 'special source CD' something went wrong with version numbers.

Please download again all new scripts.
AND include Explorer and PENetwork scripts. Check them if they are unchecked!

Peter


Hi,

Done everything you recommend above, same result, booting stops at please wait message.

niche99

#205 niche99

niche99

    Frequent Member

  • Advanced user
  • 226 posts
  • Location:Aberdeen, Scotland
  •  
    Scotland

Posted 07 June 2007 - 05:03 PM

Hi,

Done everything you recommend above, same result, booting stops at please wait message.

niche99


Hmmm. used ntdetect.com, setupldr.bin and ramdisk.sys from LiveXP Project instead of my own Win2003 Server SP2 Evaluation versions, and SDIBoot now works. Will do some more testing.

niche99

#206 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 07 June 2007 - 06:04 PM

Hmmm. used ntdetect.com, setupldr.bin and ramdisk.sys from LiveXP Project instead of my own Win2003 Server SP2 Evaluation versions, and SDIBoot now works. Will do some more testing.

niche99

I tried on my system with XP SP2 as source, and the 'special 3 files folder' pointing to my W2003 source\i386:
No issues, PE booted in qEmu.

Perhaps you should try a clean new installation:
Delete
  • %BaseDir%\Projects\nativeEx_barebone
  • %BaseDir%\Temp\nativeEx_barebone
  • %BaseDir%\Workbench\nativeEx_barebone
Peter

#207 niche99

niche99

    Frequent Member

  • Advanced user
  • 226 posts
  • Location:Aberdeen, Scotland
  •  
    Scotland

Posted 07 June 2007 - 10:13 PM

I tried on my system with XP SP2 as source, and the 'special 3 files folder' pointing to my W2003 source\i386:
No issues, PE booted in qEmu.

Perhaps you should try a clean new installation:
Delete

  • %BaseDir%\Projects\nativeEx_barebone
  • %BaseDir%\Temp\nativeEx_barebone
  • %BaseDir%\Workbench\nativeEx_barebone
Peter


Hi Peter,

I followed your advice given above, to the letter. Still not getting past Please wait... boot message. I think my Win2003 Evaluation Version is corrupt somehow. I'll try downloading another Win2003 Evaluation Version and try again.

niche99

#208 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 18 July 2007 - 12:40 PM

There is an issue with BootSDI when using W2003 as source:

During boot the PE hangs with 'Please wait'.

This happens with a minimal configuration (CMD as shell, no drivers, no apps) as well as with a 'standard' explorer configuration.

I tried also the oldest version I have (from about FEB 2007, with filedisk): Hangs, too.

EDIT: I found a temporary solution (see here)
But that solution should not be final.
It shuld work with all W2003 versions.

Peter

Edited by psc, 18 July 2007 - 05:37 PM.
More info


#209 nikzzzz

nikzzzz

    Frequent Member

  • .script developer
  • 263 posts

Posted 30 July 2007 - 07:02 PM

Update BootSdi :

update zCopy
add decompress UPX
new create .ima file - qEmu it is not necessary any more
Automatic search of free letter TempDisk.



#210 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 31 July 2007 - 08:42 AM

Update BootSdi :

update zCopy
add decompress UPX
new create .ima file - qEmu it is not necessary any more
Automatic search of free letter TempDisk.

Now available on the nativeEx_barebone server

Peter

#211 Galapo

Galapo

    Platinum Member

  • .script developer
  • 3,841 posts
  •  
    Australia

Posted 23 August 2007 - 01:17 AM

I had a problem with BootSDI as I continuously run a mounted vmware image on my computer -- so the vdk service is already running, which causes problems for the script as it assumes that the service needs to be installed.

The following autoit script detects the status of the vdk service:
VDKcheck.au3
[codebox]Global $SC_MANAGER_CONNECT = 0x0001 Global $SERVICE_INTERROGATE = 0x0080 Global $SERVICE_CONTROL_INTERROGATE = 0x00000004 If _ServiceRunning("VirtualDK") = 1 Then $file = FileOpen($CmdLine[1],2) FileWriteLine($file,"[VDKcheck]") FileWriteLine($file,"Status=ServiceRunning") FileClose($file) ElseIf _ServiceExists("VirtualDK") = 1 Then $file = FileOpen($CmdLine[1],2) FileWriteLine($file,"[VDKcheck]") FileWriteLine($file,"Status=ServiceExists") FileClose($file) Else $file = FileOpen($CmdLine[1],2) FileWriteLine($file,"[VDKcheck]") FileWriteLine($file,"Status=ServiceNonexistent") FileClose($file) EndIf ;=============================================================================== ; ; Description: Checks to see if a service is installed ; Syntax: _ServiceExists($sServiceName) ; Parameter(s): $sServiceName - Name of service to check ; Requirement(s): None ; Return Value(s): On Success - Returns 1 ; On Failure - Returns 0 ; Author(s): SumTingWong ; Documented by: noone ; ;=============================================================================== Func _ServiceExists($sServiceName) Local $arRet Local $hSC Local $bExist = 0 $arRet = DllCall("advapi32.dll", "long", "OpenSCManager", _ "str", "", _ "str", "ServicesActive", _ "long", $SC_MANAGER_CONNECT) If $arRet[0] <> 0 Then $hSC = $arRet[0] $arRet = DllCall("advapi32.dll", "long", "OpenService", _ "long", $hSC, _ "str", $sServiceName, _ "long", $SERVICE_INTERROGATE) If $arRet[0] <> 0 Then $bExist = 1 DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $arRet[0]) EndIf DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hSC) EndIf Return $bExist EndFunc ;=============================================================================== ; ; Description: Checks to see if a service is running ; Syntax: _ServiceRunning($sServiceName) ; Parameter(s): $sServiceName - Name of service to check ; Requirement(s): None ; Return Value(s): On Success - Returns 1 ; On Failure - Returns 0 ; Author(s): SumTingWong ; Documented by: noone ; ;=============================================================================== Func _ServiceRunning($sServiceName) Local $arRet Local $hSC Local $hService Local $bRunning = 0 $arRet = DllCall("advapi32.dll", "long", "OpenSCManager", _ "str", "", _ "str", "ServicesActive", _ "long", $SC_MANAGER_CONNECT) If $arRet[0] <> 0 Then $hSC = $arRet[0] $arRet = DllCall("advapi32.dll", "long", "OpenService", _ "long", $hSC, _ "str", $sServiceName, _ "long", $SERVICE_INTERROGATE) If $arRet[0] <> 0 Then $hService = $arRet[0] $arRet = DllCall("advapi32.dll", "int", "ControlService", _ "long", $hService, _ "long", $SERVICE_CONTROL_INTERROGATE, _ "str", "") $bRunning = $arRet[0] DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hService) EndIf DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hSC) EndIf Return $bRunning EndFunc[/codebox] The script assumes the passing of a commandline argument in the form of something like: [code]ShellExecute,Hide,&#34;%Tools%\vdk\VDKcheck.exe&#34;,&#34;%Tools%\vdk\VDKcheck.txt&#34;[/code] Then the status of the service can be called from the written txt file and the currently installed service used or the service installed if that is required: [code]IniRead,&#34;%Tools%\vdk\VDKcheck.txt&#34;,&#34;VDKcheck&#34;,&#34;Status&#34;,&#34;%VDKcheck%&#34; If,&#34;%VDKcheck%&#34;,Equal,&#34;ServiceExists&#34;,ShellExecute,Hide,&#34;vdk.exe&#34;,&#34;start&#34; If,&#34;%VDKcheck%&#34;,Equal,&#34;ServiceNonexistent&#34;,ShellExecute,Hide,&#34;%Tools%\vdk\vdk.exe&#34;,&#34;install&#34; If,&#34;%VDKcheck%&#34;,Equal,&#34;ServiceNonexistent&#34;,ShellExecute,Hide,&#34;%Tools%\vdk\vdk.exe&#34;,&#34;start&#34;[/code]

etc...

Just a suggestion.

Regards,
Galapo.

#212 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 23 August 2007 - 10:45 AM

I had a problem with BootSDI as I continuously run a mounted vmware image on my computer -- so the vdk service is already running, which causes problems for the script as it assumes that the service needs to be installed.

The following autoit script detects the status of the vdk service:
...


First, please allow me that I put your script into a codebox, to make the post better readable.

A good program! :loleverybody:

You should consider to pass the name of the service (here 'VirtualDK') as program statup parameter.

On the other hand:
A quick and dirty check can be made with the WinBuilder registry functions:
  • If [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\VirtualDK] exists
    • If [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\VirtualDK\Enum] exists: ServiceRunning
    • else ServiceExists
  • else ServiceNonexistent
Peter

#213 smiley

smiley

    Silver Member

  • .script developer
  • 905 posts
  •  
    Greece

Posted 23 August 2007 - 10:48 AM

A quick and dirty check can be made with the WinBuilder registry functions:

  • If [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\VirtualDK] exists
    • If [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\VirtualDK\Enum] exists: ServiceRunning
    • else ServiceExists
  • else ServiceNonexistent


That could work, but there is no such command like if,keyexists ...

#214 Galapo

Galapo

    Platinum Member

  • .script developer
  • 3,841 posts
  •  
    Australia

Posted 23 August 2007 - 11:04 AM

You should consider to pass the name of the service (here 'VirtualDK') as program statup parameter.


Not entirely sure what you mean. Do you mean that we could remove the dependency of the vdk service so that this could check for other services?

Eg:
ServiceCheck.au3
[codebox]Global $SC_MANAGER_CONNECT = 0x0001Global $SERVICE_INTERROGATE = 0x0080Global $SERVICE_CONTROL_INTERROGATE = 0x00000004If _ServiceRunning($CmdLine[1]) = 1 Then$file = FileOpen($CmdLine[2],2)FileWriteLine($file,&#39;[&#39; & $CmdLine[1] & &#39;]&#39;)FileWriteLine($file,"Status=ServiceRunning")FileClose($file)ElseIf _ServiceExists($CmdLine[1]) = 1 Then$file = FileOpen($CmdLine[2],2)FileWriteLine($file,&#39;[&#39; & $CmdLine[1] & &#39;]&#39;)FileWriteLine($file,"Status=ServiceExists")FileClose($file)Else$file = FileOpen($CmdLine[2],2)FileWriteLine($file,&#39;[&#39; & $CmdLine[1] & &#39;]&#39;)FileWriteLine($file,"Status=ServiceNonexistent")FileClose($file)EndIf;===============================================================================;; Description: Checks to see if a service is installed; Syntax: _ServiceExists($sServiceName); Parameter(s): $sServiceName - Name of service to check; Requirement(s): None; Return Value(s): On Success - Returns 1; On Failure - Returns 0; Author(s): SumTingWong; Documented by: noone;;===============================================================================Func _ServiceExists($sServiceName)Local $arRetLocal $hSCLocal $bExist = 0$arRet = DllCall("advapi32.dll", "long", "OpenSCManager", _"str", "", _"str", "ServicesActive", _"long", $SC_MANAGER_CONNECT)If $arRet[0] <> 0 Then$hSC = $arRet[0]$arRet = DllCall("advapi32.dll", "long", "OpenService", _"long", $hSC, _"str", $sServiceName, _"long", $SERVICE_INTERROGATE)If $arRet[0] <> 0 Then$bExist = 1DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $arRet[0])EndIfDllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hSC)EndIfReturn $bExistEndFunc;===============================================================================;; Description: Checks to see if a service is running; Syntax: _ServiceRunning($sServiceName); Parameter(s): $sServiceName - Name of service to check; Requirement(s): None; Return Value(s): On Success - Returns 1; On Failure - Returns 0; Author(s): SumTingWong; Documented by: noone;;===============================================================================Func _ServiceRunning($sServiceName)Local $arRetLocal $hSCLocal $hServiceLocal $bRunning = 0$arRet = DllCall("advapi32.dll", "long", "OpenSCManager", _"str", "", _"str", "ServicesActive", _"long", $SC_MANAGER_CONNECT)If $arRet[0] <> 0 Then$hSC = $arRet[0]$arRet = DllCall("advapi32.dll", "long", "OpenService", _"long", $hSC, _"str", $sServiceName, _"long", $SERVICE_INTERROGATE)If $arRet[0] <> 0 Then$hService = $arRet[0]$arRet = DllCall("advapi32.dll", "int", "ControlService", _"long", $hService, _"long", $SERVICE_CONTROL_INTERROGATE, _"str", "")$bRunning = $arRet[0]DllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hService)EndIfDllCall("advapi32.dll", "int", "CloseServiceHandle", "long", $hSC)EndIfReturn $bRunningEndFunc[/codebox]Called:[code]ShellExecute,Hide,&#34;%Tools%\ServiceCheck.exe&#34;,&#34;VirtualDK #$q%Tools%\ServiceCheck.txt#$q&#34;[/code]

#215 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 23 August 2007 - 11:13 AM

That could work, but there is no such command like if,keyexists ...

Try this in your codebox:
[main]

Title=CodeBox test

Description=Running custom commands



[Variables]

%service%=-

%running%=-

%result%=ServiceNonexistent



[process]

RegRead,"HKLM","SYSTEM\CurrentControlSet\Services\VirtualDK","Start","%service%"

If,%service%,NotEqual,-,RegRead,"HKLM","SYSTEM\CurrentControlSet\Services\VirtualDK\Enum","count","%running%"

If,%service%,NotEqual,-,Set,%result%,ServiceExists 

If,%running%,NotEqual,-,Set,%result%,ServiceRunning 

Message,"%result%",Information
It will show you:
service1.gif
service2.gif
service3.gif

Peter :loleverybody:

#216 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 23 August 2007 - 11:18 AM

Not entirely sure what you mean. Do you mean that we could remove the dependency of the vdk service so that this could check for other services?

Called:

ShellExecute,Hide,&#34;%Tools%\ServiceCheck.exe&#34;,&#34;VirtualDK #$q%Tools%\ServiceCheck.txt#$q&#34;


Yes, that's what I meant. That makes the program more universal, instead of 'only-for-vdk'

Peter

#217 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,098 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 24 August 2007 - 08:55 AM

If I may, why not simply using VDK.EXE own function (VDK.EXE DRIVER) and parse it's output?
(for VDK.EXE only, of course)

jaclaz

#218 nikzzzz

nikzzzz

    Frequent Member

  • .script developer
  • 263 posts

Posted 25 August 2007 - 08:00 PM

If I may, why not simply using VDK.EXE own function (VDK.EXE DRIVER) and parse it's output?
(for VDK.EXE only, of course)

jaclaz

Very good idea.

FileCreateBlank,"%BaseDir%\temp\vdk.ini"

TXTAddLine,"%BaseDir%\temp\vdk.ini","[status]","Append"

ShellExecute,open,"cmd.exe","/c %tools%\vdk\vdk.exe driver >>#$q%BaseDir%\temp\vdk.ini#$q"

TXTReplace,"%BaseDir%\temp\vdk.ini"," ",""

TXTReplace,"%BaseDir%\temp\vdk.ini",":","="IniRead,"%BaseDir%\temp\vdk.ini","status","driverstatus","%VdkStatus%"Echo,%VdkStatus%

Returns %VdkStatus% - RUNNING , STOPPED , NOTINSTALLED

#219 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,098 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 26 August 2007 - 10:11 AM

Very good idea.

Another great success :loleverybody: of the Occam's_Razor:
http://en.wikipedia....cam&#39;s_Razor

or, if you prefer, of the KISS principle:
http://en.wikipedia..../KISS_principle

Of course, being Italian, I prefer to express the idea as Leonardo da Vinci did:

Simplicity is the ultimate sophistication


:w00t:

jaclaz

P.S.:
Cannot say if it helps, but in batch it would be a one liner with no temporary files:
@ECHO OFF&FOR /F "tokens=3 delims=: " %%A in (&#39;VDK.EXE DRIVER^| Find "Driver Status"&#39;) DO ECHO %%A&PAUSE


#220 nikzzzz

nikzzzz

    Frequent Member

  • .script developer
  • 263 posts

Posted 26 August 2007 - 11:27 AM

[quote name='jaclaz' post='19839' date='Aug 26 2007, 10:11 AM']Cannot say if it helps, but in batch it would be a one liner with no temporary files:
@ECHO OFF&FOR /F "tokens=3 delims=: " %%A in (&#39;VDK.EXE DRIVER^| Find "Driver Status"&#39;) DO ECHO %%A&PAUSE

[/codebox][/quote]

The temporary file is necessary for result transfer in Winbuilder.

[codebox]

If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","install"

If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","start"If,%VdkStatus%,Equal,"STOPPED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","start"...........If,%VdkStatus%,Equal,"STOPPED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","stop"

If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","stop"

If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","remove"

New version


#221 was_jaclaz

was_jaclaz

    Finder

  • Advanced user
  • 7,098 posts
  • Location:Gone in the mist
  •  
    Italy

Posted 26 August 2007 - 01:22 PM

The temporary file is necessary for result transfer in Winbuilder.

Yes, if you "delegate" the installing/starting/stopping to Winbuilder.

As I am NO expert on Winbuilder Sintax cannot say if something like this would work :loleverybody::

WARNING! PSEUDO-code
[codebox] ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==NOT vdk.exe START&EXIT ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==STOPPED vdk.exe START&EXIT ..... ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==RUNNING vdk.exe REMOVE&EXIT [/codebox] However, to continue my "battle" for the sake of simplicity: [quote name='nikzzz'][i][b]If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","install" [/b][/i] [b]If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","start"[/b] If,%VdkStatus%,Equal,"STOPPED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","start" ........... If,%VdkStatus%,Equal,"STOPPED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","stop" [i][b]If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","stop"[/b][/i] [b]If,%VdkStatus%,Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","remove"[/b][/quote] [i][b]Bolded italics[/b][/i] lines are unnecessary, moreover you can apply "reverse" logic: again, [i][b]PSEUDO[/b][/i]-code [quote]If,%VdkStatus%,[b]NOT[/b]Equal,"RUNNING",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","start" .... If,%VdkStatus%,[b]NOT[/b]Equal,"NOTINSTALLED",ShellExecute,Hide,"%Tools%\vdk\vdk.exe","remove"[/quote]


VDK.EXE commands are "telescopic", executing one with a "higher order" will ALSO execute those in "lower orders". :w00t:

Reference here:
http://www.boot-land...?...=1662&st=59

jaclaz

#222 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 26 August 2007 - 01:27 PM

Some times ago I tried successless similar with ProjectInfo.

The issue:

If WinBuilder could catch the console output of a ShellExecute process into a variable, things would become much more easier!
(Maybe and / or ExitCode)

@Nuno ???

Peter

#223 nikzzzz

nikzzzz

    Frequent Member

  • .script developer
  • 263 posts

Posted 26 August 2007 - 03:15 PM

[codebox] ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==NOT vdk.exe START&EXIT ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==STOPPED vdk.exe START&EXIT ..... ShellExecute,open,"cmd.exe","/c @ECHO OFF&FOR /F "tokens=3 delims=: " %A in (&#39;vdk.exe DRIVER^| Find "Driver Status"&#39;) DO IF %A==RUNNING vdk.exe REMOVE&EXIT [/codebox][/quote] The line 3 will always yield result RUNNING and will be execute vdk.exe REMOVE. It will not solve a problem described Galapo. [quote]I had a problem with BootSDI as I continuously run a mounted vmware image on my computer - so the vdk service is already running, which causes problems for the script as it assumes that the service needs to be installed.[/quote] [quote]However, to continue my "battle" for the sake of simplicity

:loleverybody:

#224 Galapo

Galapo

    Platinum Member

  • .script developer
  • 3,841 posts
  •  
    Australia

Posted 26 August 2007 - 10:15 PM

Thanks nikzzzz for the update! It indeed solves my problem without additional files. Great work and thanks.

Regards,
Galapo.

#225 pscEx

pscEx

    Platinum Member

  • Team Reboot
  • 12,052 posts
  • Location:Korschenbroich, Germany
  • Interests:What somebody else cannot do.
  •  
    European Union

Posted 27 August 2007 - 11:45 AM

The new version 033 is available on the nativeEx server.

Peter




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users