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!!!!!!!!!!!!!
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.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

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:


the clear button just clears the whole list then adds the first two lines again:

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
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
<p>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.</p>
<p>works for my win xp computer.</p>
<p>Hey,nice work. I was just wondering if you could make a tutorial on your &quot;MakeABatch.exe&quot; program. I DO have VB 2008 and I DO know how to code in both Batch(.bat) and Visual Basic(VB). </p><p>Thanks anyway.</p>
<p>Hey,nice work. I was just wondering if you could make a tutorial on your &quot;MakeABatch.exe&quot; program. I DO have VB 2008 and I DO know how to code in both Batch(.bat) and Visual Basic(VB). </p><p>Thanks anyway.</p>
Hello! <br>
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 &quot;The value of &quot;index&quot; cannot be &quot;-1&quot;&quot; and the (unhelpful) details button said:<br/><br/>See the end of this message for details on invoking <br/>just-in-time (JIT) debugging instead of this dialog box.<br/><br/>************** Exception Text **************<br/>System.ArgumentOutOfRangeException: InvalidArgument=Value of '-1' is not valid for 'index'.<br/>Parameter name: index<br/> at System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item)<br/> at MakeABatch.Start.ListBox1_MouseDoubleClick(Object sender, MouseEventArgs e)<br/> at System.Windows.Forms.Control.OnMouseDoubleClick(MouseEventArgs e)<br/> at System.Windows.Forms.ListBox.WndProc(Message&amp; m)<br/> at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&amp; m)<br/> at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message&amp; m)<br/> at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)<br/><br/>************** Loaded Assemblies **************<br/>mscorlib<br/> Assembly Version:<br/> Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll">file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll</a><br/><hr/>MakeABatch<br/> Assembly Version:<br/> Win32 Version:<br/> CodeBase: <a rel="nofollow" href="file:///C:/Documents%20and%20Settings/Bob/My%20Documents/Will%60s%20files/MakeABatch.exe">file:///C:/Documents%20and%20Settings/Bob/My%20Documents/Will%60s%20files/MakeABatch.exe</a><br/><hr/>Microsoft.VisualBasic<br/> Assembly Version:<br/> Win32 Version: 8.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/">file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.VisualBasic/</a><br/><hr/>System<br/> Assembly Version:<br/> Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/assembly/GAC_MSIL/System/">file:///C:/WINDOWS/assembly/GAC_MSIL/System/</a><br/><hr/>System.Windows.Forms<br/> Assembly Version:<br/> Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/">file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/</a><br/><hr/>System.Drawing<br/> Assembly Version:<br/> Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/">file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/</a><br/><hr/>System.Runtime.Remoting<br/> Assembly Version:<br/> Win32 Version: 2.0.50727.1433 (REDBITS.050727-1400)<br/> CodeBase: <a rel="nofollow" href="file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/">file:///C:/WINDOWS/assembly/GAC_MSIL/System.Runtime.Remoting/</a><br/><hr/><br/>************** JIT Debugging **************<br/>To enable just-in-time (JIT) debugging, the .config file for this<br/>application or computer (machine.config) must have the<br/>jitDebugging value set in the system.windows.forms section.<br/>The application must also be compiled with debugging<br/>enabled.<br/><br/>For example:<br/><br/>&lt;configuration&gt;<br/> &lt;system.windows.forms jitDebugging=&quot;true&quot; /&gt;<br/>&lt;/configuration&gt;<br/><br/>When JIT debugging is enabled, any unhandled exception<br/>will be sent to the JIT debugger registered on the computer<br/>rather than be handled by this dialog box.<br/>
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 =] <br/>
Um, what? C, C++, C# and VB.NET index their arrays from zero.<br>* VB.NET: heaven knows why... but see http://msdn.microsoft.com/en-us/library/2k7ayc03%28v=VS.80%29.aspx anyway.<br>* 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.<br>* C++ and C# desired backwards compatibility with C. See above.<br><br>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
:( i dont have vista. i only have xp. i love batch and things.
i think this will still work as long as you have the .NET framework .. and if you don't, a couple of comments down tells you where to get it :) please tell if you get it to work.
if it doesnt work for you, save the .tmp file, and just rename it to *whatever you want*.bat. it didnt work for me as an exe, but it worked as a tmp renamed to a bat <br />
got this to work in xp, cool Great work. I like it.
For those of you who cannot run this, you probably don't have .NET Framework installed. This is needed in order to run programs that were programmed in Visual Basic .NET<br/><br/>Download it here: <a rel="nofollow" href="http://www.microsoft.com/downloads/details.aspx?familyid=0856eacb-4362-4b0d-8edd-aab15c5e04f5&amp;displaylang=en">http://www.microsoft.com/downloads/details.aspx?familyid=0856eacb-4362-4b0d-8edd-aab15c5e04f5&amp;displaylang=en</a><br/>
Taking a <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> <em>long</em> time to download...<br/>
*sigh* That time was wasted...<br/>
Or not. But when I try to run MakeABatch.exe it just shows this error message "C:/windows/Microsoft.NET/Framework/v2.0.50727/mscorwks.dll could not be loaded". Help?
just a guess here but do you even have the windows folder on Wine?
OK then i guess my batch maker and the .NET framework just hate you Don't no why its not working soz
Wine will <em>not</em> take anything from <strong>Microsoft</strong>.<br/>
Not even IE. *sigh*
then you probably don't have WINe configured correctly (and why would you want IE when linux has far superior browsers to any MS browser)
It does have its own (crappy) version of IE! And I want Microsoft`s IE because of VBS. (It won`t even understand stand-alone VBS scripts!)
You are welcome.
You mean <em><strong>Your</strong></em> welcome, I`m right, right?<br/>
not You're welcome is the proper term or better yet is You are...
Oops, brain got stuck.
then get it un-stuck (im guessing by now its un-stuck(ed-ed?)
It was stuck, like, 19 days ago and 1 minute ago. Don`t you think that I would have unstuck before now? P.S. I was actually thinking of you`re but then my brain shortned it to your.
some people take time to get un-stuck...just checking...<sup>ps, you comprise of like 99% of the comments i receive, lol</sup><br/>
And I have 99 comments right now...
-_- seriously whats with the massive convo?
Very Good! But, I think that this tool is only useful to people who are new to batch programming (n00bs). It helps them learn about the different commands. But, professional batch programmers (Like me...) are better off just writing code blocks the old fashion way, that is, in notepad. It's easier and faster especially if you have memorized almost every command!
Flagged this as not nice for the n00bs part, :( Even though I`m experienced in batch, I`d never, <em>never</em> use that word in that way.<br/>

About This Instructable




More by iRule:Screen Lock (VB.NET) VBS Tutorial - Basics Batch Maker 
Add instructable to: