Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


  • Content count

  • Donations

  • Joined

  • Last visited

Community Reputation

0 Neutral

About Solivagus

  1. Issue appears to be that some things require a boot for the pending.xml to process. Even enabling the .Net 3.5 framework (NetFx3) creates a pending.xml Best bet is to find all the items that can be safely removed that don't make a pending.xml then run the cleanup so it removes then from winsxs then run the command with the items that create a pending.xml and make an install iso out of that. Upon first install boot it should process all those items however I am unsure of this. Going through and making a safe list now for s***s and giggles
  2. My apologies, I forgot to put in the profiles subfolder that I did put in previous posts for my example. I'll just re-post for clarification. "D:\Desktop\Forex\MT4 Testing" <- batch file run from "D:\Desktop\Forex\MT4 Testing\Profiles" <- List of directory profiles "D:\Desktop\Forex\MT4 Testing\Multi Profile Testing" <-where the terminal.exe's are
  3. Those are the actual folder names, yes. The testing terminal.exe are run for 2 weeks or more before I pick the best one and move that to its own folder and deal with it individually. I won't need to use the batch file for it. The code is ONLY for settings up lots of different terminal.exe with different paramaters to find the best performing one's out of a batch.
  4. "D:\Desktop\Forex\MT4 Testing"
  5. The first line of code works perfectly, the second line was just my attempt to show you what i'm trying to achieve however i'll expand a bit more though. Resolution for HD movies will 90% of the time start with 1920 OR 1280 followed by the height of 1080 or 720 so: 1920x1080 1280x720 Now the widths, being the 1920/1280 tend to be a constant. However the height isn't, you can get 1050 instead of 1080 or 557 instead of 720. It is just how the stuff gets encoded. So I can't use the height variable obviously because it is all over the place, I need to use the width. However we all refer to HD material as either 1080p or 720p, all retail blu-rays do as well so for cataloging purposes i'd obviously prefer that number. I wanted to find the Width and then if the variable (%%j as stated above) was 1920 to change it to say 1080p and it if was 1280 to change it to 720p and then do the rename function. As for placing the code onto a single line I just wrote it out as I pictured it needing to function in my head is all, most of my scripts don't do that i'll admit. Could be why i'm running into all my troubles.
  6. The very first post you guys classified as confusing because I gave made up folders, so I gave clearer examples and my actual folders in a later post. Also I missed out a double quotation mark in the first post. The single quotes are what terminal.exe requires, nothing to do with anything else except how it handles paramters. The profile names are based on the folder name, it isn't a .ini or any sort of file. It is just how this program functions. Since my initial problem was nesting for loops that recursed each other, I just made it so I had one for loop instead because using both I didn't know how. To see the other bit of code, which is a separate batch file for /F "tokens=*" %a in ('dir /ad /b "MT4 Profiles"') do xcopy /c /e /h /i /y "D:\Desktop\Forex\MT4 Testing\Multi Profile Testing" D:\Desktop\"MT4 Testing"\"%a" Where "D:\Desktop\Forex\MT4 Testing\Multi Profile Testing" is where all the terminal.exe program files are, each mt4 folder is identical to the other in terms of folder content So my first post would now look like this <pathto>\pony 1\terminal.exe "55-'pony 1'" however all examples given below omit the extra single quotes and the 55- because that only has stuff to do with terminal and I know is fine. I don't know how else to explain my first post other than for loop 1 results get paired to for loop 2 results only once so the very first result in for loop 1 gets paired with the very first result in for loop 2. The second result in for loop 1 gets paired to the second result in for loop 2 The profiles folder for loop results are horse 1 pony 1 turtle 1 horse 2 pony 2 turtle 2 The terminal.exe folder for loop results are subdirectories found in D:\Desktop\Forex\MT4 Testing\ so look like D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe D:\Desktop\Forex\MT4 Testing\testing 3\terminal.exe D:\Desktop\Forex\MT4 Testing\testing 4\terminal.exe D:\Desktop\Forex\MT4 Testing\testing 5\terminal.exe D:\Desktop\Forex\MT4 Testing\testing 6\terminal.exe My desired results from this piece of code is "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "horse 1" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "pony 1" "D:\Desktop\Forex\MT4 Testing\testing 3\terminal.exe" "turtle 1" "D:\Desktop\Forex\MT4 Testing\testing 4\terminal.exe" "horse 2" "D:\Desktop\Forex\MT4 Testing\testing 5\terminal.exe" "pony 2" "D:\Desktop\Forex\MT4 Testing\testing 6\terminal.exe" "turtle 2" What I get "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "horse 1" "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "pony 1" "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "turtle 1" "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "horse 2" "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "pony 2" "D:\Desktop\Forex\MT4 Testing\testing 1\terminal.exe" "turtle 2" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "horse 1" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "pony 1" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "turtle 1" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "horse 2" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "pony 2" "D:\Desktop\Forex\MT4 Testing\testing 2\terminal.exe" "turtle 2" Results from my workaround, using the current directory as what is looked in "D:\Desktop\Forex\MT4 Testing\horse 1\terminal.exe" "horse 1" "D:\Desktop\Forex\MT4 Testing\pony 1\terminal.exe" "pony 1" "D:\Desktop\Forex\MT4 Testing\turtle 1\terminal.exe" "turtle 1" so on and so forth. The results I get with the for loops by themselves is accurate, just how they pair up is the behaviour I am having trouble with. ok, to give another example of the same problem i'm having. Let's assume I have a folder with 3 files in it called file1 file2 file3 and three folders called dir1 dir2 dir3 and i'm running the below code from that folder for /F "tokens=*" %%a in ('dir /b') do (for /F "tokens=*" %%b in ('dir /b /ad') do @echo "%%a" "%%b'") What I get is file1 dir1 file1 dir2 file1 dir3 file2 dir1 file2 dir2 file2 dir3 file3 dir1 file3 dir2 file3 dir3 When all I want is file1 dir1 file2 dir2 file3 dir3
  7. A simpler problem. More because I actually had the solution after much trial and error but obviously did something stupid when I walked away from the computer. for /F "tokens=*" %%a in ('dir /b /s Foreign') do ( D:\Desktop\MediaInfo_CLI_0.7.37_Windows_x64\mediainfo.exe --Inform=Video;%%Width%% "%%a" > 1.txt & for /f "tokens=*" %%j in ('type 1.txt') do ren "%%a" "%%~na [%%jp]%%~xa" ) & del 1.txt That code works perfectly fine, the mediainfo is just there to scrape data from the video file. For reference sake this script is just to help rename my movie files into their respective resolutions (i.e. 720p, 1080p) However all I wanted to do was a simple substitution of variables because while the width tends to be standard, the height does not. So I wanted to do something like this for /F "tokens=*" %%a in ('dir /b /s Foreign') do ( D:\Desktop\MediaInfo_CLI_0.7.37_Windows_x64\mediainfo.exe --Inform=Video;%%Width%% "%%a" > 1.txt & for /f "tokens=*" %%j in ('type 1.txt') do (if %%j==1920 set res=1080p else if %%j==1280 set res=720p) & @echo "%%a" "%%~na [%res%]%%~xa" ) & del 1.txt However that doesn't work, anyone have any ideas as to why? It seemed rather straightforward to me and I did have a solution but then it disappeared on me, making me feel extra silly
  8. The script is is run from the MT4 Testing folder, I just either run it from the command line or a batch file but it is based in the MT4 Testing folder. The other folders are as above, they aren't "made up" they are what is there as I said. I use my desktop as a working folder. Windows 7 is the OS. A thought occured, if you are wondering about the D:\Desktop it is because I registry edited the desktop location to point there, I like to have as little on C: as humanly possible.
  9. For reference sake I found a workaround, the script will basically change the directory to where it found terminal.exe and extract the actual folder name to %b I just wrote a different script where I md %%a to a folder so I don't have to rename everything and it is done for me. Perhaps one too many steps but at least it is 'done'. Also I got the "extract current folder name" from one of Yzowl's old posts. Just wish I could get it to work based off a list of names taken from the directory names instead of this. for /F "tokens=*" %%a in ('dir /b /s "D:\Desktop\Forex\MT4 Testing\terminal.exe"') do (cd %%~dpa & FOR %%b IN (.) DO @echo "%%a" "55-'%%~nb'")
  10. I'm not a programmer of any sorts really, I write the odd thing up to automate some things I find repetitive and tedious so sometimes it is a struggle. I assumed nesting for loops is what needed to be done here, if you are saying that is instantly the wrong way to go about it then I don't really know how else to achieve it. I'm not sure why the 'current directory' is important. I don't use the full path in my script but can easily give it to you, recursing subfolders is a preference. dir /b /s D:\Desktop\MT4 Testing\New folder\terminal.exe dir /b /ad D:\Desktop\MT4 Testing\Profiles
  11. What i've pasted is the 'entirety' of the script. It isn't anything fancy, all it does is take a list of all the terminal.exe's found in a certain directory and then runs it using a list of paramaters scraped from folder names from another directory. I just need them to pair up ONLY once, not every permutation possible which is what it is currently doing. I have no problem with the making of the list, locating them or passing them to the variables. I am having trouble specifically with each variable iteration being paired up multiple times as I said in my previous post. If it helps in general the number of exe will always match the number of profiles. the profile scraping is passed to the terminal.exe as a paramater, that's all it does nothing else. All it does is tell terminal.exe to start up with a specific profile is all. I need however to run ALL terminal.exe's for testing purposes. I just need each FOR loop to iterate once before looping again according to the number of terminal.exe's, as that is how many times I need the for loop run
  12. Both the number of exe's and profiles vary, hence the need to make a list out of them. With the code I have it loads each exe by the number of profiles, so I end up with 10 instances of the same profile on each exe. terminal.exe1 profile1 terminal.exe1 profile2 terminal.exe1 profile3 terminal.exe1 profile4 terminal.exe2 profile1 terminal.exe2 profile2 terminal.exe2 profile3 terminal.exe2 profile4 That is not the behaviour I want, I need it to be this. terminal1.exe1 profile1 terminal1.exe2 profile2 terminal1.exe3 profile3 Does that help explain it?
  13. Quick query, I know exactly what I want to achieve and I feel like i'm only one step away from doing that. Essentially my code is trying to find all the terminal.exe and for each terminal.exe load and pass the variable %b only once. For example it should basically go if there is three terminal.exe's found and 10 directories found in the folder called 'profiles' \pa\terminal.exe "55-'pony1' \mo\terminal.exe "55-'turtle1' \ma\terminal.exe "55-'horse1' and then leave it at that. So far I have this for /F "tokens=*" %%a in ('dir /b /s terminal.exe') do (for /F "tokens=*" %%b in ('dir /ad /b profiles') do echo "%%a" "55-'%%b'") Which loads EACH terminal.exe 10 times with that parameter, and then goes on to open the next terminal.exe another 10 times. I assume I need to do something with delayedexpansion but I don't know in this instance.
  14. That makes BartPE work fine but DOS still doesn't see anything, is there any way to use the sata drivers in the windows xp/windows 7 sources to load for the DOS/BartPE so I don't have to fiddle with BIOS? I don't need NTFS read/write to be honest but if anyone could quickly show me the menu.lst entries required to achieve this then my super usb will be complete. or any extra files that I may need to find I've been looking through lots of posts/forums etc. but my brain be fried and it is just driving me bonkers
  15. I am super happy to admit stupidity here ladies and gentlemen, the tool works fine for loading the Windows XP and Windows 7 install, I can even get BartPE/DOS to boot. The problem is with BartPE/DOS I can't get any of the drives other than the ramdrive made and the usb stick to show, I am not really the sort to want to learn the entire documentation just to add a little functionality. I only need DOS for the odd firmware flash and the BartPE for the odd tool i.e. backup/file management if a drive got corrupted or whatever. I assumed that all drives would show by default but i've tried fiddling with a few commands, looked through some forums/google but the commands I add still don't let me see ALL my drives. I am obviously missing something REALLY simple here but I don't know what it is. The partition is NTFS, i've tried fat32. I load DOS as a loaded floppy image and BartPE just how it was installed with this tool. tl;dr How can I get BartPE/DOS to see all the drives on my computer?