Re: What does embedding mean
- From: Helmut Giese <hgiese@xxxxxxxxxxxxx>
- Date: Sat, 09 May 2009 22:29:21 +0200
On Sat, 9 May 2009 12:25:51 -0700 (PDT), ZuLuuuuuu
<canol.gokel@xxxxxxxxx> wrote:
Hello,Hi,
I will probably start working on a graduation project which includes
showing information which comes from a device in a graphical user
interface. I was thinking about using C and GTK+ since my instructor
wants a program easily installable on Windows machines. We are
electronics engineerings so, you know, the people around me does not
know what interpreted languages etc. are. They want .exe files which
are easily installable and are working with just a double click.
I heard about embedding interpreted languages into C like languages so
that we can take advantage of the rapid development facilities of the
dynamic languages and their libraries. For example, being able to use
the canvas widget of Tk in my C application would be very helpful for
me.
I started reading the embedding part of Ousterhout's book. It explains
since this book was current, the Tcl geniuses developed a far superior
method, and as far as I can tell from your explanation above it should
apply to you: starpacks.
In a nut-shell:
- You develop your app as normal Tcl/Tk app.
- Once you're done you create a specific directory structure where you
put your sources plus any extensions you used.
- Then you wrap it all up thereby producing an .exe file which
contains everything needed.
Your users can then put this binary wherever they want and just run
it. Plus, there are 2 more advantages:
1) No Windows-nuisance involved (like admin rights).
2) This .exe contains 'in itself' a complete file system. I have used
this feature like this: When the program runs it checks whether
certain files exist in its own directory. If not, it assumes that it
is run for the first time and copies those files (think something like
help.html or whatever) from within its belly to the directory - so you
get some sort of 'installer like options' for free, too.
Look at the wiki for starkits for a start.
Oh, and if you need to write some parts of your app in C: Write those
parts as extension and call the functions from Tcl.
HTH
Helmut Giese
so far how to write such applications but I wonder about the
distribution side. How does a Windows application written in C and
embedded Tcl is distributed? Should I ask the target clients to
install Tcl and then my application? Or putting a tcl.dll or something
like that into my applications folder would be enough?
Asking for installation of additional software is not preferable for
me since it will look like an amateurish application in my
instructor's eyes and the clients will most probably be even more
amateurish than electronics engineers since the device is a medical
apparatus and medical doctors will use it. So the installation should
not be different than other desktop applications like Firefox, Winamp
etc.
I guess third party applications which convert from .tcl to .exe files
wouldn't work since I will write the application mostly in C and I'll
use probably other libraries?
.
- References:
- What does embedding mean
- From: ZuLuuuuuu
- What does embedding mean
- Prev by Date: Re: What does embedding mean
- Next by Date: winfo rootx vs. winfo x
- Previous by thread: Re: What does embedding mean
- Next by thread: Re: What does embedding mean
- Index(es):
Relevant Pages
|