66 lines
1.7 KiB
C#
66 lines
1.7 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Text;
|
|
|
|
namespace FontPreview;
|
|
|
|
[ComImport]
|
|
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
|
|
[Guid("000214F9-0000-0000-C000-000000000046")]
|
|
internal interface ShellLinkW
|
|
{
|
|
[PreserveSig]
|
|
int GetPath([MarshalAs(UnmanagedType.LPWStr)] StringBuilder pszFile, int cch, IntPtr pfd, int fFlags);
|
|
|
|
[PreserveSig]
|
|
int GetIDList(out IntPtr ppidl);
|
|
|
|
[PreserveSig]
|
|
int SetIDList(IntPtr pidl);
|
|
|
|
[PreserveSig]
|
|
int GetDescription([MarshalAs(UnmanagedType.LPWStr)] StringBuilder pszName, int cch);
|
|
|
|
[PreserveSig]
|
|
int SetDescription([MarshalAs(UnmanagedType.LPWStr)] string pszName);
|
|
|
|
[PreserveSig]
|
|
int GetWorkingDirectory([MarshalAs(UnmanagedType.LPWStr)] StringBuilder pszDir, int cch);
|
|
|
|
[PreserveSig]
|
|
int SetWorkingDirectory([MarshalAs(UnmanagedType.LPWStr)] string pszDir);
|
|
|
|
[PreserveSig]
|
|
int GetArguments([MarshalAs(UnmanagedType.LPWStr)] StringBuilder pszArgs, int cch);
|
|
|
|
[PreserveSig]
|
|
int SetArguments([MarshalAs(UnmanagedType.LPWStr)] string pszArgs);
|
|
|
|
[PreserveSig]
|
|
int GetHotkey(out short pwHotkey);
|
|
|
|
[PreserveSig]
|
|
int SetHotkey(short wHotkey);
|
|
|
|
[PreserveSig]
|
|
int GetShowCmd(out int piShowCmd);
|
|
|
|
[PreserveSig]
|
|
int SetShowCmd(int iShowCmd);
|
|
|
|
[PreserveSig]
|
|
int GetIconLocation([MarshalAs(UnmanagedType.LPWStr)] StringBuilder pszIconPath, int cch, out int piIcon);
|
|
|
|
[PreserveSig]
|
|
int SetIconLocation([MarshalAs(UnmanagedType.LPWStr)] string pszIconPath, int iIcon);
|
|
|
|
[PreserveSig]
|
|
int SetRelativePath([MarshalAs(UnmanagedType.LPWStr)] string pszPathRel, int dwReserved);
|
|
|
|
[PreserveSig]
|
|
int Resolve(IntPtr hwnd, int fFlags);
|
|
|
|
[PreserveSig]
|
|
int SetPath([MarshalAs(UnmanagedType.LPWStr)] string pszFile);
|
|
}
|