private void cmdWrite_Click(object sender, EventArgs e) { bool bRet; int vErrorCode = 0; lblMessage.Text = "Working..."; Application.DoEvents(); bRet = bpc.EnableDevice(Program.gMachineNumber, 0); if (!bRet) { lblMessage.Text = util.gstrNoDevice; return; } GCHandle gh = GCHandle.Alloc(holidayInfo, GCHandleType.Pinned); IntPtr AddrOfholidayInfo = gh.AddrOfPinnedObject(); int nAddr = AddrOfholidayInfo.ToInt32(); bRet = bpc.SetDeviceLongInfo(Program.gMachineNumber, 6, ref nAddr); if (bRet) { lblMessage.Text = "Success!"; } else { bpc.GetLastError(ref vErrorCode); lblMessage.Text = util.ErrorPrint(vErrorCode); } bRet = bpc.EnableDevice(Program.gMachineNumber, 1); // 1 : enable }