Example #1
0
        public PCDResponse MeasurePart(PCDRequest request)
        {
            _measureOperation = true;
            StatusMessage     = "开始测量";
            PCDResponse resp = null;

            try
            {
                string progName = SearchProgram(request.Part);

                GenerateMeasureParameterFile(request.Part);

                _are.Reset();
                bool success = _pcdmisControl.OpenProgram(progName);
                success = _pcdmisControl.ExecuteProgramAsync();
                _are.WaitOne();

                resp = EvalMeasure(_completed);
            }
            catch (Exception pe)
            {
                resp = new PCDResponse()
                {
                    Success = false,
                    Pass    = false,
                    Message = pe.Message
                };
                ServerLog.Logs.AddLog(pe.Message);
            }
            StatusMessage = "结束测量";
            return(resp);
        }
        private PCDResponse Measure(Part part)
        {
            PCDRequest request = new PCDRequest()
            {
                Part = part
            };
            PCDResponse response = _pcdmisService.MeasurePart(request);

            return(response);
        }
Example #3
0
        static void Main(string[] args)
        {
            Callback cb = new Callback();

            ServiceReference1.PCDmisServiceClient client = new ServiceReference1.PCDmisServiceClient(new System.ServiceModel.InstanceContext(cb));
            client.InnerDuplexChannel.Opened += InnerDuplexChannel_Opened;
            client.Open();
            Thread.Sleep(2000);

            PCDRequest request = new PCDRequest();

            request.Part = new ServiceReference1.Part();
            var response = client.MeasurePart(request);

            Console.WriteLine(response.Message + " " + response.Success.ToString());
            Console.WriteLine("------");
            Console.ReadLine();
        }