Multiple entrys in STK menu

Hi
I want my program to have more the one choice in the menu provided with the sim.toolkit.ToolkitRegistry.initMenuEntry.
This is how I do it when it works, I only show you the constructor:
  public Controller() {
    // Get the GSM application reference
    gsmFile = SIMSystem.getTheSIMView();
    // Get the reference of the applet ToolkitRegistry object
    reg = ToolkitRegistry.getEntry();
   menuId = reg.initMenuEntry(menu, (short) 0, (short) menu.length,
                               sim.toolkit.ToolkitConstants.PRO_CMD_SELECT_ITEM,
                               false, (byte) 0, (short) 0);
  }But when I want two entrys, like this:
  public Controller() {
    // Get the GSM application reference
    gsmFile = SIMSystem.getTheSIMView();
    // Get the reference of the applet ToolkitRegistry object
    reg = ToolkitRegistry.getEntry();
   menuId = reg.initMenuEntry(menu, (short) 0, (short) menu.length,
                               sim.toolkit.ToolkitConstants.PRO_CMD_SELECT_ITEM,
                               false, (byte) 0, (short) 0);
   menuId2 = reg.initMenuEntry(menu2, (short) 0, (short) menu2.length,
                               sim.toolkit.ToolkitConstants.PRO_CMD_SELECT_ITEM,
                               false, (byte) 0, (short) 0);
  }I retrueve this exceton in the startup of the applet when using my simulation tool:
- The applet "Install" method has generated an exception: "sim.toolkit.ToolkitException"I will also give you the initiation code for variables menu and menu2:
  private byte menu[] =  {(byte)'F', (byte)'o, (byte)'o',
      (byte)' ', (byte)' ', (byte)' ', (byte)' '};
  private byte menu2[] =  {(byte)'B', (byte)'a', (byte)'r',
      (byte)' ', (byte)' ', (byte)' ', (byte)' '};What is it that I'm doing wrong?

In the GP install command, did you specify two menu items in the application specific parameters? Do you have a trace of the installation command that failed?

