annotate netinstall/mklink2.c @ 5281:aa20a889ff14

Remove a couple of redundant functions, backquote.el 2010-10-10 Aidan Kehoe <kehoea@parhasard.net> * backquote.el (bq-vector-contents, bq-list*): Remove; the former is equivalent to (append VECTOR nil), the latter to (list* ...). (bq-process-2): Use (append VECTOR nil) instead of using #'bq-vector-contents to convert to a list. (bq-process-1): Now we use list* instead of bq-list * subr.el (list*): Moved from cl.el, since it is now required to be available the first time a backquoted form is encountered. * cl.el (list*): Move to subr.el.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 10 Oct 2010 12:13:32 +0100
parents 3078fd1074e8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
1 #include "win32.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
2 #include "shlobj.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
3
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
4 /* This part of the code must be in C because the C++ interface to COM
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
5 doesn't work. */
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
6
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
7 void
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
8 make_link_2 (char *exepath, char *args, char *icon, char *lname)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
9 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
10 IShellLink *sl;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
11 IPersistFile *pf;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
12 WCHAR widepath [_MAX_PATH];
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
13
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
14 CoCreateInstance (&CLSID_ShellLink, NULL,
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
15 CLSCTX_INPROC_SERVER, &IID_IShellLink, (LPVOID *) & sl);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
16 sl->lpVtbl->QueryInterface (sl, &IID_IPersistFile, (void **) &pf);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
17
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
18 sl->lpVtbl->SetPath (sl, exepath);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
19 sl->lpVtbl->SetArguments (sl, args);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
20 sl->lpVtbl->SetIconLocation (sl, icon, 0);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
21
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
22 MultiByteToWideChar (CP_ACP, 0, lname, -1, widepath, _MAX_PATH);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
23 pf->lpVtbl->Save (pf, widepath, TRUE);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
24
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
25 pf->lpVtbl->Release (pf);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
26 sl->lpVtbl->Release (sl);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
27 }