x2 and DocuShare Namespace plugin

Chitchat about x² / 2X products

Moderators: fgagnon, nikos, Site Mods

User avatar
Jaykul
Member
Member
Posts: 31
Joined: 2003 Jul 02, 19:09

x2 and DocuShare Namespace plugin

Post by Jaykul »

This is a problem with the plugin for DocuShare (www.docushare.com) :?

I got a couple of assertion errors yesterday when I was browsing docushare through x2, but I "ignore"d them, and everything went on working. I closed stuff down, and went home. Today, I can't get xplorer2 to start up without crashing. (Well, I did get it to start up, but only by passing it a file path as a parameter so it would stop trying to open Docushare).

:arrow: Docushare is a business document repository program and Version Management system. It's generally perceived as a web server product, but they have an Explorer Namespace plugin which lets you browse to docushare folders and gives you great right-click support for editing file properties (everything has meta information like authoer and version, and they track version changes) as well as drag and drop.

(I changed these to avoid being accused of giving out corporate-secure data in the log below, but that shouldn't make any difference ... )
"LMNO" was the name of one of the Docushare roots
"network-server" was the windows server server-name

I get this dialog:
---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!

Program: C:\Program Files\Tools\x2alpha\xplorer2.exe
File: C:\Documents and Settings\umeca74\My Documents\cpp\kenny\helpers.cpp
Line: 150

Expression: lstrlenA(full) >= 3 && (full[0] == '\\' || full[1] == ':')

For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.

(Press Retry to debug the application)
---------------------------
Abort Retry Ignore
---------------------------


When I click IGNORE (which usually works) it blows up and does the "Please Tell Microsoft about this problem" thing.


2328: ------------------------------------------------------------------------
2328: 'C:\Program Files\Tools\x2alpha\xplorer2.exe' build 0.0.0.46 (Ansi) beginn
ing execution
2328: English translation
2328: Windows version: 5.1, build 2600
2328: Platform: VER_PLATFORM_WIN32_NT
2328: Info: Service Pack 1
2328: Shell32.dll version: 6.0.2800.1233
2328: COMCTL32.DLL version: 6.0.2800.1106
2328: COMDLG32.DLL version: 6.0.2800.1106
2328: SHDOCVW.DLL version: 6.0.2800.1203
2328: browseui.DLL version: 6.0.2800.1106
2328: zipfldr.dll version: 6.0.2800.1126
2328: Previewer capabilities: YES
2328: Build flags: WINVER=400, _WIN32_IE=500, _RICHEDIT_VER=100, _WIN32_WINNT=50
1, _WIN32_WINDOWS=0
2328: MB code page: 0(0), locale C
2328: ------------------------------------------------------------------------
2328: SYSTEM INFORMATION: page=4096, granularity=65536, CPUs=1
2328: Q235630 patch is OFF
2328: *** TID=0, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B30
309D}\C:\'
2328: Filesystem path = C:\
2328: Shell attributes: (0x70800000) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
2328: Assigned folder type: FITYPE_NORMAL [forced]
2328: Folder CLSID: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
2328: Typical FS folder clsid: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
2328: Grep IPC port is NEW
2328: Loaded richedit library RICHED20.DLL
2328: arg[0] = 'C:\Program Files\Tools\x2alpha\xplorer2.exe'
2328: List view 703ca created, sty=56000349, ex=4421, depth=16
2328: List view 503da created, sty=56100349, ex=4421, depth=16
2328: TREE::OnShowWindow(1, 0)
2328: [TREE]-SPY(00000001): Installed on ''
2328: ThreadID=b30: Adding frame 0x000603ee 'ATL:ExplorerFrame' [xplorer▓]
2328: >>> ThreadID=b30: Beginning execution
2328: Santa's little helper starting, ThreadID=af0
2328: *** TID=b30, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F}'
2328: Filesystem path = DocuShare
2328: Shell attributes: (0x70000000) FILESYSANCESTOR | FILESYSTEM |
2328: MINI-ASSERT: UPHIsFilesys on folder returns 0
2328: MINI-ASSERT: folder shouldn't have SFGAO_FILESYSTEM set (failed GetFileA
ttributes)
2328: Assigned folder type: FITYPE_NORMAL [deciphered]
2328: Folder CLSID: {A0483504-A25D-11D1-BDB2-000086139E6F}
2328: Enumerated 2 objects in the folder, code=1
2328: Delay-creating column handler...No suitable interface available!; Columns
= 0 (cached)
2328: UWM_VIEWDELAYSORT got rid of 0 redundant messages
2328: C:\Documents and Settings\umeca74\My Documents\cpp\kenny\helpers.cpp(150)
: Assertion failed: lstrlenA(full) >= 3 && (full[0] == '\\' || full[1] == ':')
2328: MIDI-ASSERT: Fullpath for 'LMNO' is not filesystem: 'LMNO'
2328: MINI-ASSERT: FindFirstFile on item failed dude! (LMNO)
2328: MINI-ASSERT: FindFirstFile on item failed dude! (LMNO)
2328: SPY(00000002): Installed on '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A
0483504-A25D-11D1-BDB2-000086139E6F}'
2328: *** TID=b30, Generating folder instance '::{208D2C60-3AEA-1069-A2D7-08002B
30309D}\network-server\Tools\MaGen2'
2328: Filesystem path = \\network-server\Tools\MaGen2
2328: Shell attributes: (0x7080017f) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
2328: Assigned folder type: FITYPE_FILESYSTEM [deciphered]
2328: Folder CLSID: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
2328: Enumerated 14 objects in the folder, code=1
2328: @@@ column 27 doesn't have a name
2328: @@@ column 28 doesn't have a name
2328: @@@ column 29 doesn't have a name
2328: Caching the column info of this shellfolder
2328: Delay-creating column handler...IShellFolder2; Columns = 35 (cached)
2328: UWM_VIEWDELAYSORT got rid of 0 redundant messages
2328: SPY(00000003): Installed on '::{208D2C60-3AEA-1069-A2D7-08002B30309D}\0801
-rmst-prod2\Tools\MaGen2'
2328: >>>>> TREE: expanding node...
2328: *** TID=b30, Generating folder instance ''
2328: Filesystem path = C:\Documents and Settings\JBennett\Desktop
2328: Shell attributes: (0x7080017f) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
2328: Assigned folder type: FITYPE_NORMAL [forced]
2328: Folder CLSID: {00021400-0000-0000-C000-000000000046}
2328: Enumerated 5 objects in the folder, code=1
2328: <<<<< TREE: node expanded (ok)
2328: >>>>> TREE: expanding node...
2328: *** TID=b30, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}'
2328: Filesystem path =
2328: Shell attributes: (0x30000000) FILESYSANCESTOR |
2328: Assigned folder type: FITYPE_NORMAL [forced]
2328: Folder CLSID: {20D04FE0-3AEA-1069-A2D8-08002B30309D}
2328: MINI-ASSERT: GetPidlType fails for: A:\
2328: MINI-ASSERT: GetPidlType fails for: D:\
2328: Enumerated 6 objects in the folder, code=1
2328: <<<<< TREE: node expanded (ok)
2328: MINI-ASSERT: CDing on a non-folder? -- hope it's an empty root!
2328: C:\Documents and Settings\umeca74\My Documents\cpp\kenny\helpers.cpp(150)
: Assertion failed: lstrlenA(full) >= 3 && (full[0] == '\\' || full[1] == ':')
2328: Second Chance Assertion Failed: File C:\Documents and Settings\umeca74\My
Documents\cpp\kenny\helpers.cpp, Line 150
--
::Jaykul
User avatar
nikos
Site Admin
Site Admin
Posts: 16341
Joined: 2002 Feb 07, 15:57
Location: UK

