I was trying to import "DH Shell Core.pac" into my clean image with
the latest patches installed and I've got a message that ITEMIDLIST class already exists in the system. The message says that the class will be replaced and that bad things might happen if I proceed. Is anything I can do to solve the problem? Did I hit namespace limitations? Thank you |
"Sergei Gnezdov" <[hidden email]> wrote in message
news:[hidden email]... > I was trying to import "DH Shell Core.pac" into my clean image with > the latest patches installed and I've got a message that ITEMIDLIST > class already exists in the system. The message says that the class > will be replaced and that bad things might happen if I proceed. > I think you will probably be OK in this case, although you should work with a test image that you don't mind damaging. > Is anything I can do to solve the problem? Yes, first of all you need to get some idea of the clashing methods, and decide which to keep. Using Ian's Chunk Browser (www.iandb.org.uk), open the "DH Shell Core.pac". Configure the chunk browser to show only those chunks that represent changes (those with a red X against them). This should list all the ITEMIDLIST methods that are clashing. You can use Diff Browser to compare them to see the actual differences. From a brief look there seem to be only 2, and I think you should probably stick with the system definitions. Next note all existing methods in the class. Now proceed and load the package. Put the class back into its original package, 'Windows Shell'. Now make all the newly added methods loose in the 'DH Shell Core' package - the easiest way to do this is to drag open the package browser on 'DH Shell Core', switch to the loose methods tab, and then drag the methods from a class browser and dropping them over the loose methods pane. Now resave the 'DH Shell Core' package, and quit your image without saving it. On restart you can proceed and load the reshaped 'DH Shell Core' package which should no longer clash. >...Did I hit namespace > limitations? Not really. There is a single ITEMIDLIST structure, and there should only really be one class to represent it. At the time the package was written, Dolphin did not include this structure. Subsequently it was added creating the clash with the package. Of course a namespace system could have prevented this clash, but then you'd have to competing definitions where there should only be one. Regards Blair |
In reply to this post by Sergei Gnezdov
Hi Sergei,
The short answer is that it's ok to import the package, despite the warning message. The longer explanation is that OA added ITEMIDLIST (in Dolphin 5.1) - but since it's not used in the base system, then unless some other third party package is using it, which isn't likely based on what I've seen in the newsgroup, it should be ok to overwrite OA's version for now. Two possible solutions I can think of are: 1) OA use the DolphinHarbor implementation of ITEMIDLIST, or 2) Steve Waring and I put up a new version of the Shell packages which eliminates the conflict. Blair - any thoughts on #1? -- Louis |
"Louis Sumberg" <[hidden email]> wrote in message
news:br47tq$25r151$[hidden email]... > Hi Sergei, > > The short answer is that it's ok to import the package, despite the warning > message. > > The longer explanation is that OA added ITEMIDLIST (in Dolphin 5.1) - but > since it's not used in the base system, then unless some other third party > package is using it, which isn't likely based on what I've seen in the > newsgroup, it should be ok to overwrite OA's version for now. > > Two possible solutions I can think of are: > 1) OA use the DolphinHarbor implementation of ITEMIDLIST, or > 2) Steve Waring and I put up a new version of the Shell packages which > eliminates the conflict. > > Blair - any thoughts on #1? We can do that if that is alright with you. Regards Blair |
Hi Blair,
> > 1) OA use the DolphinHarbor implementation of ITEMIDLIST > We can do that if that is alright with you. That's great! Any questions, please let Steve or me know. Thank you. -- Louis |
Free forum by Nabble | Edit this page |