locked
Tab not showing up RRS feed

  • Question

  • i'm at a loss for why my Hello World tab/setting isnt showing up. the steps i'm following are below :

     

    Create project using Brendan's WHS C# Template in VS 2008.

     

    Go into properties and change Assembly name to HomeServerConsoleTab.YourTabName

    YourTabName matches the generated namespace

    Microsoft.HomeServer.HomeServerConsoleTab.YourTabName

     

    This is hello world, so I just want to see the Tabs and Settings show up ... no other code is added.

     

    Optionally add an App.config for tab ordering?

     

    Open HomeServerConsoleTab.YourTabName.dll using Brendan's WhsTestLoader.exe to make sure everything is ok so far. It opens fine.

     

    Create Setup and Deployment project.

    Add primary output of YourTabName project.

    Make sure output Default Location is directed to Program Files\Windows Home Server

    Make sure .NET dependency is .NET 2.0

    Exclude HomeServerExt and *.SDK.Interop.v1.dll since they will already be there.

     

    Run Orca.exe on generated .msi file.

    Add WHSLogo = 1 Row to Property

     

    Copy *.msi to \\server\software\addins\

     

    Remote into Home Server and open console.

    Sure enough, the install shows up as available at Settings-AddIns.

    Click install, and it closes console.

    Re-open consle and it shows up as installed.

     

    The HomeServerControlTab.YourTabName.dll is at \Program Files\Windows Home Server\

     

    Problem is, my tab/settings is nowhere to be seen ... what am i missing?

     

    It uninstalls from the console fine too ... just doesnt show up.

     

    Thanks,

    casey

    Sunday, January 20, 2008 3:50 AM

Answers

  • thanks for pointing out the logs, i'd only been checking the event log. the log follows (my TabName is whsHelloWorld).

     

    could it be capitalization? the log below has (capital) WhsHelloWorld, although my namespaces and assembly are (lowercase) whsHelloWorld. searching my solution, it doesnt introduce capital WhsHelloWorld anywhere.

     

    EDIT : it was the caps. changed my namespace and assembly to WhsHelloWorld, and it shows up just fine. so somewhere the WHS framework is adding PascalCasing ... you've got to be kidding

     

    casey

     

    Created at 1/19/2008 10:08:27 PM
    ***** Started at 1/19/2008 10:08:27 PM ***
    ***** Started at 1/19/2008 10:08:27 PM ***
    [4]080119.220828.4101: Error: Client e3fc33d8-4f3e-4ea0-8908-56dd494c1b6c not found by BackupHelpers.FindClient
    [4]080119.220828.4101: Error: Client Microsoft.HomeServer.HomeServerConsoleTab.Health.ClientNotFoundException: e3fc33d8-4f3e-4ea0-8908-56dd494c1b6c
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClient(ConfigurationRoot configurator, Guid pcGuid)
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClientNoThrow(ConfigurationRoot configurator, Guid pcGuid) not found by BackupHelpers.FindClient
    [4]080119.220828.4257: Error: Client fc19e5c4-90a7-4a3e-a1e5-22d1dba2ffb6 not found by BackupHelpers.FindClient
    [4]080119.220828.4257: Error: Client Microsoft.HomeServer.HomeServerConsoleTab.Health.ClientNotFoundException: fc19e5c4-90a7-4a3e-a1e5-22d1dba2ffb6
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClient(ConfigurationRoot configurator, Guid pcGuid)
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClientNoThrow(ConfigurationRoot configurator, Guid pcGuid) not found by BackupHelpers.FindClient
    [5]080119.220828.6288: Error: Cannot invoke RefreshData for HealthControl
    [5]080119.220828.6288: Error: Cannot invoke RefreshData for HealthControl
    Music080119.220828.6757: Error: Backup percentage is -2147483648
    Music080119.220828.6757: Error: Cannot invoke RefreshData for HealthControl
    [1]080119.220829.2695: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPiTunes: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPiTunes.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3163: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPSU: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPSU.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPTZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPTZO.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPTZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPTZO.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPWebshare: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPWebshare.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    Music080119.220831.6757: Error: Backup percentage is -2147483648
    Music080119.220831.6757: Error: Cannot invoke RefreshData for HealthControl
    [1]080119.220831.9413: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.TZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.TZO.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9413: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.TZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.TZO.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9570: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.WhsHelloWorld: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.WhsHelloWorld.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9570: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.WhsHelloWorld: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.WhsHelloWorld.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [19]080119.220840.3632: Error: Backup percentage is -2147483648
    [19]080119.220840.3632: Error: Cannot invoke RefreshData for HealthControl
    Music080119.220901.6757: Error: Backup percentage is -2147483648
    Music080119.220901.6757: Error: Cannot invoke RefreshData for HealthControl
    [24]080119.221031.8007: Error: Backup percentage is -2147483648
    [24]080119.221031.8007: Error: Cannot invoke RefreshData for HealthControl

     

    Sunday, January 20, 2008 4:21 AM

