gclib  370
Communications API for Galil controllers and PLCs
 All Data Structures Files Functions Variables Typedefs Macros Pages
windows.md
1 # Microsoft Windows {#windows}
2 
3 ##Tested versions
4 
5 See the \link installation \endlink page for supported versions.
6 
7 ##Installation
8 On Windows, gclib is distributed in the following formats.
9 * An executable installer which will install the library in the proper location to work with the included examples and documentation. PCI users can optionally install the PCI driver from within this installer.
10 * A zip file containing the same set of files as the executable but in a zip archive. PCI users can use the stand-alone PCI driver installer.
11  * A stand-alone PCI driver installer for PCI users (DMC-1806, 1800, 1802, 1417).
12 
13 \note The PCI driver is compatible with GalilTools but is enhanced for gclib communications.
14 
15 ### Download Installer
16 
17 **Recommended**. All instructions and examples depend on the installation paths.
18 
19 \htmlonly
20 <a href="http://www.galil.com/sw/pub/all/rn/gclib.html">
21  <img src="http://galil.com/sw/pub/all/doc/images/download.png" alt="Download" />
22  Download from the release notes page
23 </a>
24 \endhtmlonly
25 
26 ### Download Zip
27 For custom deployment or non-default file locations. Downloads are available on the <a href="http://www.galil.com/sw/pub/all/rn/gclib.html">release notes</a> page.
28 
29 
30 ###Required third-party DLLs
31 gclib is built using MSVC2013 and requires run-time components available in the Visual C++ Redistributable Packages for Visual Studio 2013.
32 Be sure to install the appropriate architecture (x86 or x64).
33 
34  * Installing <a href="http://galil.com/downloads/software/gdk">GDK</a> includes the x64 version.
35  * The x64 bit version can also be found <a href="http://download.microsoft.com/download/0/5/6/056dcda9-d667-4e27-8001-8a0c6971d6b1/vcredist_x64.exe">here</a>.
36  * The x86 bit version can be found <a href="http://download.microsoft.com/download/0/5/6/056DCDA9-D667-4E27-8001-8A0C6971D6B1/vcredist_x86.exe">here</a>.
37 
38 ###Silent Installation
39 For developers wishing to bundle gclib within their own installers, execute
40 the gclib installer with the /S switch to run silently with defaults.
41 If the Galil security certificate is not already trusted on the deployment
42 target, a digital signature dialog may be presented.
43 
44 ### Uninstall gclib
45 * Run `uninstall.exe` in "C:\Program Files (x86)\Galil\gclib"
46 
47 ##Installed Files
48 Installation from the executable installer looks like the following.
49 
50  C:\Program Files (x86)\Galil\gclib>tree /a
51  Folder PATH listing for volume OS
52  Volume serial number is AE3F-6836
53  C:.
54  +---dll
55  | +---x64
56  | \---x86
57  +---doc
58  | \---html
59  | \---search
60  +---examples
61  | +---cpp
62  | +---cs
63  | | \---2013_12.0
64  | | \---gclib_example
65  | | \---gclib_example
66  | | \---Properties
67  | +---gcc
68  | +---mingw
69  | +---msvc
70  | | \---2013_12.0
71  | | \---gclib_example
72  | | \---gclib_example
73  | \---vb
74  | \---2013_12.0
75  | \---gclib_example
76  | \---gclib_example
77  | \---My Project
78  +---include
79  +---lib
80  | \---dynamic
81  | +---x64
82  | \---x86
83  \---source
84  +---gclibo
85  \---wrappers
86  +---cs
87  +---gcl
88  \---vb
89 
90 
91 ### dll
92 The *dll* directory contains the binary *dynamic link libraries* (DLLs) for both x86 and x64 architectures. **Dynamically linked executables must have the correct dlls in their path at runtime**.
93 
94 ###doc
95 The *doc* directory contains this documentation and a printable, pdf version.
96 
97 ###examples
98 The *examples* directory contains example projects for various compilers. The *cpp* directory contains *x_examples.h* and the implementation of the example files documented in this manual.
99 
100 \warning
101 Before using the examples, copy the files to a user location such as *C:\\Users\\user\\Documents*. Failing to do so may cause source files to be deleted upon gclib uninstallation.
102 
103 ###include
104 The *include* directory contains header files needed for compiling code. The compiler will need to know where these files are at compile time.
105 See the compiler-specific directions for more information, e.g. <a href="md_mingw.html">gclib using MinGW</a>.
106 
107 ###lib
108 The *lib* directory contains linker files (*gclib.lib* and *gclibo.lib*) for both x86 and x64 architectures.
109 The linker should include *gclib.lib* and *gclibo.lib*.
110 
111 ###source
112 The *source* directory contains source files such as gclibo.c.
113 
114