Frequently Asked Questions
Expand/Collapse
What is
the JVCL?

The JVCL is a library of
more than 500 visual and non-visual components for Delphi,
C++Builder and Kylix. The components have been donated by
developers from all around the world and can be used in commercial
as well as shareware and freeware and open source projects without
cost.
Where
can I get it?

You can always download
the latest release of JVCL from the JVCL homepage at
http://jvcl.delphi-jedi.org.
You can also get the JVCL from GIT or from the daily zips. See the
download page on the
JVCL
website for more information.
How is
the JVCL licensed?

The JVCL is licensed
under the
Mozilla
Public License (MPL 1.1) license.
In short, the MPL allows you to use the JVCL components in
commercial, shareware, freeware and open source projects as long
as you give due credit to the JVCL in your application (including
a notice in your About Box is a good idea).
If you extend, derive from or modify any unit in the JVCL, you are
obliged to make the source of the modifications available to your
customers. You are also encouraged to donate any modifications
back to the JVCL community.
To learn more about the MPL, see the License FAQ on the
JVCL website.
How can
I contribute?

There are several ways
you can contribute to the development of JVCL. Among other things,
you can write new or extend existing components, write help, fix
bugs or write demos.
If you are a writer, you could write articles about the JVCL or
about specific components in the JVCL. If you speak a foreign
language (foreign to english speaking people, that is), you could
help translate the JVCL to other languages.
For more information , see the JVCL webpage on contributing (
http://jvcl.delphi-jedi.org).
Required
Package 'Inet' Not Found
From Julien Ferraro:
It's probably because you didn't choose to install the Internet
components. Just launch your Delphi setup and select "Internet
components" (or whatever the name is) and you should be OK.
In D7,
when I press F1, I am not getting JVCL help information

Go to Help/Customize,
delete the JCL.cnt and JVCL.cnt references, add them again, and
save the project.
When I
try to compile my apps, I get an error message "line is too long
(>1023 chars)"
I'm
getting an error ("Cannot load package JvNet. It contains zlib.pas
which is also in package YYYY") when I try to install the JvNet
package.

Open the JvNet run-time
package and add the other run-time package ("YYYY") to it's
requires node. Try to install again.
"The
procedure entry point SHGetSpecialFolderPathA could not be located
in XXX".

You probably have an
older Internet Explorer installed. Install the latest IE release.
You might also want to try to update your ComCtl32.dll.
Since Microsoft keep moving their pages around, we cannot give you
a reliable link. Instead, go to
Microsoft's website and
search for 50comupd.exe.
How do
I dock a form at design-time with the JvDocking components?

You can't dock the forms
at design-time. You will have to do it programmatically.
How do
I change the docking style at runtime?

You can't change it at
runtime, only at design-time. We are working on resolving this
issue.
Cannot
load JvMM. It contains VFW.pas which is also contained in GLSCENE.

Resolve it by either
adding the GLSCENE package to the requires of JVMM
or add JvMM to the requires of GLSCENE. Rebuild the packages.
Unit
zlib/zlibconst implicitly imported into JvCrypt

This message is nothing
to worry about unless you have other packages also including zlib.
In that case, you
might get an error saying something like: "Unable to load JvCrypt.
It contains unit zlib which is also included in package XXXX".
The error message is not entirely correct but nevertheless you
cannot install two packages that includes (explicitly or
implicitly) the same units.
To resolve, you have to add the other package's dcp file to the
requires node of JvCrypt and rebuild JvCrypt.
In some cases, this doesn't help either because the other package
is using a non-standard zlib unit (JvCrypt requires the standard
zlib/zlibconst.pas
available on the Delphi CD). To resolve this issue, you can copy
the Borland zlib and zlibconst unis from the Delphi CD to your
computer and rename them
(you will also need the obj files in the same folder). Open
JvZLibMultiple.pas and change the uses clause to reflect the name
of the renamed Borland zlib unit).
If all else fails, remove JvZLibMultiple.pas from the JvCrypt
runtime package and the JvZLibMultiple registration and uses from
jvcl\design\JvCryptReg.pas
and rebuild the packages (runtime as well as design-time).
Why
doesn't JvDotNetFilenameEdit and JvDotNetDirectoryEdit have a
palette icon?

If the package
containing JvFilenameEdit and JvDirectoryEdit is installed after
the JvDotNet package, the icons won't be shown on the palette.
Fix:
- In Delphi, go to Component - Install Packages
- Select the Jv DotNet package in the list
- Toggle the checkbox off and then on again
- Close the dialog
After
installing JVCL, my palette icons are corrupted.

This error can be caused
by faulty video drivers or an old version of the common controls
library.
Fix:
- Get the latest Internet Explorer release from Microsoft. It
will update the ComCtrl library as well.
- If that doesn't help, try to find updated video drivers for
your graphics card.
- If it still doesn't help, try lowering the video
acceleration (you do this from Control
Panel-Desktop-Settings-Advanced)
Will
JVCL continue to support and develop RXLib?

Yes, we will continue to
support and develop RXLib but within the constraints of JVCL. This
means that RXLib components can be merged, replaced, archived and
renamed at any time as we see fit (indeed, this has already
happened to a few of the original RXLib components).
JVCL will try to preserve backward compatibility, taking into
account the cost for JVCL (maintenance, stopping of future
development, not being able to fix bugs etc). If we think it is
better for the JVCL as a whole to make changes that break backward
compatibility, we will do the changes.
This standpoint is not RXLib specific. We reserve the right to do
the same with any library or component donated to JVCL.
C++
Builder: Why isn't anything updated when I use the '<<' or
'>>' operator on a Set property (Font.Style,
JvWizard.EnabledButtons...)

This is a BUG in C++
Builder related to the way the '<<' and '>>' operators
work, as reported in Quality Central under bug #9359. For
instance, if you want to add "fsBold" to the Font style, the
following code is not reliable.
Font->Style << fsBold;
Use that one instead:
Font->Style = TFontStyles(Font->Style) <<
fsBold;
This is the only way you can be sure that the internal value will
be set AND the property setter, if any, will be called.