Similar Messages

  • CFMCPopupMenu is shown multiple times if the menu key (VK_APPS) is pressed multiple times

    Hello,
    I have a problem with the CFMCPopupMenu in a Visual Studio Professional 2013 Update 4 created MFC DLL (Regular DLL using shared MFC DLL) and in a dialog based MFC application (others I didn't test - maybe in an SDI application too).
    If the menu key (VK_APPS) is pressed multiple times, the context menu is created and shown multiple times. 
    When pressing the Alt (VK_MENU) key or clicking with the mouse buttons the menu is not shown multiple times. 
    It seems to be bug in CDialogImpl::PreTranslateMessage case WM_CONTEXTMENU where it is tested if a popup menu is already shown 
    and if there is an active popup menu this popup menu is closed, but only if the pMsg->wParam == VK_MENU.
    The problem occurs in a dialog based MFC application and in dialog's in regular DLL's. 
    In case of MFC MDI applications the problem does not occur, 
    because in the CFrameImpl::ProcessKeyboard the key is passed to the popup menu for processing pActivePopupMenu->SendMessage(WM_KEYDOWN, nKey); and eaten up.
    You can reproduce the problem in the following way:
    1. Create a dialog based MFC application with the Visual Studio 2013 wizard.
    2. Add a menu IDR_MENU1 to the resource.
    3. Add a ON_WM_CONTEXTMENU / OnContextMenu message handler to the dialog.
    4. Insert the following code into the OnContextMenu handler of the dialog:
      _ASSERT(!CMFCPopupMenu::GetSafeActivePopupMenu());
      CMenu m;
      m.LoadMenu(IDR_MENU1);
      CMFCPopupMenu* pPopupMenu = new CMFCPopupMenu;
      pPopupMenu->SetAutoDestroy(FALSE);
      VERIFY(pPopupMenu->Create(this, 100, 100, m.GetSafeHmenu(), TRUE, TRUE));
    5. Compile and start the application and press the Menu Key (VK_APPS) multiple times.
    -> You run into the ASSERT.
    If you press the Alt-Key or left click with the mouse multiple times all is fine.
    You can also add a tracepoint in the constructor and destructor to see that the CMFCPopup menu is created multiple times if the Menu-Key is pressed.
    Kind regards,
    Andreas.
    Andreas

    Hi Andreas,
    Thanks for posting in MSDN forum.
    Yes, I can reproduce this issue on my side. After look into the afxdialogimpl.cpp and afxframeimpl.cpp file, It really is a issue in the dialog message translate. I have no workaround to avoid this. But maybe we can try to use
    CMenu class and handle WM_RBUTTONDOWN message instead of WM_CONTEXTMENU.
    void CMFCPopupMenuTestDlg::OnRButtonDown(UINT nFlags, CPoint point)
    // TODO: Add your message handler code here and/or call default
    CMenu menu;
    VERIFY(menu.LoadMenu(IDR_MENU1)); //IDR_MENU_POPUP是新建菜单ID
    CMenu* popup=menu.GetSubMenu(0);
    ClientToScreen(&point);
    popup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y, this );
    CDialogEx::OnRButtonDown(nFlags, point);
    By using this, we can avoid the VK_APP message caused multi pop up menu.
    Also have you tried submit this issue to Microsoft connect?
    https://connect.microsoft.com/VisualStudio
    Best regards,
    Shu Hu
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • ICal multiple entrys

    I have tried everything and can't get rid of multiple entrys of the same thing. Like for day shift I have 3 or four of the the same.

    same problem. From a monthly calendar display, at top left go to "Calendars". For me, I have two calendars displayed: "From my Mac" and "Mobile Me". I was displaying "All calendars" at the very top of the calendars screen, so the from my mac and mobile me ones were both displayed, even though for me they are actually identical. When I chose "All my-mobile-me-address", the duplication went away.
    Now I want to know if I can get the "From my Mac" calendar off my phone entirely and just sync the mobile me one.

  • Multiple entries in context menu

    Hi,
    when right click on a file to open with a programm, the context menu shows multiple entries for some apps. My question is now how to put away multiple entries?
    Best regards,
    Thomas

    If you are speaking of the "open with" list having multiple application entries, if could be caused by a couple of things.
    1) The entries could not actually be "duplicates", but essentiially are to you, as you only want one. If you have or have had more than one version of an application, the menu will list all versions of that app that are/were ever detected.
    2) The list could be populated with duplicates that the system detected when either networking with another Mac, or accessing a cloned drive of your system. If this is the case, you need to rebuild the database that is serving up these duplicates.
    Resetting the 'Open With' Menu
    Resetting the 'Open With' menu will remove duplicates and ghost applications (ones you have deleted) from the list. You reset the 'Open With' menu by rebuilding the Launch Services database your Mac maintains. There are multiple ways to rebuild the Launch Services database, including third-party system utilities like Cocktail and Onxy.
    If you don't own a system utility that can rebuild the Launch Services database, don't worry; you can perform the rebuild yourself using Terminal.
    Using Terminal to Rebuild the Launch Services Database
    Launch Terminal, located at /Applications/ Utilities/.
    For OS X 10.5.x and later, enter the following at the Terminal prompt, and press enter:
    /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.fram ework/Support/lsregister -kill -r -domain local -domain system -domain user

  • ITunes 8.0: Unable to Edit Multiple Songs / Loss of Menu Bar Function

    I upgraded to iTunes 8.0 today but am now unable to use any of the top menu functions, as I click on them and no choices pop down from each of the File, Edit, View, etc.
    Also, when I go to update the information on multiple files, the information editing screen appears quite scrambled and doesn't allow any changes to be made.
    Is anyone else having these types of issues?

    I'm having the same menu bar problem in iTunes 8.
    Also I've noticed there doesn't seem to be a way to view all of the songs contained in my library, like I used to be able to in previous versions. (The fact that I can't access the preferences menu item – because there is none –doesn't help.) Workaround for now: smart playlist. But I really don't think I should have to resort to that.
    And sans menus, I can't turn my visualizer on either.

  • Multiple entrys in video list

    Hi
    I ripped some South Park DVDs. And I added metadata with Lostify. For some reason in iTunes I have to shows one is called "South Park" and one is called "South Park " with a blank at the end of the name.
    But when I copy the stuff onto my iPod, I have under TV Shows maybe 10 fields called "South Park" and when I go into the submenus I have the same episodes/sessions in them (from "South Park" and "South Park ") ??
    Has someone similar problems ??
    regards Harald

    Best way to cure this is to go into iTunes, highlight that artist and/or songs, right click on them and select "get info". 

