Batch Maker

5.9K1379

Intro: Batch Maker

UPDATE V2.0 NOW OUT!!! DOWNLOAD BELOW

This is a project i have been working on for a little wile..
it is made with vb.net 2008 and it makes making a batch simple for the newbies...

!!!!!!!!PLEASE NOTE!!!!!!!!!!!!!
THIS WILL ONLY WORK ON VISTA
it's because i made this on Vista now when i try it on an XP machine it comes up with an error message.. sorry people.

I have to thank TATcreator because even know he doesn't know it he gave me the idea to make this .. lol.

Make sure you look at the First step 'installation' before downloading!!!!

I really hope you like it..
and if you find any problems with it please leave a comment or pm me so i can fix them and repost it...

please comment on what you think to and don't forget to rate it =)

STEP 1: Installation

To install follow the steps and pics closely!!!
1) Follow pic 1 if you just get a page with alot of text when you click on the link

2)Click save

3) Make sure you get all the red bits right!!!
Save as .exe And Make sure you save as 'All Files' or it will not work!!!!!

STEP 2: How It Works: Part1

The ComboBox
As i said i made it with vb 2008 so there is no batch scripting.
To make it all i really had to do was:

if 'write' is selected in combobox
change label2 to 'Write a message - Do not add the echo!'
show textbox1
change textbox1 text to 'What do you want it to say?'
Which turns out as:
If ComboBox1.SelectedItem = ("Write") Then
Label2.Text = ("Write a message - Do not add the echo!")
TextBox1.Show()
TextBox1.Text = ("What do you want it to say?")
End If
I had to keep doing this for every item on the combobox.

STEP 3: How It Works: Part2

The Buttons
The buttons were one of the hardest things to do,

The Add Button
For the add button to work I had to do a lot of coding but once I had done that the rest was fairly simple...
Part of the add code:
if 'Write' is Selected in combo box then
add 'echo ' + contents of textbox1
end
Which turnes out as:
If ComboBox1.SelectedItem = ("Write") Then
ListBox1.Items.Add("echo " + TextBox1.Text)
End If
it was mostly the same for most of them, as shown in the pic.
The remove button is just:
Remove selected item from list
which is:
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
the clear button just clears the whole list then adds the first two lines again:
ListBox1.Items.Clear()
ListBox1.Items.Add("::Made With iRule Batch Maker")
ListBox1.Items.Add("@echo off")
and the move up and down code just move selected item up or down:
(code to long to put up)

STEP 4: How It Works: Part3

The Save/Load
The Save and Load were probably the hardest part,
This is just the save code:
Dim sfdMain As New SaveFileDialog
sfdMain.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
Dim Result As DialogResult
sfdMain.Filter = "Batch Files (*.bat)|*.bat| CMD Files(*.cmd)|*.cmd"
sfdMain.FilterIndex = 1
sfdMain.ValidateNames = True
Result = sfdMain.ShowDialog
If Result = Windows.Forms.DialogResult.OK Then
Dim sw As New System.IO.StreamWriter(sfdMain.FileName)
For i As Integer = 0 To ListBox1.Items.Count - 1
sw.WriteLine(ListBox1.Items.Item(i))
Next
sw.Close()
sw.Dispose()
Else
Exit Sub
End If
if you understand vb you will know what that does but if you don't:
basically, all it does is show the save dialog, and it saves all the contents of the list into a batch file or cmd file

78 Comments

i know this is a bit late, but I think the reason why it would not work on older systems, is because there is no current .NET framework installed.

works for my win xp computer.

Hey,nice work. I was just wondering if you could make a tutorial on your "MakeABatch.exe" program. I DO have VB 2008 and I DO know how to code in both Batch(.bat) and Visual Basic(VB).

Thanks anyway.

Hey,nice work. I was just wondering if you could make a tutorial on your "MakeABatch.exe" program. I DO have VB 2008 and I DO know how to code in both Batch(.bat) and Visual Basic(VB).

Thanks anyway.

got it, im using chrome and xp just download it and rename it to what you want.exe
chrome...doesnt work for dl.....i suggest a dropbox link...
When I click on the X when I accidentally poped up the Edit Command popup it said "The value of "index" cannot be "-1"" and the (unhelpful) details button said:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: InvalidArgument=Value of '-1' is not valid for 'index'.
Parameter name: index
at System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item)
at MakeABatch.Start.ListBox1_MouseDoubleClick(Object sender, MouseEventArgs e)
at System.Windows.Forms.Control.OnMouseDoubleClick(MouseEventArgs e)
at System.Windows.Forms.ListBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
MakeABatch
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Documents%20and%20Settings/Bob/My%20Documents/Will%60s%20files/MakeABatch.exe
Microsoft.VisualBasic
Assembly Version: 8.0.0.0
Win32 Version: 8.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
System.Runtime.Remoting
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/2.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
invlaid move menu was trying to set menu item at -1 when lowest is 0
Heh, the lowest value for a array`s data in C++ (and maybe C) is 1, very confusing for beginners.
i used vb.net but it still could be 1 =/ ... ether way it was trying to set to low =]
Um, what? C, C++, C# and VB.NET index their arrays from zero.
* VB.NET: heaven knows why... but see http://msdn.microsoft.com/en-us/library/2k7ayc03%28v=VS.80%29.aspx anyway.
* In C, it was pointer-array equivalence. In C, array[index] == *(array + index). So the first element had to be element 0 or you lost space equal to the size of the type held by the array, and back in 1972 that was a Bad Thing.
* C++ and C# desired backwards compatibility with C. See above.

On the other hand, several languages index from 1, and one (I think) indexed from a programmer-specified positive integer. Either way, accessing negatively-indexed array items is Not A Good Idea.
Sorry. I was dumb back then.
Ignore the links.
Executable excellence! I'm a bit past the stage where I need this, but it's quite a good program. In fact, you've inspired me to create Script Maker, an application which allows you to create [in this manner] batch files and VBScripts [with WScript or CScript]. I might even include JavaScript in version 2.0.
glad i could be an inspiration.. and id like to see an end product.. it will be far better than mine lol -iRule
Script Maker was getting too complicated, so I scrapped it and moved on to something a bit easier - C. (That's the programming language.) I figure I could have the program read subroutines out of the libraries.
i have come in contact with C# a few times but over all whenever i use that kinda scripting i use VB.NET, so would be interesting to see how you did, either way good luck with it!
You could simplify that code immensely by using Select Case instead of all those Ifs.
It works also on windows XP you only need to download the newest version of microsoft .net
More Comments