Jump to content

XPcreate features request


cyberchicken

Recommended Posts

Hello GM! Thank you for the tool, I would ha never managed to make it by myself.

I'd like to suggest a few changes I did myself, but sure you can incorporate them in a more convenient fashion

MAKEISO=0/1

to skip image creation

BURNISO=0/1

to skip image burning

DELETETEMP=0/1

to delete all temporary files at the end of cd creation

by now, if I'm not wrong they're deleted at the beginning of the process

also an option to EMBED XPCREATELOG into distribution disk, to have a trace of what kind of cd one is using.

this is how I implemented them in the xpcreated.cmd I used these days rem

mods by Cyberchicken

IF "%MAKEISO%"=="1" (

CALL :MAKEISO

IF "%BURNISO%"=="1" (

  CALL :BURNISO

)

)

CALL :CLEANUP

rem mod by cyberchicken

IF not "%DELETETEMP%"=="0" (

rem CALL :DELETETEMP

)

in the very first section
:CLEANUP

IF EXIST XPCT*.* DEL XPCT*.* /Q >> XPCREATE.LOG

IF EXIST SVCPACK.LOG DEL SVCPACK.LOG >> XPCREATE.LOG

IF EXIST *.INF XCOPY *.INF NEWFILES\ >> XPCREATE.LOG

IF EXIST *.INF DEL *.INF /Q >> XPCREATE.LOG

IF EXIST *.SIF XCOPY *.SIF NEWFILES\ >> XPCREATE.LOG

IF EXIST *.SIF DEL *.SIF /Q >> XPCREATE.LOG

rem mod by cyberchicken

IF EXIST TEMP RMDIR TEMP /S /Q

CALL :SHOWLOG "Started  at: %STARTTIME%"

CALL :SHOWLOG "Finished at: %TIME:~0,8%"

rem mod by cyberchicken

IF EXIST XPCREATE.LOG copy XPCREATE.LOG CDROOT\ > NUL

IF EXIST XPCREATE.LOG MOVE XPCREATE.LOG NEWFILES\ > NUL

in the cleanup subroutine

:) With all the respect to GM and everybody's work, I find this code a bit ugly and very hard to maintain.

For example many objects (xpcreatelog for example!) are non parametrized (hold in a variable), some subroutines are not used and a lot of code is repeated instead than reutilized.

I'm not new to batch, I worked tons of code in 4dos/4nt, but I admit that cmd capabilities (which I don't know deeply) are much limiting in doing what I point out.

I myself tried to convert :DELETEALL subroutine to a looped one and failed, probably to the much hated commadn line limit.

Nontheless I think that an "easier", less scaring, XPCreate.cmd would help bringing more scriptkiddies to the dark side of the programming :rolleyes: meaning that having a grasp of functioning leads to modifications, knowledge, etc... :D

Thank you

Cyberchicken (who's typed english might have many bugs 'cause he's tired)

Link to comment
Share on other sites


Forgot to add a thing :rolleyes:

I'm planning to use jdeboeck's Remove to slim down sources. As from my test it is compatible with xpcreate, but have you got any hard info?

Also having a plain way to integrate the two procedures Could be a rrreally COOL feature I think. :D But as they are, expected directory structures of the two procedure are a bit incompatible. :)

BTW do you know where I can contact jdeboeck? I found a little bug and have a suggestion even for him... :D

but haven't been able to receive a reply

bye

Link to comment
Share on other sites

Ciao, cyberchicken, and welcome to XPCREATE!

Now ... for your bashing!

Two of your three requests are already incorporated in XPCREATE:

DOISO = YES|NO

DOCD = YES|NO

Set these variable in XPCREATE.INI. I have added options to delete files at the end of the process, as you suggested, and this will be in the next release (your new ... last release took 6 weeks, and that just happened...) Concerning XPCREATE.LOG, that is meant for error reporting back to me, and I have it just where I like it.

On the other hand, not being new to coding myself, I must disagree. XPCREATE.CMD is clean and minimally redundent. Most importantly, it is legible and beautiful. Every variable and sub routine have a "raison d'etre", perhaps not in your context, but certainly in mine. As for maintainability, I would say error free code is maintainable code. There hasn't been a "real" bug found in weeks.

