annotate netinstall/mklink2.c @ 4865:6c0bb4d2c23a

Always use our rint(), for rounding consistency with the bignum code. ChangeLog addition: 2010-01-16 Aidan Kehoe <kehoea@parhasard.net> * configure: Regenerate, now we no longer look for rint(). src/ChangeLog addition: 2010-01-16 Aidan Kehoe <kehoea@parhasard.net> * config.h.in: * floatfns.c (emacs_rint): Don't look for rint in configure, always use our own implementation that rounds to the even number in the case of ambiguity, for consistency with the bignum code.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 16 Jan 2010 19:04:52 +0000
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 }