Extraction Command fail in action script

(imported topic written by SystemAdmin)

Hello BigFix

I’m trying to extract a file with a name stored in the registry and the file exist in the _download folder

but always fail

i’m trying these commands but alwayes fail using the Relevance debugger

Extract {value “Def” of key “HKLM\Software\BigFix\AntiPest” of registry}

Extract {value “Def” of key “HKLM\Software\BigFix\AntiPest” of registry as string}

Extract {(value “Def” of key “HKLM\Software\BigFix\AntiPest” of registry as string)}

Extract Defs*

Extract *.bfd

Can you help me

Thanks

Ahmed Hamed

(imported comment written by arnaud91)

Hi Ahmed,

You can not use the Relevance debugger to evaluate an action script.

To do so, you will have to use the Fixlet debugger: http://support.bigfix.com/fixlet/

Download the FixletDebugger-alpha2.zip file, extract it, and place the file you want to test extraction in the directory: \FixletDebugger-alpha2\Fixlet Debugger__BESData__Download

Then you can run the “Fixlet Debugger.exe”.

Select “View”, “New Action tab”, and write your action script. (for example: extract filetoextract.tmp)

Warning: the “extract” command will only work with files compressed with BigFix tools (with the Software Distribution Wizard for example).

If you need to extract zip files, you can find information there: http://forum.bigfix.com/viewtopic.php?id=1451

Regards,

Arnaud

(imported comment written by SystemAdmin)

Ohh

sorry arnaud

i was already use Fixlet Debugger " Typo mistake " in my tests which fail

and i already try to extract file compressed with Bigfix tools " *.bfd "

can you check my commands

Thanks

(imported comment written by arnaud91)

The syntax:

Extract {value “Def” of key “HKLM\Software\BigFix\AntiPest” of registry} should work, but i tested it and it doesn’t work.

I come back to you as soon as i have an explanation.

Regards,

Arnaud

(imported comment written by SystemAdmin)

Thanks Arnaud for your Help

i’ll wait for your reply , and if you have a temp workaround or replacment command it will be great

Thanks :wink:

Ahmed Hamed

(imported comment written by arnaud91)

Ahmed,

I don’t have any workaround to propose at this time.

Just a quick question: why do you need to extract these specific AntiPest files? and why do you want to do it using a BigFix action?

I ask this to see if i can propose another solution.

Regards,

Arnaud

(imported comment written by SystemAdmin)

Hello Arnaud

i’m download the Antipest Definition update maually and extracting it to update the Antispyware

and since the definition update file’s name is change randomly , i’m storing its name in a registry key and to download it when needed

is there any other 3rd party tool that can extract this *.bdf files instead of this command

Thanks

Hamed

(imported comment written by arnaud91)

Ahmed,

According to BigFix product team, the extract command can not work with Relevance.

We will have to find a workaround.

Arnaud

(imported comment written by arnaud91)

Ahmed,

Finally, Product Team found a possible workaround. Can you try this:

Delete __Download\myextract.tmp
 
Copy __Download\{value "filename" of key "HKLM\Software\aa" of registry} __Download\myextract.tmp
 
Extract myextract.tmp

Regards,

Arnaud

(imported comment written by SystemAdmin)

Excellet Arnaud

i was almost reach to a solution near to that one , now i have two other questions

1- is Using " BFarchive " can help in this situation ?

bfarchive.exe -x

2- if i download file with unknown size or SHA , how can i make sure that i have downloaded it successfully before going to the second command ?

and if know nearly it size , would it help ?

Thanks Alot

Ahmed Hamed

(imported comment written by arnaud91)

Hi Ahmed,

  1. Yes, if you want to manually compress or decompress files in BigFix format, you can use BFArchive.exe

The command syntax is here (i think you already read this post, but i put the link for other interested people): http://support.bigfix.com/cgi-bin/kbdirect.pl?id=452

  1. If you use the download command (with or without specifying size or sha1), it will wait for the download to be complete before existing next action.

If you know the size, you can use it like this:

prefetch file.bfd size:1000000 http://www.domain.com/file.bfd

Warning: Normally, prefetch command syntax includes the sha1 information, i never tested it without specifying the sha1.

If you just know nearly the size, you can try this:

download http://www.domain.com/file.bfd
 
continue if {(size of it > 900000 AND size of it < 1100000) of file "__Download\file.bfd"}

Warning: in any case, downloading a file without verifying the sha1 could be a security issue!

Regards,

Arnaud

(imported comment written by SystemAdmin)

Arnaud

If really Download command wait until downloading the file and then go to the next command , you solved all my problems !

but the Problem is that when i test my code on the " Fixlet Debugger " it give me run time error on the second command " Copy "

download now http://xxxxxx.xxxx.com/download/xxxxx/xxxx/{value “Def” of key “HKLM\Software\xxxxx\xxxx” of registry}

Copy “__Download{value “Def” of key “HKLM\Software\xxxx\xxxxx” of registry as string}” “__download\xxx.bfd”

extract xxx.bfd

And when i test each command seperatly , it run successfully !!!

so , it is clear that the script Issue the download process in a seperate Thread and go directly to the second command " Copy " which is fail due to non exit file !!

am i correct ?

Thanks

Ahmed Hamed

(imported comment written by SystemAdmin)

Any way

when i run that commands on my Task Directly , it work fine

so , the problem now is why it give error on the “Fixlet Debugger” which is supposed to be my guide

Thanks

Ahmed Hamed

(imported comment written by arnaud91)

Ahmed,

I also tested it through a task and you’re right, it works.

The problem seems to come from the debugger.

I will investigate this point.

Regards,

Arnaud