The whole XPCREATE process lends itself to Command Script. I have had no trouble with loops or calls.

And while I am not against the learning process, my objective here is not to bring prehistoric batch coding to the "Script Kiddies". I've put a lot of time into getting the code just right. I have no interest or desire to debug others modifications to code that is not broken. It involves too much time, and honestly, "What's in it for me?"

On a happier note, I'm glad you got it to work for you!

PS Just saw your second post. Please read HERE.

Ciao!

Link to comment
Share on other sites

Two of your three requests are already incorporated in XPCREATE:

DOISO = YES|NO

DOCD = YES|NO

I KNEW THEM! I SWEAR! I ispected the code! But as they were unreferenced in xpcreate.ini I thought they might be non functioning and preferred not to try them!
Concerning XPCREATE.LOG, that is meant for error reporting back to me, and I have it just where I like it.

Hmmm it is also a way to know what has been slipstreamed with distribution files, don't you think?

I mean I make a cd and it seems to work. In 3 weeks I use it to setup a machine and find a flaw. With an embedded log I can trace back the initial conditions.

Anyway if you don't mean to include it I can alway paste my two lines in the batch. :rolleyes:

...and beautiful.
I'll never again say anything bad about your baby :D

Anyway I never said or thought that XPcreate was buggy. Always ran perfectly.

Except... if it doesn't find a burner it somehow breaks (doesnt show Press Enter) but that's the very last operation and everything is fine by then.

Really weird how programming styles can be different. Now I'm sure that if I'd show you my works you'd judge them very bad. Well probably.

They're not! :D

Ah, about Remove same as above. I you don't think it good to include I'll do it myself as I can.

Thank you

ciao! :)

Link to comment
Share on other sites

I'm planning to use jdeboeck's Remove to slim down sources. As from my test it is compatible with xpcreate, but have you got any hard info?

Also having a plain way to integrate the two procedures Could be a rrreally COOL feature I think.  But as they are, expected directory structures of the two procedure are a bit incompatible. 

BTW do you know where I can contact jdeboeck? I found a little bug and have a suggestion even for him...

but haven't been able to receive a reply

If the error you found regards spaces in some of his commands, he knows about it, and plans to fix it when Sp2 comes out (brand new batches too)

You CAN use the batches AFTER XPCreate. Just use CDROOT as the root of the batches. I've done extensive testing on this. There are a few if you use, that the Update Rollup will appear on WU.

As for incorporating them into XPCreate, I believe GM has expressed his desire to focus solely on XPCreate and hotfixes, and leave everything else up to the brave.

Link to comment
Share on other sites

If the error you found regards spaces in some of his commands, he knows about it,
No, there is a mispelled filename that pauses an unuattend installation.

I must go with my memory... it's "privacy.ht_" which he supposed to refer to privacy.htm but actually refers to privacy.hta. Can't remember which remove is it in, but's easy to find.

You CAN use the batches AFTER XPCreate. Just use CDROOT as the root of the batches.

Good! :)

As for incorporating them into XPCreate, I believe GM has expressed his desire to focus solely on XPCreate and hotfixes, and leave everything else up to the brave.

I DID NOT expected or asked an incorporation. But xpcreate works (reasonably) a directory UP the root (that is two directories UP the i386) while Removes works only ONE up i386, therfore REMOVES have to be either modified or moved in place and run after xpcreate.

If a generic section or folder would exist in xpcreate, sorts of "batch plugins" could be used before or after xpcreate.

For example, to maintain xpcreate dir structure, one could think of a "POST" folder in which to drop the Removes he wants to be run, wich will be copied to the cdroot (or whatever temp dir) run and then deleted.

I can do these modification myself but I wanted to suggest a solution for everybody. Just think about it.

Thank you

Bye!

Link to comment
Share on other sites

XPCREATE.INI will simply set any values found inside. There are a few "hidden" options ...