All replies

  • Check the WHS log folder (on the server): C:\Documents and Settings\All Users\Application Data\Microsoft\Windows Home Server\logs

     

    Sort by date, and have a look at the latest HomeServerConsole.xxx.log file. What's the error being generated?

    Sunday, January 20, 2008 3:57 AM
    Moderator
  • thanks for pointing out the logs, i'd only been checking the event log. the log follows (my TabName is whsHelloWorld).

     

    could it be capitalization? the log below has (capital) WhsHelloWorld, although my namespaces and assembly are (lowercase) whsHelloWorld. searching my solution, it doesnt introduce capital WhsHelloWorld anywhere.

     

    EDIT : it was the caps. changed my namespace and assembly to WhsHelloWorld, and it shows up just fine. so somewhere the WHS framework is adding PascalCasing ... you've got to be kidding

     

    casey

     

    Created at 1/19/2008 10:08:27 PM
    ***** Started at 1/19/2008 10:08:27 PM ***
    ***** Started at 1/19/2008 10:08:27 PM ***
    [4]080119.220828.4101: Error: Client e3fc33d8-4f3e-4ea0-8908-56dd494c1b6c not found by BackupHelpers.FindClient
    [4]080119.220828.4101: Error: Client Microsoft.HomeServer.HomeServerConsoleTab.Health.ClientNotFoundException: e3fc33d8-4f3e-4ea0-8908-56dd494c1b6c
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClient(ConfigurationRoot configurator, Guid pcGuid)
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClientNoThrow(ConfigurationRoot configurator, Guid pcGuid) not found by BackupHelpers.FindClient
    [4]080119.220828.4257: Error: Client fc19e5c4-90a7-4a3e-a1e5-22d1dba2ffb6 not found by BackupHelpers.FindClient
    [4]080119.220828.4257: Error: Client Microsoft.HomeServer.HomeServerConsoleTab.Health.ClientNotFoundException: fc19e5c4-90a7-4a3e-a1e5-22d1dba2ffb6
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClient(ConfigurationRoot configurator, Guid pcGuid)
       at Microsoft.HomeServer.HomeServerConsoleTab.Health.BackupHelpers.FindClientNoThrow(ConfigurationRoot configurator, Guid pcGuid) not found by BackupHelpers.FindClient
    [5]080119.220828.6288: Error: Cannot invoke RefreshData for HealthControl
    [5]080119.220828.6288: Error: Cannot invoke RefreshData for HealthControl
    Music080119.220828.6757: Error: Backup percentage is -2147483648
    Music080119.220828.6757: Error: Cannot invoke RefreshData for HealthControl
    [1]080119.220829.2695: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPiTunes: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPiTunes.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3163: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPSU: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPSU.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPTZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPTZO.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPTZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPTZO.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220829.3945: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.HPWebshare: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.HPWebshare.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    Music080119.220831.6757: Error: Backup percentage is -2147483648
    Music080119.220831.6757: Error: Cannot invoke RefreshData for HealthControl
    [1]080119.220831.9413: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.TZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.TZO.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9413: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.TZO: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.TZO.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9570: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.WhsHelloWorld: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.WhsHelloWorld.HomeServerTabExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [1]080119.220831.9570: Init: Error: Could not find appropriate HomeServerTabExtender in HomeServerConsoleTab.WhsHelloWorld: exception System.TypeLoadException: GetType failure for Microsoft.HomeServer.HomeServerConsoleTab.WhsHelloWorld.HomeServerSettingsExtender
       at Microsoft.HomeServer.Controls.TabFinder.GetExtender(Assembly a, String typeName, String prefixedDllName, Int32 width, Int32 height, IConsoleServices consoleServices)
       at Microsoft.HomeServer.Controls.TabFinder.FindTabs(Int32 tabWidth, Int32 tabHeight, Int32 settingsWidth, Int32 settingsHeight)
    [19]080119.220840.3632: Error: Backup percentage is -2147483648
    [19]080119.220840.3632: Error: Cannot invoke RefreshData for HealthControl
    Music080119.220901.6757: Error: Backup percentage is -2147483648
    Music080119.220901.6757: Error: Cannot invoke RefreshData for HealthControl
    [24]080119.221031.8007: Error: Backup percentage is -2147483648
    [24]080119.221031.8007: Error: Cannot invoke RefreshData for HealthControl

     

    Sunday, January 20, 2008 4:21 AM
  • Glad to see you got it. Those logs are gold.

     

    Sunday, January 20, 2008 4:54 AM
    Moderator
  • As much as I hate to break out Reflector with WHS... there it is, burried away in TabFinder.FindTabs() is the following line which is doing this to you:

     

    Code Block
    string str3 = str2.Substring(0, 1).ToUpper() + str2.Substring(1);

     

     

    Looks like I'll need to add that check to Test Loader as well.


    Feel free though to submit this as a bug (given this requirement does not seem to be documented over on the SDK documentation) over on Connect and post the link back here.

    Sunday, January 20, 2008 5:50 AM
    Moderator