This brings up the multiple song info window. In the artist or song box retype the name, as you would like it, and then click ok. Do this even if no mistakes are immediately visible.

  • How to remove multiple Unarchivers from Context menu

    Hi,
    I am running Mountain Lion on a late 2011 MBP. Every time I upgrade Unarchiver, it creates a new line item in the context menu. How can I get rid of all but the latest one and how can I prevent this from happening? This seems to be a problem with Unarchiver only, the other Apps don't have this issue. Screenshot attached for reference.
    Thanks in advance for your time.
    Abhijit

    That's LaunchServices. These are only cache files but can get corrupted. Launch /Utilities/Terminal and copy & paste this at the command line to rebuild LaunchServices: (be sure to copy the entire line it's a scroll)
    Code:
    /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user
    Then press return. Wait until terminal returns to the command line. Quit Terminal. After that, log out and back in or restart. Let us know.
    Or, use the free utiltiy OnyX to do the same via gui
    EDIT: Actually the issue may be with the way unarchiver code is written and LauchServices is doing it's job correctly. But it can't hurt to see.

  • Multiple webapps under one menu

    I am trying to create a single entry point & login for a
    number of webapps. The front door webapp has a login
    procedure and a menu. The menu controller is a servlet
    which forwards to another webapp like this
    foreignContext = getServletContext().getContext( /foreignWebApp );
    foreignDispatcher = foreignContext.getNamedDispatcher( foreignEntryPoint );
    foreignDispatcher.forward( request, response );
    where foreignEntryPoint is a servlet-name in foreignWebApp's web.xml.
    This successfully loads the foreignEntryPoint and a call to getContextPath
    will return /foreignWebAppDirectory However getPathTranslated()
    returns /foreignWebApp/menu and
    <a href a.jsp> </a> will access /menu/a.jsp.
    Stranger still, if I have a servlet "/menu/control" the server will attempt
    to access
    /foreignWebApp/menu/control
    This is not what I want. I want to leave the /menu webapp's context entirely
    ( while keeping the session and principal ).
    The J2EE spec requires a server-scope login, but how to implement it across
    several webapps.
    Sorry if this is a no-brainer. I haven't seen it in any FAQ

    you could set up an output table which has these columns:
    address_text,
    ALLOWANCE
    DATE
    CERTIFIED
    The Address_text field can be populated from both the Name and the address columns of the original table so there are two output table entries per input table entry.
    Another approach would be to have two separate output tables, one for name and one for address, and use the the hierarchy version of alv to link them together and output them. Check out FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'.

  • Multiple Entrys for the same Album

    Hello
    I ripped an Album (Till Broenner, "Oceana") to my Computer. Everthing is working fine, but iTunes shows it as 5 (!!!) separate Albums.
    I tried to change the Album information in order to bring it all together again, but it was no use.
    iTunes even recognises that it is all from the same Album, including the correct Track number, but shows them nonetheless as 5 different Albums with exactly the same Informations and the same Cover.
    This is annoying and I have this problem with a couple of other Albums as well.
    What can I do to stop it???
    Thanks a million for any clue
    Mcschmitz
    Message was edited by: mcschmitz

    This should fix it...
    Select all the tracks in iTunes (click on the first and then hold down shift and click on the last).
    Select File, Get Info
    Make sure there are entries for Artist, Album Artist, and Album (if not, type them in)
    Finally, click on Options (near the top of the Get Info window), check "Part of a compilation", and set that option to Yes.
    (I know it's not a compilation in this case, but some of the tracks are 'featuring' another artist, so I think that's what the problem is)

  • How to display multiple clocks in menu bar?

    Is there an app that can display multiple clocks in different time zones, side by side, like the regular system clock?
    http://d.pr/i/P6Zr

    Does this come close enough?
    https://itunes.apple.com/gb/app/clocks/id414554506?mt=12
    Found at…
    http://www.cultofmac.com/165298/set-up-multiple-world-clocks-in-menu-bar-os-x-ti ps/
    Don't forget you can add multiple clock widgets to Dashboard, and the info icon will allow you to set the location/ timezone.
    This will give you a dashboard overview…
    http://mac.appstorm.net/how-to/using-dashboard-in-2013/

  • [TUTORIAL] Context Menu to export EML files

    Hello there folks!
    I'm pretty new to the topic of C3PO, GW and all the Novell stuff and one of my tasks was to "code an export mechanism for GW8 thats lats us save e-mails to our storage system". Ok, that was a hammer. But wrapping my head around it and starting to error out the things got me pretty far and I guessed it was tutorial material. So here we go:
    @Moderators: This is the thread that has everything in it. the other one can be deleted.
    This tutorial is intendend for C# only. I don't like VB and I'm too dumb for C++ so if you need it for another dialect you need to work it out your self.
    Agenda:
    Needed packages
    C3PO wizard
    Loading to Visual Studio 2010
    Needed Imports/References
    Simple MessageBoxing
    Export Code
    Registering and caching the .DLL
    Testing (please help me with a better way here)
    1. Needed packages
    the novell-gwc3po-devel-2012.11.15.zip file (unzip this after downloading)
    an installed version of Visual Studio 2012 C# (or if you want to work with a different dialect choose another)
    cmd access to some of the registering tools:
    It may be the best thing to set tose paths up in you env variables. Allthough when running the cmd with administrator privileges you can't use regasm from env variables and need to cd to the directory.
    RegAsm (regasm.exe): C:\Windows\Microsoft.NET\Framework\v4.0.30319 (the version depends on the target)
    GACUtil (gacutil.exe): C:\Program Files(x86)\Micrsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\ (this path is also dependent on your target framework version, I chose .NET4)
    StrongName (sn.exe): C:\Program Files(x86)\Micrsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\ (this path is also dependent on your target framework version, I chose .NET4)
    a good beverage :D (you should obtain multiple of these :D)
    2. The C3PO wizard
    In my case I wanted to add the functionality via the context menu. So the code executes when right-clicking on one or multiple messages displays another menu item and is clickable.
    This is pretty easy to realize via the C3PO wizard. You'll find it in the downloaded and extracted novell-gwc3po-devel-2012.11.15.zip from above. Start it (it is located in extracted-zip-folder/gwc3po-FILES/C3POWizard/C3POWizard.exe) and setup your project:
    Setup the project in the wizard step 1
    I usually setup the Wizard inside my Visual Studio 2010 projects folder, create a new folder there with the name of the project and check the options i want to have.
    In the next step I chose which type of View should display my custom context menu. Since I was only interested in exporting and working with e-mails I chose "GW.MESSAGE.MAIL" and added it to the bottom list via, you guessed it, "Add".
    Setup theView that invokes the new context menu item
    In the next step you I had to setup a new entry for the context menu. You could make side-droppable menus here etc. But for me a simple "Add Menu" was enough. Give it a name of your choice (beware: I'm yet to find out where to change this setting in the source files).
    Creating a Menu Item in step 3
    Click through next and the wizard will sum up you choices. In the next dialog window you will be prompted to specify the language you want the code to be generated. I chose .NET C#.
    In the prompt after that you will be asked if the wizard should create a .DLL-project. You click yes.
    Quit the wizard with the "Done" button.
    3. Loading to Visual Studio 2010
    Open up your Visual Studio and go to File -> Open Project. Navigate to the folder where you just created the files with the C3PO-Wizard. and open up the .csproj file.
    All the files get loaded and it seems quite well. but now it's time for some other stuff: Signing, or better, providing a key for signing.
    Allthough the README.txt (also in your project folder) states this is not neccessarily needed I did not get it to work without a key file.
    Open up a terminal and tpye in sn /? to see if the environment variables work. If not you can yuse the abolute path to sn (see: 1: Needed packages). If everything works as expected you can generate your keyfile with sn -k <PathToYourProject>\Archive.snk.
    In Visual Studio, go to Project -> <ProjectName>-Properties -> Signing -> Sign assembly [x] -> Search and pick the .snk-file you just created.
    Good. A first compilation of the project with F6 should rumble through without problems. Go to <ProjectFolder>\bin\Release and copy the .dll files to <GroupWiseInstallPath>.
    After that you need to open a cmd windows as administrator and cd to the RegAsm.exe directory and execute the following: [I]regasm "<GroupWiseInstallPath>\<TheDllName>.dll". Then execute gacutil -i "<GroupWiseInstallPath>\<TheDllName>.dll".
    RegAsm will register the extension to the Windows registry and GACUtil will cache the .dll content to make it available to GroupWise.
    You need to re-cache the .dll everytime you compile in VS. So basically the workflow is Compile -> Copy dll to GroupWise directory -> re-cache with gacutil -i -> Start Groupwise
    I have not found a method to post-build execute a script that does that. Problem is the copying and the gacutil caching (both must be done as administrator).
    IIf everything worked you see a new entry in the context menu when right-clicking a mail in Groupwise. When you click it, there will appear a message box.
    The MessageBox is defined in GWCommand.cs L. ~125
    4. Needed Imports/References
    Since we got the skeleton to compile and function properly, it's time to get our own code in there. FOr rapid prototyping I do all the stuff in GWCommand.cs.
    Go to Project -> add Reference -> COM and select "C3POTypeLibrary", "GroupWareTypeLibrary, "GroupWiseCommander", "GroupWiseConnectorLibrary" and click OK. The selected entries now appear in the project explorer.
    5. Simple MessageBoxing
    A thing I like to do (because I'm not a very good programmer) is to get all sorts of infos to get displayed with
    Code:
    MessageBox.Show();
    Just fling it in the code and see what get's where etc. An important thing is allready in the comments of the file.
    It is this line:
    Code:
    C3POTypeLibrary.IGWClientState6 myCL = (C3POTypeLibrary.IGWClientState6)WIASSArchivButton.g_C3POManager.ClientState;
    . Uncomment it and play around with the myCL-object in your code.
    The myCL has some properties we will use later on such as myCL.SelectedMessages which is exactly what we need for our archive functionality.
    6. Export Code
    Now we get to the code:
    With the
    Code:
    ClientState
    dug up in the code we can pass the
    Code:
    SelectedMessages
    into a
    Code:
    MessageList
    . Over this MessageList we will iterate and save each
    Code:
    Message
    with the so called
    Code:
    GroupWiseCommander
    to our disk. well that sounds simple. And, well after digging through a lot of threads here on the forum and the documentation, it is.
    Here is the Execute() method from GWCommand.cs:
    It has comments that should serve as a documentation.
    Code:
    public void Execute()
    try
    switch (m_PersistentID)
    case WIASSArchivButton.vWIASS:
    //C3PO WIZARD Put execute command code here for WIASS Context menu.
    /* this was in the comments and is essential!
    * the myCL object provides us everything we need to interact with the messages */
    C3POTypeLibrary.IGWClientState6 myCL = (C3POTypeLibrary.IGWClientState6)WIASSArchivButton.g_C3POManager.ClientState;
    // get the selected messages
    object o = myCL.SelectedMessages;
    // and convert the SelectedMessages to a MessagesList
    MessageList ml = (MessageList)o;
    // iterate over all the selected Messages
    // this was tricky: the index of the MessageList starts by 1 and not at 0
    for (int i = 1; i <= ml.Count; i++)
    // the .Item() method expects either a string or a long
    // see http://www.novell.com/documentation/developer/groupwise_sdk/gwsdk_gwobjapi/data/h20s5bdo.html
    long index = (long)i;
    // instantiate a Message object to get access to the different properties like subject, sender etc
    GroupwareTypeLibrary.Message oMessage = (GroupwareTypeLibrary.Message)ml.Item(index);
    // instantiate a GroupWiseCommander
    // this is the interface to the TOKEN API
    // TOKENS: https://www.novell.com/developer/documentation/gwtoken/index.html
    GroupWiseCommander.GWCommander cmdr = new GroupWiseCommander.GWCommander();
    // the GWCommander has an Execute() method that is able to take certain tokens kind of like SQL
    // lets build the token (the complete list is huge and awesome) to save our Messages
    // ItemSaveMessage(): https://www.novell.com/developer/documentation/gwtoken/gwtokens/data/hbt0bd7x.html
    string tokenCommand = "ItemSaveMessage(\"" + oMessage.MessageID + "\"; \"C:\\archiv\\" + oMessage.MessageID + ".eml\"; 900)";
    /* what happens here ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ is that we build us a TOKEN command that the
    * GWCommander is able to execute.
    * the actual command is ItemSaveMassge()
    * everything between the semi-colons are the parameters:
    * \"" + oMessage.MessageID + "\" : builds an ANSISTRING of the MessageID which we get from the oMessage onject
    * \"C:\\archiv\\" + oMessage.MessageID + ".eml\" : build an ANSISTRING of the output filename
    * 900 is the type we want to export. 900 stands for Mime
    * CAUTION:In this example I use C:\archive\ as the destination folder. It must exist and be writable to the program
    // now that we have setup our command we can get it executed by the commander
    // the result is sort of a callback variable
    string result ="";
    cmdr.Execute(tokenCommand, out result);
    /* here can the error handling be done with the result string
    break;
    default:
    MessageBox.Show("Unsupported Case", "Error", MessageBoxButtons.OK);
    break;
    //A way to get the GroupWise client state with newest interface
    //C3POTypeLibrary.IGWClientState6 myCL = (C3POTypeLibrary.IGWClientState6)WIASSArchivButton.g_C3POManager.ClientState;
    //uncomment the code below to unblock the base command
    //IGWCommand baseCmd = (IGWCommand)WIASSArchivButton.g_C3POManager.CreateGWCommand(m_objBaseCmd);
    //baseCmd.Execute();
    catch (Exception e)
    MessageBox.Show("Error Executing GWCommand: " + m_PersistentID.ToString() + " Error: " + e.Message);
    return;
    7. Registering and caching the .DLL
    After that you need to open a cmd windows as administrator and cd to the RegAsm.exe directory and execute the following: regasm "<GroupWiseInstallPath>\<TheDllName>.dll". Then execute gacutil -i "<GroupWiseInstallPath>\<TheDllName>.dll".
    RegAsm will register the extension to the Windows registry and GACUtil will cache the .dll content to make it available to GroupWise.
    You need to re-cache the .dll everytime you compile in VS. So basically the workflow is Compile -> Copy dll to GroupWise directory -> re-cache with gacutil -i -> Start Groupwise
    8. Testing (please help me with a better way here)
    Is there a good way to hook every thing up together to jsut stay in VS , compile, files get copied, registered, cached and GW starts?
    Thanks for reading!
    I wrote this up to have a documentation for myself and others. please let em know if you need help or anything is missing or not clear. It's certainly not a total noob guide and I expect a bit of knowledge to be honest.
    Regards
    Sebastian

    Originally Posted by Username951
    Multiple email selection should be possible, but only those emails that are fitting some requirements should be stored finally in database.
    One requirement is for example that a keyword like "ISSUE" appears in the email subject
    (followed by a ":", a "space" and some characters that can be converted to an integer value),
    multiple, leading "Fwd: " and/or "Re: " should be handled well,
    subject should be handled case-in-sensitive.
    This sounds like you should implement some sort of SelectedMessagesValidator class just to keep it clean.
    Originally Posted by Username951
    So here are my find outs, remarks, etc.:
    1.) Visual Studio should be started under admin. rights.
    Then you can write a post-build event (batch) that copies, "regasm"s and "gacutil"s everything.
    As said this works fine for me.
    But note that unfortunately the paths to "regasm" and "gacutil" changed
    (compared to the time where you wrote your tutorial).
    Definitely. That way, as you mentioned, the post build scripts integrate very well.
    Originally Posted by Username951
    2.) The "Novell C3PO" wizard was downloaded and worked out as described in our tutorial.
    One important step was to use "GW.MESSAGE.MAIL" and not "...BROWSER..." or something else.
    I can not figure out, where you have the GW.BROWSER thing from, but in my examples I allways used GW.MESSAGES.MAIL
    Originally Posted by Username951
    The wizard created finally the basic C# (.NET framework 2.0) project.
    This project was loaded in Visual Studio 2013, automatically converted to "newest version"
    and finally was a ".sln" made.
    Yes. You can leave it at 2.0. I just have the 4.5 installed so i will target this version
    Originally Posted by Username951
    "oracle.dataaccess"
    -> Note that the "Copy Local" property must be set to "true"!
    (This property will be reset to "false" after a successful (re)build.
    So check this and change it to "true" for the first build!
    This must be made only once because after a successful build is this .dll known;
    keywords: GAC -> cached
    But note that "successful" means also that the post-build event ran flawless!)
    This is quite specific to your case since my example on exports a flat EML file to the hard drive
    Originally Posted by Username951
    2.) regasm.exe needs strong names.
    So a "cmd" with admin. right was opened,
    a
    "C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\sn.exe" -k "C:\Users\<username>\Documents\Visual Studio 2013\Projects\GWSaveToDatabase\GWSaveToDatabase.sn k"
    fired
    and the created "GWSaveToDatabase.snk" file added to the solution.
    I don't want to be picky, but it's gacutil that needs the strong names. ragasm is not complaining
    Originally Posted by Username951
    (Development) Remarks
    1.) While I used the "C3PO" wizard first time I used "Add Menu" item - as you said in your tutorial! :-(
    And that is definitely wrong!
    See:
    The result was a C# project that does not show any new context menu entry.
    So I tried at the next wizard run "Add Menu Item".
    The wizard created again a C# project but still no new context menu entry in the GroupWise client.
    (And that after all needed steps
    like
    copy to GroupWise installation path,
    regasm and gacutil over all .dlls
    etc.
    were successful be made).
    It took a complete day to get the idea to "merge" the two wizard created projects!
    Why merging?
    Because the second project contained a "const" which were used in the switch statement of the "Execute()" method
    (with the same meaning like your "WIASSArchivButton.vWIASS" - see your code snippet above!)
    and the "CustomizeContextMenu(...)" method in "CommandFactory.cs" looked also different
    while the first project does not contained something similar.
    ( For example:
    The "CustomizeContextMenu(...)" method had more statements.
    And that made more sense to me compared to the first wizeard created C# project.
    Since I uploaded a better example this is obsolete.
    Originally Posted by Username951
    So I ASSUME that the second project would work but it does not because of regasm / gacutil behaviour.
    Means I believe it would work when all
    with regasm registered
    and
    with gacutil to the cache added "things"
    would be "un-registerd" and "un-cached".
    This is, as I assume, due to the Interop.C3POTypeLibrary.dll. This must me cached every time the project is build. maybe you could use gacutil -i Interop.C3POTypeLibrary.dll -f to force the recaching
    Originally Posted by Username951
    So, finally I took the second, wizard created C# project and copied the "const", adjusted the "Execute()"
    and "CustomizeContextMenu(...)" methods, etc.
    After that the context menu were shown in the GroupWise client!
    Thats is correct. But I never had to do this. The thing is, that the "Add Menu Item" is giving you the opputunity to specify a command, which the "Add Menu" doesn't.
    Originally Posted by Username951
    2.) The next issue was that the context menu was added as often as many emails were selected.
    Means: For example: Three selected emails ends up in three time added context menu.
    Solution:
    Checking
    var existsAlready = menuItems.Item("...");
    if (existsAlready != null)
    return;
    in "CustomizeContextMenu(...)" method and leaving the method under shown circumstances.
    I added a fix for this in the second post, but it isn't working in GW2012 anymore. I have a very ubly fix for that in my new code.
    Originally Posted by Username951
    3.) The by the wizard created registry path contained the version number "5.0".
    This may confuse but it is finally ok. No need to change here anything!
    On the other side:
    It will NOT work when the registry entry
    "SOFTWARE\\Novell\\GroupWise\\5.0\\C3PO\\DataTypes \\...."
    will be changed/"adjusted to that GroupWise client version you are currently using"!
    This is all part of the official documentation and wasn't touched by Novell since quite a long time.
    I think i will make a github repository in the futer as a proof of concept and kind of a accessable documentation for everyone.

  • How to create a horizontal multi column menu?

    We are trying to create a horizontal menu, just like the one at Oracle site ( [http://www.oracle.com/us/index.html] ) with links in multiple columns in each menu item. Can you please suggest how to do it? We have tried using the navigation model but could only create single column menus.

    Put the links in a form and set the rows and columns properties of the Form.
    See the options on this page:
    http://jdevadf.oracle.com/adf-richclient-demo/faces/visualDesigns/formLayout.jspx

  • How to add titles to multiple pictures at same time in iphoto11

    I am having difficulty navigating in iphoto11.
    Can not figure out how to add keywords to multiple photos
    or how to add the same title to multiple photos.

    Titles: Photos menu -> Batch Change.
    Keywords: Select a batch of pics. Apply keyword to one, it's applied to all
    Regards
    TD

  • Clean up "Open with..." menu

    My "Open with (application)" menu is getting messy, and I would like to delete dublicates and clutter. Any Idears...
    Steen

    Maybe these will help:
    Open With Menu - How to fix Multiple Items
    Open With Menu - How to fix Multiple Items (2)
    Open With Menu - How to fix Multiple Items (3)
    https://discussions.apple.com/message/21557102#21557102

  • New Version Of iTunes Wont let me use "multiple speakers" thru airtunes...

    The New Version Of iTunes Wont let me use "multiple speakers" thru airtunes with airport express.
    I have used airport express to play music while simultaneously playing it thru my computer speakers, but the new version of iTunes wont let me select "Multiple Speakers" from the menu at the bottom of the window

    There doesn't seem to be a link to this firmware update, can you repost it? I'm having the same problem.
    Thanks
    J

Maybe you are looking for