Post by nikos »

amateurs making namespace extensions as usual :)
why do they have to set the filesystem attribute when their tree is most obviously not so?

as things are you should be getting this error every time you try to get in there; i wonder how it worked the first day (did you add any new items in the meantime?)
User avatar
Jaykul
Member
Member
Posts: 31
Joined: 2003 Jul 02, 19:09

Post by Jaykul »

Well, I do get the assertion error each time ... but if I click Ignore, I'm usually able to use it without major problems (I mean, apart from the fact that the assertion pops up every time I navigate to a new virtual directory :P )
--
::Jaykul
User avatar
nikos
Site Admin
Site Admin
Posts: 16341
Joined: 2002 Feb 07, 15:57
Location: UK

Post by nikos »

try .x48, the assertion should be gone, but i don't know if you can manage the contents, since x2 gets the type wrong (i think)
User avatar
Jaykul
Member
Member
Posts: 31
Joined: 2003 Jul 02, 19:09

Post by Jaykul »

Cool, assertion's gone, and it basically works great, except of course the docushare special columns don't show up (I can live without that, no problem).

I got a crash once, but I can't duplicate it. Here's the debug spew: sorry it's so big, but I started it up, and then browsed into the Docushare repository (We'll call it "LMAO" for today :wink: ) and then into a subfolder (Test & Reliability Tools Development) before it bombed.
3264: ------------------------------------------------------------------------
3264: 'C:\Program Files\Tools\x2alpha\xplorer2.exe' build 0.0.0.48 (Ansi) beginn
ing execution
3264: English translation
3264: Windows version: 5.1, build 2600
3264: Platform: VER_PLATFORM_WIN32_NT
3264: Info: Service Pack 1
3264: Shell32.dll version: 6.0.2800.1233
3264: COMCTL32.DLL version: 6.0.2800.1106
3264: COMDLG32.DLL version: 6.0.2800.1106
3264: SHDOCVW.DLL version: 6.0.2800.1203
3264: browseui.DLL version: 6.0.2800.1106
3264: zipfldr.dll version: 6.0.2800.1126
3264: Previewer capabilities: YES
3264: Build flags: WINVER=400, _WIN32_IE=500, _RICHEDIT_VER=100, _WIN32_WINNT=50
1, _WIN32_WINDOWS=0
3264: MB code page: 0(0), locale C
3264: ------------------------------------------------------------------------
3264: SYSTEM INFORMATION: page=4096, granularity=65536, CPUs=1
3264: Q235630 patch is OFF
3264: *** TID=0, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B30
309D}\C:\'
3264: Filesystem path = C:\
3264: Shell attributes: (0x70800000) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
3264: Assigned folder type: FITYPE_NORMAL [forced]
3264: Folder CLSID: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
3264: Typical FS folder clsid: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
3264: Grep IPC port is NEW
3264: Loaded richedit library RICHED20.DLL
3264: Fanciable menus installed OK
3264: arg[0] = 'C:\Program Files\Tools\x2alpha\xplorer2.exe'
3264: List view 805e2 created, sty=56100349, ex=4421, depth=16
3264: List view 505aa created, sty=56100349, ex=4421, depth=16
3264: TREE::OnShowWindow(1, 0)
3264: [TREE]-SPY(00000001): Installed on ''
3264: ThreadID=7a8: Adding frame 0x000505e4 'ATL:ExplorerFrame' [xplorer¦]
3264: >>> ThreadID=7a8: Beginning execution
3264: Santa's little helper starting, ThreadID=d4c
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\C:\Shell\Scripting\RSSAggregator'
3264: Filesystem path = C:\Shell\Scripting\RSSAggregator
3264: Shell attributes: (0x7080017f) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
3264: Assigned folder type: FITYPE_FILESYSTEM [deciphered]
3264: Folder CLSID: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
3264: Enumerated 31 objects in the folder, code=1
3264: @@@ column 27 doesn't have a name
3264: @@@ column 28 doesn't have a name
3264: @@@ column 29 doesn't have a name
3264: Caching the column info of this shellfolder
3264: Delay-creating column handler...IShellFolder2; Columns = 35 (cached)
3264: UWM_VIEWDELAYSORT got rid of 0 redundant messages
3264: SPY(00000002): Installed on '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\C:\S
hell\Scripting\RSSAggregator'
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\C:\Documents and Settings\MyName'
3264: Filesystem path = C:\Documents and Settings\MyName
3264: Shell attributes: (0x7080017f) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
3264: Assigned folder type: FITYPE_FILESYSTEM [deciphered]
3264: Folder CLSID: {F3364BA0-65B9-11CE-A9BA-00AA004AE837}
3264: Enumerated 31 objects in the folder, code=1
3264: Delay-creating column handler...IShellFolder2; Columns = 35 (cached)
3264: UWM_VIEWDELAYSORT got rid of 0 redundant messages
3264: SPY(00000003): Installed on '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\C:\D
ocuments and Settings\MyName'
3264: >>>>> TREE: expanding node...
3264: *** TID=7a8, Generating folder instance ''
3264: Filesystem path = C:\Documents and Settings\MyName\Desktop
3264: Shell attributes: (0x7080017f) FILESYSANCESTOR | FILESYSTEM | STORAGEANCES
TOR |
3264: Assigned folder type: FITYPE_NORMAL [forced]
3264: Folder CLSID: {00021400-0000-0000-C000-000000000046}
3264: Enumerated 5 objects in the folder, code=1
3264: <<<<< TREE: node expanded (ok)
3264: >>>>> TREE: expanding node...
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}'
3264: Filesystem path =
3264: Shell attributes: (0x30000000) FILESYSANCESTOR |
3264: Assigned folder type: FITYPE_NORMAL [forced]
3264: Folder CLSID: {20D04FE0-3AEA-1069-A2D8-08002B30309D}
3264: MINI-ASSERT: GetPidlType fails for: A:\
3264: Enumerated 6 objects in the folder, code=1
3264: <<<<< TREE: node expanded (ok)
3264: Thread 7a8 pump: unrecognized message 275 ignored
3264: Thread 7a8 pump: unrecognized message 275 ignored
3264: Thread 7a8 pump: unrecognized message 275 ignored
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F}'
3264: Filesystem path = DocuShare
3264: Shell attributes: (0x70000000) FILESYSANCESTOR | FILESYSTEM |
3264: MINI-ASSERT: UPHIsFilesys on folder returns 0
3264: MINI-ASSERT: folder shouldn't have SFGAO_FILESYSTEM set (failed GetFileA
ttributes)
3264: Assigned folder type: FITYPE_NORMAL [deciphered]
3264: Folder CLSID: {A0483504-A25D-11D1-BDB2-000086139E6F}
3264: MINI-ASSERT: daft UPHGetRootPath(DocuShare)
3264: Enumerated 2 objects in the folder, code=1
3264: Delay-creating column handler...No suitable interface available!; Columns
= 0 (new)
3264: UWM_VIEWDELAYSORT got rid of 0 redundant messages
3264: SPY(00000004): Installed on '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A
0483504-A25D-11D1-BDB2-000086139E6F}'
3264: MIDI-ASSERT: Fullpath for 'LMAO' is not filesystem: 'LMAO'
3264: MINI-ASSERT: FindFirstFile on item failed dude! (LMAO)
3264: MINI-ASSERT: FindFirstFile on item failed dude! (LMAO)
3264: MINI-ASSERT: CDing on a non-folder? -- hope it's an empty root!
3264: MINI-ASSERT: daft UPHGetRootPath(DocuShare)
3264: MINI-ASSERT: FindFirstFile on item failed dude! (LMAO)
3264: MINI-ASSERT: FindFirstFile on item failed dude! (LMAO)
3264: SPY(00000001): Raw Event 0 = UPDATEDIR
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\C:\Documents and Settings\MyName <NUL
L>
3264: >>>>> TREE: expanding node...
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F}'
3264: Filesystem path = DocuShare
3264: Shell attributes: (0x70000000) FILESYSANCESTOR | FILESYSTEM |
3264: Assigned folder type: FITYPE_NORMAL [forced]
3264: Folder CLSID: {A0483504-A25D-11D1-BDB2-000086139E6F}
3264: Enumerated 2 objects in the folder, code=1
3264: <<<<< TREE: node expanded (ok)
3264: Thread 7a8 pump: unrecognized message 275 ignored
3264: *** TID=7a8, Generating folder instance '::{20D04FE0-3AEA-1069-A2D8-08002B
30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F}\LMAO'
3264: Filesystem path = LMAO
3264: Shell attributes: (0x71000000) FILESYSANCESTOR | FILESYSTEM |
3264: MINI-ASSERT: UPHIsFilesys on folder returns 0
3264: MINI-ASSERT: folder shouldn't have SFGAO_FILESYSTEM set (failed GetFileA
ttributes)
3264: Assigned folder type: FITYPE_NORMAL [deciphered]
3264: Folder CLSID: {A0483504-A25D-11D1-BDB2-000086139E6F}
3264: MINI-ASSERT: daft UPHGetRootPath(LMAO)
3264: SPY(00000004): Raw Event 1 = ATTRIBUTES
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F
}\LMAO <NULL>
3264: SPY(00000004): Raw Event 2 = ATTRIBUTES
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F
}\Test & Reliability Tools Development <NULL>
3264: SPY(00000004): Processing Disc Event = UPDATEITEM
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F
}\LMAO <NULL>
3264: MINI-ASSERT: update for nonexistent item; deleting
3264: VIEW_505aa: processing update notification for LMAO
3264: SPY(00000004): Raw Event 3 = ATTRIBUTES
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F
} <NULL>
3264: Enumerated 5 objects in the folder, code=1
3264: Delay-creating column handler...No suitable interface available!; Columns
= 0 (new)
3264: UWM_VIEWDELAYSORT got rid of 0 redundant messages
3264: SPY(00000005): Installed on '::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A
0483504-A25D-11D1-BDB2-000086139E6F}\LMAO'
3264: MIDI-ASSERT: Fullpath for 'Communities' is not filesystem: 'Communities'
3264: MINI-ASSERT: FindFirstFile on item failed dude! (Communities)
3264: MINI-ASSERT: FindFirstFile on item failed dude! (Communities)
3264: [TREE]-SPY(00000001): Processing Disc Event = UPDATEDIR
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\C:\Documents and Settings\MyName <NUL
L>
3264: Thread 7a8 pump: unrecognized message 275 ignored
3264: SPY(00000004): Processing Disc Event = UPDATEDIR
::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\::{A0483504-A25D-11D1-BDB2-000086139E6F
} <NULL>
3264: Enumerated(refresh) 2 objects in the folder, code=1
3264: MIDI-ASSERT: Fullpath for 'Test & Reliability Tools Development' is not fi
lesystem: 'Test & Reliability Tools Development'
3264: MINI-ASSERT: FindFirstFile on item failed dude! (Test & Reliability Tools
Development)
--
::Jaykul
User avatar
nikos
Site Admin
Site Admin
Posts: 16341
Joined: 2002 Feb 07, 15:57
Location: UK

Post by nikos »

this is a really sad sample of shell programming
not only they specify the attributes wrong, they also don't expose any of the "interfaces" that are meant for column processing. That's why x2 gives up. Perhaps you should drop this on these people's door and request improvements!
User avatar
Jaykul
Member
Member
Posts: 31
Joined: 2003 Jul 02, 19:09

Post by Jaykul »

Well, I'd be happy to do that ... although I'm not exactly sure what to tell them, except to send them to look at this thread. :wink:
--
::Jaykul
User avatar
nikos
Site Admin
Site Admin
Posts: 16341
Joined: 2002 Feb 07, 15:57
Location: UK

Post by nikos »

that would be a good start, as would be recommending them a couple of books on shell integration. :)

Basically they need to expose either IShellFolder2 or IShellDetails so that other programs can browse their namespace