Welcome, Guest. Please login or register.
Did you miss your activation email?
February 12, 2012, 03:25:27 AM

Login with username, password and session length
Search:     Advanced search
* Home Help Search Calendar Links Login Register
+  Machsupport Forum
|-+  Mach Discussion
| |-+  Mach SDK plugin questions and answers.
| | |-+  MachPluginWizard v1.1 BETA Release
Pages: 1 2 3 »   Go Down
Print
Author Topic: MachPluginWizard v1.1 BETA Release  (Read 6140 times)
0 Members and 1 Guest are viewing this topic.
j1sys
Active Member

Offline Offline

Posts: 16


View Profile
« on: March 01, 2009, 09:19:32 PM »

Greetings -

Tonight I am releasing a BETA version of my new MachPluginWizard (MPW).

This release only supports Win32 and .Net programming. It does not support ATL or MFC. I will add ATL and MFC support in the very near future.

I need to get this BETA release out into the field for testing. If you have some time to try it out and to start familiarizing yourself with this new development environment I would appreciate your help and comments.

MPW requires that you first install either Visual C++ 2008 Express Edition or Visual Studio C++ 2008 Standard (or above). Express Edition is available free of charge from www.microsoft.com/express/vc

I have attached the .msi for you to install.

I have uploaded a 12 minute tutorial on installing MPW and creating a quick plugin to: www.j1sys.com/MPWInstall.swf

I am working on another set of programming tutorials that take an in depth look at the source code generated by MPW. I just finished a trial run of the tutorial and my screen recording software failed to save it to disk. It ran out of memory. I will generate another version of the tutorial tomorrow morning. It will be broken into 15-20 minute segments. I will post a follow up with the urls.

I hope you enjoy testing MPW and can see it's power and ease of use in the install tutorial.

-Ed

Edward D. Bryson
Joshua 1 Systems Inc.
Knoxville TN USA

* MachPluginWizardSetup.msi (572.5 KB - downloaded 341 times.)
Logged
Chaoticone
South Carolina, US
Administrator
*
Offline Offline

Posts: 3,566


Precision Chaos



View Profile WWW
« Reply #1 on: March 01, 2009, 10:36:39 PM »

This is great Ed. I watched the video and like a kid at Christmas looking forward to the others.

I may have found a problem but it may well be on my end. I just got C++ A beginners guide and I think I'm on page 8. Here is what I saw in the build log.

.\Demo2.rc(10) : fatal error RC1015: cannot open include file 'afxres.h'.


Brett
Logged

Grin If you could see the things I have in my head, you would be laughing too. Grin
www.precisionchaos1.com
My guard dog is not what you need to worry about!
j1sys
Active Member

Offline Offline

Posts: 16


View Profile
« Reply #2 on: March 01, 2009, 10:52:40 PM »

Brett (and all) -

That is my ooops. I added the .rc file today to allow you to set your version information for your dll. I tested it on Express but it looked in my h files and found something that belonged to my Standard version. I usually do a final test in a virtual machine that ONLY has Express. But, in my haste, I skipped that final test.

Please delete/remove the .rc (Demo2.rc or whatever your plugin is named) after the wizard finishes generating your code. Then it should compile.

I will upload a fix tomorrow morning.

Thanx for testing. The programming tutorial was 1hr30min when it blew up. Broken into 20min sections it should take 5 sections.

One other note - everyone be sure to name your project WITHOUT any spaces in the name. I don't know if VS will allow it but I know it will break my code.

-Ed
Logged
Chaoticone
South Carolina, US
Administrator
*
Offline Offline

Posts: 3,566


Precision Chaos



View Profile WWW
« Reply #3 on: March 01, 2009, 10:59:16 PM »

Yes sir Mr. Bryson, that fixed it right up. That's great Ed. Hats off to you Ed.

Brett
Logged

Grin If you could see the things I have in my head, you would be laughing too. Grin
www.precisionchaos1.com
My guard dog is not what you need to worry about!
ART
Administrator
*
Offline Offline

Posts: 1,079


Tough as soggy paper.


View Profile
« Reply #4 on: March 01, 2009, 11:26:28 PM »

Hi Ed:

 Thx, Ill run this and give you some feedback..

Art
Logged
ART
Administrator
*
Offline Offline

Posts: 1,079


Tough as soggy paper.


View Profile
« Reply #5 on: March 02, 2009, 08:20:53 AM »