Alanoll can certainly tell you more about using the REMOVE scripts that I. I'm sure there is a way to make it work, I just have no time for debugiing the XPCREATE/jdeboeck combination. Simply a question of time ...

Be careful modifying XPCREATE code ... No only is it copyrighted, but any modifications YOU make, will need to be made again if (and when) a new version comes out. On the other hand, there is no reason not to incorporate a CALL to XPCREATE from your own script, which then can call jdeboeck's scripts.

Good luck!

Link to comment
Share on other sites

XPCREATE.INI will simply set any values found inside. There are a few "hidden" options ...
Even other than those two?
just have no time for debugiing the XPCREATE/jdeboeck combination. Simply a question of time ...

It's obviuous.

Be careful modifying XPCREATE code ... No only is it copyrighted,
What kind of license? I would never redistribute any mod. Specially without giving credit. Maybe I'll just pass it to a friend who's working with me on an install disk.
but any modifications YOU make, will need to be made again if (and when) a new version comes out.
That's why in the first place I proposed those mods here :)
On the other hand, there is no reason not to incorporate a CALL to XPCREATE from your own script, which then can call jdeboeck's scripts.

Oh well ther are two reasons: "press enter" at the end of xpcreate, but maybe you're gonna tell me there's an optiont ti suppress it, and the fact that that if I run REMOVE or whatever after xpcreate I loose it's ability to make and burn the iso.

Sure I could reproduce the burning behaviour in my code now that I think.

I really hope that you don't think that I am polemic. I am very thankful to you and everybody here for the attention I receive.

Personally I'm kind of a roamer, I never stop in a place too long. Nontheless I didn't find many communities that make me feel at home like this.

bye

Link to comment
Share on other sites

... Even other than those two?
Yes, I can think of at least three off the top of my head ...
What kind of license?
Just Copyrighted ...
... That's why in the first place I proposed those mods here :)
And why I listened, though I did have the "CleanUp" Option in a Previous Incarnation.
... Oh well ther are two reasons: "press enter" at the end of xpcreate, but maybe you're gonna tell me there's an optiont ti suppress it...
You guessed it! Look at the last 5 lines of code ...
... I loose it's ability to make and burn the iso. ...
This one liner should do ... change the parts in Bold if desired.
START "Making ISO" /WAIT CDIMAGE -LXPCREATE -YD -N -H -X -OCI -M -D -BBOOT\XPCTBOOT.BIN CDROOT XPCREATE.ISO
... that make me feel at home like this....
Welcome home!
Link to comment
Share on other sites

Yes, I can think of at least three off the top of my head ...
...And they are?
START "Making ISO" /WAIT CDIMAGE -LXPCREATE -YD -N -H -X -OCI -M -D -BBOOT\XPCTBOOT.BIN CDROOT XPCREATE.ISO

I already managed to make some tests with this

Does it really accept only one dir as input?

You may be happy to know that writing a floppy image in xpcreate.ini i obtain a booting cd in emulation mode.

Yet I didn't use this method (I still go with nero by now) cause the rest of the image had some problems with stuff inside $oem$. (could not read cmdlines.txt even if file was shown as present).

I tried only once so can't report exactly. Anyway I had to put nero in DOS mode for the code page to have the $oem$ dollar sign burnt correctly.

Bye

Link to comment
Share on other sites

Yes, CDIMAGE takes only one directory and [possibly] one boot image as input. Note that using this command line may require all files needed during text based setup (blue screen) to be in UPPERCASE. Otherwise, try the command line from the http://unattended.msfn.org site. Can't tell you about NERO, but I think if setup correctly, that can work as well.

Link to comment
Share on other sites

IS it possible to add delete Temp directary after the creation of the CDroot folder. Because most of the time it stoped after there because i do not have enough space to create the ISO file. And the temp is something near 1Gb Big!.

Link to comment
Share on other sites

First, big THANK YOU :rolleyes:

is it me, or am i missing a "prior to hotfixes, non switchable, exe files in here \SVC-XXX\" folder ? like SVC-PRE, but without switches ?

(a folder for files, without switches, executed before hotfixes)

PS: dont be hard on me, im 200% newbie :)

Link to comment
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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...