Slobodan,
From my experience on the Problem #1, the bug is rather about key's unnamed or default values.
E.g., if you have in a .reg file being imported the following:
[HKEY_CLASSES_ROOT\lnkfile2\CLSID]
@="{00021401-0000-0000-C000-000000000046}"
Then XPe Reg Importer will create an empty value name (instead of ""). In other word, in the result SLD (or in TD Extra Registry)
you will get something like
Name="RegKey(819):"HKEY_CLASSES_ROOT\lnkfile2\CLSID""
instead of
Name="RegKey(819):"HKEY_CLASSES_ROOT\lnkfile2\CLSID","""
^^^^^^^^^^^^^
TD Build fixes this by setting up the "" string for empty reg.key name but it also throws the "Invalid registry data fixup"
warnings. But the warnings are not dangerous.
You can fix the warning either by creating a non-zero ComponentVSGUID for the broken registry entry, or just by setting the registry
value blank name (i.e. in "Edit Component Registry Resource" dialog, field "Value Name" type a letter then delete it and click "OK"
or "Apply" button).
--
Regards,
KM
Ah this refreshed my memory,
I was looking if I have reported this unwanted feature to MS. But I can't
find it in my outbox.
Nevertheless. You have two problems one reported by TD and one not reported
but serious.
Problem 1.
Named key values are not supported by default. I mean when you import them
go to Properties of each trouble regvalue/key then Advanced Properties.
Select ComponentVSGUID and press New. This will generate non zero
ComponentVSGUID. And is you do this for all troubled values your problem
will go away.
Problem 2. Empty spaces (You were not aware of this)
Offline Files is imported as OfflineFiles.
So as you can see you must revisit each registry entry to see if it is named
ok and if not change it manually.
This will solve your problems.
Regards,
Slobodan
Roberto Hofer said:
Hi Slobodan!
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\lnkfile2]
@="Shortcut"
"EditFlags"=dword:00000001
"NeverShowExt"=""
[HKEY_CLASSES_ROOT\lnkfile2\CLSID]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile2\shellex]
[HKEY_CLASSES_ROOT\lnkfile2\shellex\ContextMenuHandlers]
[HKEY_CLASSES_ROOT\lnkfile2\shellex\ContextMenuHandlers\Offline Files]
@="{750fdf0e-2a26-11d1-a3ea-080036587f03}"
[HKEY_CLASSES_ROOT\lnkfile2\shellex\ContextMenuHandlers\{00021401-0000-0000-
C000-000000000046}]
[HKEY_CLASSES_ROOT\lnkfile2\shellex\DropHandler]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile2\shellex\IconHandler]
@="{00021401-0000-0000-C000-000000000046}"
[HKEY_CLASSES_ROOT\lnkfile2\shellex\PropertySheetHandlers]
Just a short example. When I import the file above manually through
double clicking it, everything does fine. Just Target Designer has a
problem, when I import the .reg file into my component and build the
image. It isn´t that much of a problem to do it manually afterward,
but I do not understand the reason of this warning. Why am I not
allowed to define this reg data (or at least why does TD block it)?
Thanks in advance and best regards!
Roberto Hofer