Ed:

 Amazing job. Youve really sussed out that I did in the interface. I see the changes you made to the structures to fix up the pointers, very well done.
The only one you didnt seem to be able to figure out was

//   DoDwell() - This is sent from Mach3 to the plugin to tell it a dwell time needs to be added or removed. Engine->DwellTime shoudl be set to the new dwell
//                               and the device should also handle the new dwell ( or cancellation of dwell ) as it needs to.
//
//---------------------------------------------------------------------
 

  Other than that you figured it all properly near as I can see. Very simple setup for a base plugin, though I dont use .net myself, I can see where
this makes it much simpler for a plugin author to make a plugin that works without needing to jump all the hoops, and with VS2008 to boot.

 Colour me impressed..

Art
Logged
j1sys
Active Member

Offline Offline

Posts: 16


View Profile
« Reply #6 on: March 02, 2009, 08:38:25 AM »

Thanx for your comments Art. I will fix the source to include the DoDwell() documentation in the next release.

I am working on the code tutorials (which you, of course don't need) this morning and will upload them soon.

All of the pointers to structures appear to work fine. I have some concerns about memory leaks if people are NOT careful with any LPCSTR pointers. I'm thinking mainly of Tickers[255]. I will work out a conservative set of recommended malloc/free procedures and document them later. Other than that I think it will all work. Most of the pointers could/should not be used and definitely NOT be modified by a plugin. But people will learn the hard way.

-Ed
Logged
ART
Administrator
*
Offline Offline

Posts: 1,079


Tough as soggy paper.


View Profile
« Reply #7 on: March 02, 2009, 10:53:10 AM »

Ed:

  Yup, the "hard way" is the only way the CStrings will work properly. Im impressed by the amount of work you put in on the structures, I know the pain. Most of the h files are not necessary ( as you found) except for advanced plugins that use the various sturctures which
normally are untouched unless myself or Brian need access to them, but even that is rare, so Im gratefull you plugged it down to the few that are absolutely necessary for normal op's.

  Shoudl I ever do it again it will be with a Request/Modify Structure block type of definitiion. Make it much easier. Im also surprised my workaround of the pointer to functions stayed and worked properly, but thats a good thing. I just couldnt figure a cleaner method of letting the calls work both directions so the plugin coudl call Mach functiosn as well as Mach calling plugin functions.

  All in all Id say its a nice plugin package, may be some really weird plugins out over time.

Thx
Art
Logged
j1sys
Active Member

Offline Offline

Posts: 16


View Profile
« Reply #8 on: March 02, 2009, 01:05:18 PM »

OK Family & Friends More Tutorials!!

If listening to my voice for 12 minutes in the install tutorial didn't put you to sleep, this set should do the trick.

I have uploaded the following files for your enjoyment  Roll Eyes :

www.j1sys.com/MPW_XYZTutor_1.swf     (17Meg, 19min)  Overview
www.j1sys.com/MPW_XYZTutor_2.swf     (13Meg, 29min)  MachDevice.h/MachDevice.cpp
www.j1sys.com/MPW_XYZTutor_3a.swf   (5Meg, 13min)    Plugin.h
www.j1sys.com/MPW_XYZTutor_3b.swf   (11Meg, 27min)  Plugin.cpp

These are preliminary first pass tutorials. They will be replaced in the future. I ran into some time/frame/memory constraints that I was unaware of with the screen recording software and its implementation of .SWF. Two of the files have slightly truncated video (#2, #3b). Luckily, I have actually finished showing all of the significant code and the video that was truncated is a simple scan of some unused code (in this sample plugin). The audo continues and you can view the files yourself on your computer. I will fix this in future tutorials.

There are still several more sections to be recorded and I will complete them ASAP and let you know.

-Ed
Logged
poppabear
S S SYSTEMS, LLC
Global Moderator
*
Offline Offline

Posts: 1,690


Briceville, TN, USA


View Profile WWW
« Reply #9 on: March 03, 2009, 08:01:30 AM »

Thank you for breaking up the size of those videos for people who have "Band Width" Natzis, type providers like Hughes Net.

scott
Logged

Commercial Mach3: Screens (regular and flash), Wizards, Plug-ins, Brains, PLCs, Macros, ATC's, machine build, retrofit and Prototyping
http://sites.google.com/site/volunteerfablab/
Pages: 1 2 3 »   Go Up
Print
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!