Torna al Thread

int IContextMenu.QueryContextMenu(uint hmenu, uint iMenu, int idCmdFirst, int idCmdLast, uint uFlags) { //Ottiene il file cliccato StringBuilder sb = new StringBuilder(1024); DllImports.DragQueryFile(m_hDrop, 0, sb, sb.Capacity + 1); //Se è un collegamento (*.lnk) termina //Probabilmente l'errore è qui ma non so cosa fare!! if (new FileInfo(sb.ToString()).Extension == ".lnk") { return 1; } // Add it to the item for (int i = 0; i < Menus.Length; i++) { //Aggiorna l'ID del menu Menus[i].MenuItemInfo.wID += idCmdFirst; //Verifica se questo menu ha dei sottomenu if (Menus[i].SubMenu != null) { PopolateSubMenu(Menus[i], idCmdFirst); } //Aggiunge il menu DllImports.InsertMenuItem(hmenu, Menus[i].Position - 1, 1, ref Menus[i].MenuItemInfo); //Aggiunge l'icona if (Menus[i].Image != null) { System.Drawing.Bitmap Bmp = Menus[i].Image; DllImports.SetMenuItemBitmaps((IntPtr)hmenu, (IntPtr)(Menus[i].Position - 1), 0x400, Bmp.GetHbitmap(), Bmp.GetHbitmap()); } } // Return the new id number if we actually added an item return (int)(NumeroMenu + 1); }
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5