VirtualBox

Changeset 81287 in vbox for trunk/src/VBox/Frontends


Ignore:
Timestamp:
Oct 15, 2019 4:38:43 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
133982
Message:

Shared Clipboard/Transfers: Added controlvm/modifyvm options for enabling/disabling the clipboard file transfers.

Location:
trunk/src/VBox/Frontends/VBoxManage
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VBoxManage/Makefile.kmk

    r80569 r81287  
    4444        $(if $(VBOX_WITH_AUDIO_RECORDING),VBOX_WITH_AUDIO_RECORDING) \
    4545        $(if $(VBOX_WITH_NAT_SERVICE),VBOX_WITH_NAT_SERVICE) \
     46        $(if $(VBOX_WITH_SHARED_CLIPBOARD),VBOX_WITH_SHARED_CLIPBOARD) \
     47        $(if $(VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS),VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS) \
    4648        $(if $(VBOX_WITH_VMSVGA),VBOX_WITH_VMSVGA)
    4749
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageControlVM.cpp

    r80585 r81287  
    513513            }
    514514        }
     515#ifdef VBOX_WITH_SHARED_CLIPBOARD
    515516        else if (!strcmp(a->argv[1], "clipboard"))
    516517        {
     
    523524
    524525            ClipboardMode_T mode = ClipboardMode_Disabled; /* Shut up MSC */
    525             if (!strcmp(a->argv[2], "disabled"))
    526                 mode = ClipboardMode_Disabled;
    527             else if (!strcmp(a->argv[2], "hosttoguest"))
    528                 mode = ClipboardMode_HostToGuest;
    529             else if (!strcmp(a->argv[2], "guesttohost"))
    530                 mode = ClipboardMode_GuestToHost;
    531             else if (!strcmp(a->argv[2], "bidirectional"))
    532                 mode = ClipboardMode_Bidirectional;
    533             else
    534             {
    535                 errorArgument("Invalid '%s' argument '%s'.", a->argv[1], a->argv[2]);
    536                 rc = E_FAIL;
    537             }
    538             if (SUCCEEDED(rc))
    539             {
     526            if (!strcmp(a->argv[2], "mode"))
     527            {
     528                if (!strcmp(a->argv[3], "disabled"))
     529                    mode = ClipboardMode_Disabled;
     530                else if (!strcmp(a->argv[3], "hosttoguest"))
     531                    mode = ClipboardMode_HostToGuest;
     532                else if (!strcmp(a->argv[3], "guesttohost"))
     533                    mode = ClipboardMode_GuestToHost;
     534                else if (!strcmp(a->argv[3], "bidirectional"))
     535                    mode = ClipboardMode_Bidirectional;
     536                else
     537                {
     538                    errorArgument("Invalid '%s' argument '%s'.", a->argv[2], a->argv[3]);
     539                    rc = E_FAIL;
     540                    break;
     541                }
     542
    540543                CHECK_ERROR_BREAK(sessionMachine, COMSETTER(ClipboardMode)(mode));
    541544                if (SUCCEEDED(rc))
    542545                    fNeedsSaving = true;
    543546            }
    544         }
     547# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     548            else if (!strcmp(a->argv[2], "filetransfers"))
     549            {
     550                if (a->argc <= 1 + 2)
     551                {
     552                    errorArgument("Missing argument to '%s'. Expected true / false.", a->argv[2]);
     553                    rc = E_FAIL;
     554                    break;
     555                }
     556
     557                BOOL fEnabled;
     558                if (!strcmp(a->argv[3], "enabled"))
     559                {
     560                    fEnabled = TRUE;
     561                }
     562                else if (!strcmp(a->argv[3], "disabled"))
     563                {
     564                    fEnabled = FALSE;
     565                }
     566                else
     567                {
     568                    errorArgument("Invalid '%s' argument '%s'.", a->argv[2], a->argv[3]);
     569                    rc = E_FAIL;
     570                    break;
     571                }
     572
     573                CHECK_ERROR_BREAK(sessionMachine, COMSETTER(ClipboardFileTransfersEnabled)(fEnabled));
     574                if (SUCCEEDED(rc))
     575                    fNeedsSaving = true;
     576            }
     577# endif /* VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS */
     578        }
     579#endif /* VBOX_WITH_SHARED_CLIPBOARD */
    545580        else if (!strcmp(a->argv[1], "draganddrop"))
    546581        {
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageHelp.cpp

    r81127 r81287  
    697697                     "                            [--audiocontroller ac97|hda|sb16]\n"
    698698                     "                            [--audiocodec stac9700|ad1980|stac9221|sb16]\n"
    699                      "                            [--clipboard disabled|hosttoguest|guesttohost|\n"
    700                      "                                         bidirectional]\n"
     699#ifdef VBOX_WITH_SHARED_CLIPBOARD
     700                     "                            [--clipboard-mode disabled|hosttoguest|guesttohost|\n"
     701                     "                                              bidirectional]\n"
     702# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     703                     "                            [--clipboard-file-transfers enabled|disabled]\n"
     704# endif
     705#endif
    701706                     "                            [--draganddrop disabled|hosttoguest|guesttohost|\n"
    702                      "                                         bidirectional]\n");
     707                     "                                           bidirectional]\n");
    703708        RTStrmPrintf(pStrm,
    704709                     "                            [--vrde on|off]\n"
     
    852857                     "                            audioin on|off |\n"
    853858                     "                            audioout on|off |\n"
    854                      "                            clipboard disabled|hosttoguest|guesttohost|\n"
    855                      "                                      bidirectional |\n"
     859#ifdef VBOX_WITH_SHARED_CLIPBOARD
     860                     "                            clipboard mode disabled|hosttoguest|guesttohost|\n"
     861                     "                                           bidirectional |\n"
     862# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     863                     "                            clipboard filetransfers enabled|disabled |\n"
     864# endif
     865#endif
    856866                     "                            draganddrop disabled|hosttoguest|guesttohost|\n"
    857                      "                                      bidirectional |\n"
     867                     "                                        bidirectional |\n"
    858868                     "                            vrde on|off |\n"
    859869                     "                            vrdeport <port> |\n"
  • trunk/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp

    r81087 r81287  
    164164    MODIFYVM_AUDIOIN,
    165165    MODIFYVM_AUDIOOUT,
    166     MODIFYVM_CLIPBOARD,
     166#ifdef VBOX_WITH_SHARED_CLIPBOARD
     167    MODIFYVM_CLIPBOARD_MODE,
     168# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     169    MODIFYVM_CLIPBOARD_FILE_TRANSFERS,
     170# endif
     171#endif
    167172    MODIFYVM_DRAGANDDROP,
    168173    MODIFYVM_VRDPPORT,                /* VRDE: deprecated */
     
    354359    { "--audioin",                  MODIFYVM_AUDIOIN,                   RTGETOPT_REQ_BOOL_ONOFF },
    355360    { "--audioout",                 MODIFYVM_AUDIOOUT,                  RTGETOPT_REQ_BOOL_ONOFF },
    356     { "--clipboard",                MODIFYVM_CLIPBOARD,                 RTGETOPT_REQ_STRING },
     361#ifdef VBOX_WITH_SHARED_CLIPBOARD
     362    { "--clipboard-mode",           MODIFYVM_CLIPBOARD_MODE,            RTGETOPT_REQ_STRING },
     363# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     364    { "--clipboard-file-transfers", MODIFYVM_CLIPBOARD_FILE_TRANSFERS,  RTGETOPT_REQ_STRING },
     365# endif
     366#endif
    357367    { "--draganddrop",              MODIFYVM_DRAGANDDROP,               RTGETOPT_REQ_STRING },
    358368    { "--vrdpport",                 MODIFYVM_VRDPPORT,                  RTGETOPT_REQ_STRING },     /* deprecated */
     
    24382448            }
    24392449
    2440             case MODIFYVM_CLIPBOARD:
     2450#ifdef VBOX_WITH_SHARED_CLIPBOARD
     2451            case MODIFYVM_CLIPBOARD_MODE:
    24412452            {
    24422453                ClipboardMode_T mode = ClipboardMode_Disabled; /* Shut up MSC */
     
    24512462                else
    24522463                {
    2453                     errorArgument("Invalid --clipboard argument '%s'", ValueUnion.psz);
     2464                    errorArgument("Invalid --clipboard-mode argument '%s'", ValueUnion.psz);
    24542465                    rc = E_FAIL;
    24552466                }
     
    24602471                break;
    24612472            }
     2473
     2474# ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
     2475            case MODIFYVM_CLIPBOARD_FILE_TRANSFERS:
     2476            {
     2477                BOOL fEnabled;
     2478                if (!RTStrICmp(ValueUnion.psz, "enabled"))
     2479                    fEnabled = true;
     2480                else if (!RTStrICmp(ValueUnion.psz, "disabled"))
     2481                    fEnabled = false;
     2482                else
     2483                {
     2484                    errorArgument("Invalid --clipboard-file-transfers argument '%s'", ValueUnion.psz);
     2485                    rc = E_FAIL;
     2486                }
     2487                if (SUCCEEDED(rc))
     2488                {
     2489                    CHECK_ERROR(sessionMachine, COMSETTER(ClipboardFileTransfersEnabled)(fEnabled));
     2490                }
     2491                break;
     2492            }
     2493# endif /* VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS */
     2494#endif /* VBOX_WITH_SHARED_CLIPBOARD */
    24622495
    24632496            case MODIFYVM_DRAGANDDROP:
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette