I am wrapping notification bubble for a specific application and I have Add, Remove working. Now I would like to use GetData but I am running into a wall. I cont to recv result of 87 invalid param, I know I am passing correct clsid (I use same one when I add) and I also know the ID is correct again from add but also from nmshn.hdr.code in winproc. that error seams to me indicates I have the DLLImport statement correct but Im putting it here just the same in case its that.//GetData[DllImport("aygshell.dll", CallingConvention = CallingConvention.Winapi,EntryPoint = "#156")]private static extern int SHNotificationGetData(ref Guid clsid, uint dwID, ref SHNOTIFICATIONDATA shinfo);
Also here is the snippet where I am trying to retrieve it. public unsafe SHNOTIFICATIONDATA GetNotificationData(uint dwID){SHNOTIFICATIONDATA shinfo = new SHNOTIFICATIONDATA();shinfo.cbStruct = (uint)Marshal.SizeOf(shinfo);Guid g = new Guid(clsid.ToString());int err = 0; err = SHNotificationGetData(ref g, dwID, ref shinfo);if (err != 0)throw new Exception("Error getting data!"); return shinfo;} My next goal is to change my duration and us Update. I know I can use other means (keep copies of my structs locally and get data that way) but I want to really use this function. Thanks.
Also here is the snippet where I am trying to retrieve it. public unsafe SHNOTIFICATIONDATA GetNotificationData(uint dwID){SHNOTIFICATIONDATA shinfo = new SHNOTIFICATIONDATA();shinfo.cbStruct = (uint)Marshal.SizeOf(shinfo);Guid g = new Guid(clsid.ToString());int err = 0; err = SHNotificationGetData(ref g, dwID, ref shinfo);if (err != 0)throw new Exception("Error getting data!"); return shinfo;} My next goal is to change my duration and us Update. I know I can use other means (keep copies of my structs locally and get data that way) but I want to really use this function. Thanks.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货