VirtualBox

Changeset 38607 in vbox


Ignore:
Timestamp:
Sep 2, 2011 11:03:22 AM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
73813
Message:

VBoxHeadless/win: console & win instances

Location:
trunk/src/VBox/Frontends/VBoxHeadless
Files:
1 added
2 edited

Legend:

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

    r33590 r38607  
    3030 PROGRAMS += VBoxHeadlessHardened
    3131 DLLS += VBoxHeadless
     32 VBOX_WITH_HEADLESS_DLL = 1
    3233else
    33  PROGRAMS += VBoxHeadless
     34 if "$(KBUILD_TARGET)" == "win"
     35  PROGRAMS += VBoxHeadlessW VBoxHeadlessC
     36  DLLS += VBoxHeadless
     37  VBOX_WITH_HEADLESS_DLL = 1
     38 else
     39  PROGRAMS += VBoxHeadless
     40 endif
    3441endif
    3542
     
    4249VBoxHeadlessHardened_NAME = VBoxHeadless
    4350
     51#
     52# Console subsystem VBoxHeadless.
     53#
     54VBoxHeadlessC_TEMPLATE = VBOXMAINCLIENTEXE
     55VBoxHeadlessC_SOURCES = VBoxHeadless-win.cpp
     56VBoxHeadlessC_NAME = VBoxHeadless
     57VBoxHeadlessC_LDFLAGS.win = /SUBSYSTEM:console
     58VBoxHeadlessC_LIBS += $(PATH_STAGE_LIB)/VBoxHeadless$(VBOX_SUFF_LIB)
     59
     60#
     61# Windows subsystem VBoxHeadless.
     62#
     63VBoxHeadlessW_EXTENDS = VBoxHeadlessC
     64VBoxHeadlessW_NAME = VBoxHeadlessW
     65VBoxHeadlessW_LDFLAGS.win = /SUBSYSTEM:windows
    4466
    4567#
    4668# VBoxHeadless
    4769#
    48 VBoxHeadless_TEMPLATE  := $(if $(VBOX_WITH_HARDENING),VBOXMAINCLIENTDLL,VBOXMAINCLIENTEXE)
     70VBoxHeadless_TEMPLATE  := $(if $(VBOX_WITH_HEADLESS_DLL),VBOXMAINCLIENTDLL,VBOXMAINCLIENTEXE)
    4971VBoxHeadless_DEFS       = VBOX_FFMPEG
    5072VBoxHeadless_SOURCES    = VBoxHeadless.cpp
  • trunk/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp

    r37473 r38607  
    13461346
    13471347#ifndef VBOX_WITH_HARDENING
     1348/*
     1349 * Used by windows exe stub code
     1350 */
     1351extern "C" DECLEXPORT(int) ExecTrustedMain(int argc, char **argv, char **envp)
     1352{
     1353    // initialize VBox Runtime
     1354    int rc = RTR3InitAndSUPLib();
     1355    if (RT_FAILURE(rc))
     1356    {
     1357        RTPrintf("VBoxHeadless: Runtime Error:\n"
     1358                 " %Rrc -- %Rrf\n", rc, rc);
     1359        switch (rc)
     1360        {
     1361            case VERR_VM_DRIVER_NOT_INSTALLED:
     1362                RTPrintf("Cannot access the kernel driver. Make sure the kernel module has been \n"
     1363                        "loaded successfully. Aborting ...\n");
     1364                break;
     1365            default:
     1366                break;
     1367        }
     1368        return 1;
     1369    }
     1370
     1371    return TrustedMain(argc, argv, envp);
     1372}
     1373
    13481374/**
    13491375 * Main entry point.
     
    13511377int main(int argc, char **argv, char **envp)
    13521378{
    1353     // initialize VBox Runtime
    1354     int rc = RTR3InitAndSUPLib();
    1355     if (RT_FAILURE(rc))
    1356     {
    1357         RTPrintf("VBoxHeadless: Runtime Error:\n"
    1358                  " %Rrc -- %Rrf\n", rc, rc);
    1359         switch (rc)
    1360         {
    1361             case VERR_VM_DRIVER_NOT_INSTALLED:
    1362                 RTPrintf("Cannot access the kernel driver. Make sure the kernel module has been \n"
    1363                         "loaded successfully. Aborting ...\n");
    1364                 break;
    1365             default:
    1366                 break;
    1367         }
    1368         return 1;
    1369     }
    1370 
    1371     return TrustedMain(argc, argv, envp);
     1379    return ExecTrustedMain(argc, argv, envp);
    13721380}
    13731381#endif /* !VBOX_WITH_HARDENING */
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