We help IT Professionals succeed at work.

Creating Program groups in Program Manager or Start Menu

leechunkwok
leechunkwok asked
on
Medium Priority
260 Views
Last Modified: 2013-12-03
Hello,

I'm writing an program which one of its functions is to install several programs on the harddisk. One problem I face is to make a program group and several items inside the group in Program Manager of Windows 3.1 (or in the Start menu of Win95). I can't use the setup wizard of Toolbook
because there are some other functionalities needed beside installing programs, and the setup wizard can't help. Could anyone show me how this can be done?

Thanks very much.
Comment
Watch Question

Commented:

// C code for creating new folders in Win95

LPITEMIDLIST pidl;
char szProgramPath[ MAX_PATH];

if ( SUCCEEDED( SHGetSpecialFolderLocation( NULL, CSIDL_PROGRAMS, &pidl) ) )
{
 SHGetPathFromIDList(pidl, szProgramPath);

 // Here you can work changing directory (program group) names, creating new etc.


 SHChangeNotify( SHCNE_UPDATEDIR, SHCNF_FLUSH | SHCNF_PATH, (PLVOID) szProgramPath, 0);
 CoTaskFreeMem( (LPVOID) pidl );
}



// C code for creating new links in Win95

IShellLink *ishlnk;
IPersistFile *ipersist;

if ( SUCCEEDED( CoCreateInstance(&CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, &IID_IShellLink, &ishlnk))
{
 // Here you may call the IShellLink methods (see help file)
 ishlnk->vtable->SetDescription(ishlnk, "Test Link"); // Shortcut name
 ishlnk->vtable->SetPath( ishlnk, "C:\\COMMAND.COM"); // Shortcut to command.com
 // ... etc.

 // The ShellLink object is now just created in mem - to store it use IPersistFile
 // ishlnk->vtable->QueryInterface(ishlnk, IID_IShellLink, &ipersist );
 // etc.

 // Always release the interface
 ishlnk->vtable->release(ishlnk);
}

Note that I haven't been able to try it out - I'm currently out of C-Compiler.  I think this might help you in the right direction.
Commented:
There is way to do what you want: use DDE.

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.