示例#1
0
        /// <summary>
        /// 上传资源
        /// </summary>
        /// <param name="localFile">本地文件的完整路径</param>
        /// <param name="resHandler">上传的结果回调</param>
        /// <param name="prgHandler">上传进度的回调</param>
        public static void Upload(string localFile, UploadResultHandler resHandler, ProgressResultHandler prgHandler)
        {
            var ptr1 = NimUtility.DelegateConverter.ConvertToIntPtr(resHandler);
            var ptr2 = NimUtility.DelegateConverter.ConvertToIntPtr(prgHandler);

            NosNativeMethods.nim_nos_upload(localFile, UploadCb, ptr1, UploadPrgCb, ptr2);
        }
示例#2
0
        public UploadQueue(ServerApi api, UploadResultHandler handler)
        {
            if (api == null) throw new ArgumentNullException(nameof(api));
            if (handler == null) throw new ArgumentNullException(nameof(handler));
            _sync = new object();
            _queue = new Queue<Bitmap>();
            _api = api;
            _handler = handler;

            Task.Factory.StartNew(Upload);
        }
示例#3
0
        /// <summary>
        ///     上传资源
        /// </summary>
        /// <param name="localFile">本地文件的完整路径</param>
        /// <param name="resHandler">上传的结果回调</param>
        /// <param name="prgHandler">上传进度的回调</param>
        public static void Upload(string localFile, UploadResultHandler resHandler, ProgressResultHandler prgHandler, object userData = null)
        {
            ProgressData data = new ProgressData();

            data.FilePath = localFile;
            data.UserData = userData;
            ProgressPair pair = new ProgressPair(data, prgHandler);
            var          ptr1 = DelegateConverter.ConvertToIntPtr(resHandler);
            var          ptr2 = DelegateConverter.ConvertToIntPtr(pair);

            NosNativeMethods.nim_nos_upload(localFile, UploadCb, ptr1, UploadPrgCb, ptr2);
        }