Пример #1
0
        private static void startWithArgs(string[] args)
        {
            string uploadFilePath, filename, backupName, parentID;
            int    user, compressing = 0, onlyNew = 0;

            try
            {
                if (loadUsers() && args.Length > 5)
                {
                    loadFileList(args[0]);
                    backupName = args[1];
                    parentID   = (args[2] != "0") ? args[2] : null;
                    int.TryParse(args[3], out user);
                    int.TryParse(args[4], out onlyNew);
                    int.TryParse(args[5], out compressing);


                    if (GoogleDriveAPIV3.GoogleDriveConnection(
                            UserList[user].clientSecretPath,
                            UserList[user].userName))
                    {
                        parentID = GoogleDriveAPIV3.createFolderToDrive(
                            Gtools.getTimeStamp() + "_" + backupName,
                            parentID);
                        foreach (IOFile file in IOFileList)
                        {
                            uploadFilePath = (compressing == 0) ? file.path : Gtools.compressFile(file.path);
                            filename       = (compressing == 0) ? file.name : file.name.Split('.').First() + ".zip";
                            GoogleDriveAPIV3.uploadToDrive(uploadFilePath, filename, parentID, (onlyNew != 0), new frmMain());
                        }
                    }
                    else
                    {
                        throw new Exception("Connection Error");
                    }
                }
                else
                {
                    throw new Exception("Arguments Error");
                }
            }
            catch (Exception exc)
            {
                System.Diagnostics.Debug.WriteLine(exc.Message + " Start with Args Error.\n");
                Gtools.writeToFile(frmMain.errorLog, Environment.NewLine + DateTime.Now.ToString() +
                                   Environment.NewLine + exc.Message + " Start with Args Error.\n");
            }
        }
Пример #2
0
        private void btnCreateBatch_Click(object sender, EventArgs e)
        {
            string fileListName = Gtools.getTimeStamp() + "_" + UserList[cbUser.SelectedIndex].userName + "_" + txtBackUpName.Text + ".json";
            string fileListPath = Path.Combine(savePath, fileListName);

            saveFileLIst(fileListPath);
            string param1 = fileListPath;                                                       // filelist.json Path parameter
            string param2 = (chbUploadMultiple.Checked)? txtBackUpName.Text : txtFileName.Text; // file Name parameter
            string param3 = (txtParentID.Text != string.Empty) ? txtParentID.Text : "0";        // Parent Id parameter
            int    param4 = cbUser.SelectedIndex;                                               // user index parameter
            int    param5 = (MessageBox.Show("Do you want to Upload only \"new/changed\" files to Google Drive?" +
                                             UserList[cbUser.SelectedIndex].userName, "Uploading Arguments",
                                             MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) ? 1 : 0; // Copy Only new parameter
            int param6 = (chbCompress.Checked) ? 1 : 0;                                                                      // comporess parameter

            string appPath = "\"" + Path.GetFullPath(Application.ExecutablePath) + "\"";


            string contentToWrite = "cls" + Environment.NewLine +
                                    "@ECHO OFF" + Environment.NewLine +
                                    "set param1=\"" + param1 + "\"" + Environment.NewLine +
                                    "set param2=\"" + param2 + "\"" + Environment.NewLine +
                                    "set param3=\"" + param3 + "\"" + Environment.NewLine +
                                    "set param4=\"" + param4 + "\"" + Environment.NewLine +
                                    "set param5=\"" + param5 + "\"" + Environment.NewLine +
                                    "set param6=\"" + param6 + "\"" + Environment.NewLine +
                                    appPath + " %param1% %param2% %param3% %param4% %param5% %param6%";

            FolderBrowserDialog fbd    = new FolderBrowserDialog();
            DialogResult        result = fbd.ShowDialog();

            switch (result)
            {
            case DialogResult.OK:

                Gtools.createFile(Path.Combine(fbd.SelectedPath,
                                               UserList[cbUser.SelectedIndex].userName + "_File_" + txtFileName.Text.Split('.').First() + ".bat")
                                  , contentToWrite);

                break;

            default:
                break;
            }
        }