From: Cameron Gutman Date: Wed, 10 Feb 2010 00:42:46 +0000 (+0000) Subject: - Merge from trunk up to r45543 X-Git-Tag: backups/Ash_Shell@48412~1^2~272^2~5 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=e4a060ead45b9dc87a64408b6d791ea4a5fef55e;hp=2597cfe258b768473a744df30227f4067252d9b7 - Merge from trunk up to r45543 svn path=/branches/aicom-network-branch/; revision=45544 --- diff --git a/CREDITS b/CREDITS index c4d65b52327..e967d823ad6 100644 --- a/CREDITS +++ b/CREDITS @@ -16,7 +16,7 @@ Daniel Reimer David Welch Dmitry Chapyshev Emanuele Aliberti -Eric Kohl +Eric Kohl Eugene Ingerman Filip Navara Frederik Leemans @@ -31,7 +31,7 @@ Hartmut Birr Hernan Ochoa Herve Poussineau Iwan Fatahi -James B. Tabor +James Tabor Jason Eager Jason Filby Jason Weiler @@ -66,7 +66,7 @@ Royce Mitchell III Samuel Serapión Saveliy Tretiakov Stefan Ginsberg -Steven Edwards +Steven Edwards Thomas Weidenmueller Timo Kreuzer Victor Kirhenshtein diff --git a/Doxyfile b/Doxyfile index 13c48a2faca..386ca57fdf4 100644 --- a/Doxyfile +++ b/Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.5.8 +# Doxyfile 1.6.2 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project @@ -54,11 +54,11 @@ CREATE_SUBDIRS = YES # information to generate all constant output in the proper language. # The default language is English, other supported languages are: # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, -# Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, -# Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, Slovene, -# Spanish, Swedish, and Ukrainian. +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. OUTPUT_LANGUAGE = English @@ -124,7 +124,7 @@ FULL_PATH_NAMES = YES # If left blank the directory from which doxygen is run is used as the # path to strip. -STRIP_FROM_PATH = . +STRIP_FROM_PATH = # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells @@ -169,13 +169,13 @@ MULTILINE_CPP_IS_BRIEF = NO # member inherits the documentation from any documented member that it # re-implements. -INHERIT_DOCS = NO +INHERIT_DOCS = YES # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce # a new page for each member. If set to NO, the documentation of a member will # be part of the file/class/namespace that contains it. -SEPARATE_MEMBER_PAGES = NO +SEPARATE_MEMBER_PAGES = YES # The TAB_SIZE tag can be used to set the number of spaces in a tab. # Doxygen uses this value to replace tabs by spaces in code fragments. @@ -224,7 +224,8 @@ OPTIMIZE_OUTPUT_VHDL = NO # the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, # Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat # .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), -# use: inc=Fortran f=C +# use: inc=Fortran f=C. Note that for custom extensions you also need to set +# FILE_PATTERNS otherwise the files are not read by doxygen. EXTENSION_MAPPING = @@ -396,6 +397,12 @@ HIDE_SCOPE_NAMES = NO SHOW_INCLUDE_FILES = YES +# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen +# will list include files with double quotes in the documentation +# rather than with sharp brackets. + +FORCE_LOCAL_INCLUDES = NO + # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. @@ -415,6 +422,16 @@ SORT_MEMBER_DOCS = YES SORT_BRIEF_DOCS = NO +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen +# will sort the (brief and detailed) documentation of class members so that +# constructors and destructors are listed first. If set to NO (the default) +# the constructors will appear in the respective orders defined by +# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. +# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO +# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the # hierarchy of group names into alphabetical order. If set to NO (the default) # the group names will appear in their defined order. @@ -591,11 +608,13 @@ INPUT_ENCODING = UTF-8 # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 FILE_PATTERNS = *.c \ + *.cc \ *.cxx \ *.cpp \ *.c++ \ *.h \ *.hh \ + *.hxx \ *.hpp \ *.idl @@ -644,7 +663,7 @@ EXAMPLE_PATH = # and *.h) to filter out the source-files in the directories. If left # blank all files are included. -EXAMPLE_PATTERNS = +EXAMPLE_PATTERNS = * # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be # searched for input files to be used with the \include or \dontinclude @@ -710,7 +729,7 @@ STRIP_CODE_COMMENTS = YES # then for each documented function all documented # functions referencing it will be listed. -REFERENCED_BY_RELATION = NO +REFERENCED_BY_RELATION = YES # If the REFERENCES_RELATION tag is set to YES # then for each documented function all documented entities @@ -737,7 +756,7 @@ USE_HTAGS = NO # will generate a verbatim copy of the header file for each class for # which an include is specified. Set to NO to disable this. -VERBATIM_HEADERS = YES +VERBATIM_HEADERS = NO #--------------------------------------------------------------------------- # configuration options related to the alphabetical class index @@ -804,6 +823,12 @@ HTML_FOOTER = Doxygen/footer.html HTML_STYLESHEET = +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = NO + # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. @@ -937,6 +962,23 @@ QHP_SECT_FILTER_ATTRS = QHG_LOCATION = +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files +# will be generated, which together with the HTML files, form an Eclipse help +# plugin. To install this plugin and make it available under the help contents +# menu in Eclipse, the contents of the directory containing the HTML and XML +# files needs to be copied into the plugins directory of eclipse. The name of +# the directory within the plugins directory should be the same as +# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before +# the help appears. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have +# this name. + +ECLIPSE_DOC_ID = org.doxygen.Project + # The DISABLE_INDEX tag can be used to turn on/off the condensed index at # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. @@ -950,20 +992,18 @@ ENUM_VALUES_PER_LINE = 4 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index # structure should be generated to display hierarchical information. -# If the tag value is set to FRAME, a side panel will be generated +# If the tag value is set to YES, a side panel will be generated # containing a tree-like index structure (just like the one that # is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. Other possible values -# for this tag are: HIERARCHIES, which will generate the Groups, Directories, -# and Class Hierarchy pages using a tree view instead of an ordered list; -# ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which -# disables this behavior completely. For backwards compatibility with previous -# releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE -# respectively. - -GENERATE_TREEVIEW = NONE +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree @@ -979,6 +1019,26 @@ TREEVIEW_WIDTH = 250 FORMULA_FONTSIZE = 10 +# When the SEARCHENGINE tag is enabled doxygen will generate a search box +# for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using +# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets +# (GENERATE_DOCSET) there is already a search function so this one should +# typically be disabled. For large projects the javascript based search engine +# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. + +SEARCHENGINE = YES + +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be +# implemented using a PHP enabled web server instead of at the web client +# using Javascript. Doxygen will generate the search PHP script and index +# file to put on the web server. The advantage of the server +# based approach is that it scales better to large projects and allows +# full text search. The disadvances is that it is more difficult to setup +# and does not have live searching capabilities. + +SERVER_BASED_SEARCH = YES + #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- @@ -995,7 +1055,10 @@ GENERATE_LATEX = NO LATEX_OUTPUT = latex # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. +# invoked. If left blank `latex' will be used as the default command name. +# Note that when enabling USE_PDFLATEX this option is only used for +# generating bitmaps for formulas in the HTML output, but not in the +# Makefile that is written to the output directory. LATEX_CMD_NAME = latex @@ -1055,6 +1118,13 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO +# If LATEX_SOURCE_CODE is set to YES then doxygen will include +# source code with syntax highlighting in the LaTeX output. +# Note that which sources are shown also depends on other settings +# such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -1206,14 +1276,14 @@ PERLMOD_PRETTY = YES PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- -# Configuration options related to the preprocessor +# Configuration options related to the preprocessor #--------------------------------------------------------------------------- # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will # evaluate all C-preprocessor directives found in the sources and include # files. -ENABLE_PREPROCESSING = NO +ENABLE_PREPROCESSING = YES # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro # names in the source code. If set to NO (the default) only conditional @@ -1272,7 +1342,7 @@ EXPAND_AS_DEFINED = SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- -# Configuration::additions related to external references +# Configuration::additions related to external references #--------------------------------------------------------------------------- # The TAGFILES option can be used to specify one or more tagfiles. @@ -1315,7 +1385,7 @@ EXTERNAL_GROUPS = YES PERL_PATH = /usr/bin/perl #--------------------------------------------------------------------------- -# Configuration options related to the dot tool +# Configuration options related to the dot tool #--------------------------------------------------------------------------- # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will @@ -1507,12 +1577,3 @@ GENERATE_LEGEND = YES # the various graphs. DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Options related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = YES diff --git a/Makefile b/Makefile index 6a159e360fc..1e7cbd2fcbf 100644 --- a/Makefile +++ b/Makefile @@ -169,11 +169,7 @@ else endif ifeq ($(ROS_AUTOMAKE),) - ifeq ($(ARCH),i386) - ROS_AUTOMAKE=makefile.auto - else - ROS_AUTOMAKE=makefile-$(ARCH).auto - endif + ROS_AUTOMAKE=makefile-$(ARCH).auto endif all: $(ROS_AUTOMAKE) @@ -353,6 +349,7 @@ ifeq ($(HOST),mingw32-linux) endif export SEP = / mkdir = -$(Q)mkdir -p + checkpoint = $(Q)touch rm = $(Q)rm -f cp = $(Q)cp NUL = /dev/null @@ -361,6 +358,7 @@ else # mingw32-windows ROS_EMPTY = export SEP = \$(ROS_EMPTY) mkdir = -$(Q)mkdir + checkpoint = $(Q)copy /y NUL rm = $(Q)del /f /q cp = $(Q)copy /y NUL = NUL diff --git a/ReactOS-amd64.rbuild b/ReactOS-amd64.rbuild index f33c20f8be7..9d299caafb8 100644 --- a/ReactOS-amd64.rbuild +++ b/ReactOS-amd64.rbuild @@ -7,6 +7,8 @@ + + @@ -21,132 +23,31 @@ - - -Os - -ftracer - -momit-leaf-frame-pointer - - - -Os - - - -O1 - - - -O2 - - - -O3 - - - -U_X86_ - -mpreferred-stack-boundary=4 - -fno-strict-aliasing - -Wno-strict-aliasing - -Wpointer-arith - -Wno-multichar - -Wno-format - + + + -ftracer + -momit-leaf-frame-pointer + + -mpreferred-stack-boundary=4 + -m64 --win64 + + + -U_X86_ + -Wno-format + -disable-stdcall-fixup - -static - --unique=.eh_frame -file-alignment=0x1000 -section-alignment=0x1000 + --unique=.eh_frame + -static - - - - - - - - - 1 - - - - - 0 - - - - 1 - - - - - - - - 0x400 - 0x600 - 0x400 - 0x400 - 0x400 - - - - 0x500 - 0x600 - 0x500 - 0x500 - 0x500 - - - - 0x501 - 0x600 - 0x501 - 0x501 - 0x501 - - - - 0x502 - 0x600 - 0x502 - 0x502 - 0x502 - - - - 0x600 - 0x600 - 0x600 - 0x600 - 0x600 - - - . - include - include - include/psdk - include/psdk - include/dxsdk - include/dxsdk - include/crt - include/crt/mingw32 - include/ddk - include/GL - include/ndk - include/reactos - include/reactos - include/reactos/mc - include/reactos/libs - - include - include - include/reactos - include/reactos/wine - - @@ -155,173 +56,35 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + + + + + - - - - diff --git a/ReactOS-arm.rbuild b/ReactOS-arm.rbuild index aac72e02a0c..777a1aa2cc3 100644 --- a/ReactOS-arm.rbuild +++ b/ReactOS-arm.rbuild @@ -29,6 +29,8 @@ -ftracer -Wno-attributes + -U_UNICODE + -UUNICODE @@ -109,17 +111,7 @@ - - - - - - - - - - - + diff --git a/ReactOS-generic.rbuild b/ReactOS-generic.rbuild index 86d3a2df237..82159f42d0e 100644 --- a/ReactOS-generic.rbuild +++ b/ReactOS-generic.rbuild @@ -89,8 +89,6 @@ -Wall -Wno-non-virtual-dtor - -gstabs+ - -gstabs+ @@ -119,14 +117,9 @@ -fno-strict-aliasing - -Wno-strict-aliasing -Wpointer-arith -Wno-multichar - @@ -156,5 +149,4 @@ /GS- - diff --git a/ReactOS-i386.rbuild b/ReactOS-i386.rbuild index b6fc035dd91..75a6b785298 100644 --- a/ReactOS-i386.rbuild +++ b/ReactOS-i386.rbuild @@ -1,6 +1,6 @@ - + @@ -15,6 +15,7 @@ + @@ -25,6 +26,8 @@ -mpreferred-stack-boundary=2 -m32 --win32 + -gstabs+ + -gstabs+ diff --git a/base/applications/applications.rbuild b/base/applications/applications.rbuild index c1b454a1bb9..f4adbe4bd5a 100644 --- a/base/applications/applications.rbuild +++ b/base/applications/applications.rbuild @@ -79,6 +79,9 @@ + + + diff --git a/base/applications/cacls/cacls.c b/base/applications/cacls/cacls.c index 023232df44e..0ad9789862a 100644 --- a/base/applications/cacls/cacls.c +++ b/base/applications/cacls/cacls.c @@ -180,14 +180,14 @@ BOOL PrintFileDacl(IN LPTSTR FilePath, IN LPTSTR FileName) { - SIZE_T Indent; + SIZE_T Length; PSECURITY_DESCRIPTOR SecurityDescriptor; DWORD SDSize = 0; TCHAR FullFileName[MAX_PATH + 1]; BOOL Error = FALSE, Ret = FALSE; - Indent = _tcslen(FilePath) + _tcslen(FileName); - if (Indent++ > MAX_PATH - 1) + Length = _tcslen(FilePath) + _tcslen(FileName); + if (Length > MAX_PATH) { /* file name too long */ SetLastError(ERROR_FILE_NOT_FOUND); diff --git a/base/applications/cacls/cacls.rbuild b/base/applications/cacls/cacls.rbuild index e77cf691023..96b8fbee462 100644 --- a/base/applications/cacls/cacls.rbuild +++ b/base/applications/cacls/cacls.rbuild @@ -2,7 +2,6 @@ . - kernel32 advapi32 ntdll user32 diff --git a/base/applications/calc/calc.rbuild b/base/applications/calc/calc.rbuild index 76a6aee2de1..325ab22970b 100644 --- a/base/applications/calc/calc.rbuild +++ b/base/applications/calc/calc.rbuild @@ -4,7 +4,6 @@ . 1 advapi32 - kernel32 gdi32 user32 about.c diff --git a/base/applications/calc/lang/de-DE.rc b/base/applications/calc/lang/de-DE.rc index ba28b004ccb..f6513aa6dfe 100644 --- a/base/applications/calc/lang/de-DE.rc +++ b/base/applications/calc/lang/de-DE.rc @@ -324,7 +324,7 @@ END IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85 STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Statistik Box" +CAPTION "Statistikbox" FONT 8, "MS Shell Dlg" BEGIN LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT | @@ -465,11 +465,11 @@ END // FLÄCHENTYPEN STRINGTABLE DISCARDABLE BEGIN - IDS_AREA_ACRES "Acres" - IDS_AREA_ACRES_BRAZIL "Acres (Brasilien)" - IDS_AREA_ACRES_FRANCE "Acres (Frankreich)" - IDS_AREA_ACRES_SCOTS "Acres (Schottland)" - IDS_AREA_ACRES_US "Acres (USA)" + IDS_AREA_ACRES "Acre" + IDS_AREA_ACRES_BRAZIL "Acre (Brasilien)" + IDS_AREA_ACRES_FRANCE "Acre (Frankreich)" + IDS_AREA_ACRES_SCOTS "Acre (Schottland)" + IDS_AREA_ACRES_US "Acre (USA)" IDS_AREA_ARES "Ar" IDS_AREA_CHOU "Chou" IDS_AREA_DANBO "Danbo" @@ -482,21 +482,21 @@ BEGIN IDS_AREA_PYEONGBANGJA "Pyeongbangja" IDS_AREA_RAI "Rai" IDS_AREA_SE "Se" - IDS_AREA_SQUARE_CHR "Qaudratchr" - IDS_AREA_SQUARE_FATHOMS "Qaudratfathom" - IDS_AREA_SQUARE_FATHOMS_HUNGARY "Qaudratfathom (Ungarn)" - IDS_AREA_SQUARE_FEET "Qaudratfuß" - IDS_AREA_SQUARE_KILOMETERS "Qaudratkilometer" - IDS_AREA_SQUARE_LAR "Qaudratlar" - IDS_AREA_SQUARE_METER "Qaudratmeter" - IDS_AREA_SQUARE_MILES "Qaudratmeilen" - IDS_AREA_SQUARE_MILLIMETERS "Qaudratmillimeter" - IDS_AREA_SQUARE_SHAKU "Qaudratshaku" - IDS_AREA_SQUARE_TSUEN "Qaudrattsuen" - IDS_AREA_SQUARE_VA "Qaudratva" - IDS_AREA_SQUARE_YARD "Qaudratyard" + IDS_AREA_SQUARE_CHR "Quadratchr" + IDS_AREA_SQUARE_FATHOMS "Quadratfathom" + IDS_AREA_SQUARE_FATHOMS_HUNGARY "Quadratfathom (Ungarn)" + IDS_AREA_SQUARE_FEET "Quadratfuß" + IDS_AREA_SQUARE_KILOMETERS "Quadratkilometer" + IDS_AREA_SQUARE_LAR "Quadratlar" + IDS_AREA_SQUARE_METER "Quadratmeter" + IDS_AREA_SQUARE_MILES "Quadratmeilen" + IDS_AREA_SQUARE_MILLIMETERS "Quadratmillimeter" + IDS_AREA_SQUARE_SHAKU "Quadratshaku" + IDS_AREA_SQUARE_TSUEN "Quadrattsuen" + IDS_AREA_SQUARE_VA "Quadratva" + IDS_AREA_SQUARE_YARD "Quadratyard" IDS_AREA_SQUARE_CENTIMETERS "Quadratzentimeter" - IDS_AREA_SQUARE_INCHES "Qaudratzoll" + IDS_AREA_SQUARE_INCHES "Quadratzoll" IDS_AREA_TAN "Tan" IDS_AREA_TSUBO "Tsubo" END @@ -517,7 +517,7 @@ BEGIN IDS_CURRENCY_DEUTSCHE_MARK "Deutsche Mark" IDS_CURRENCY_EURO "Euro" IDS_CURRENCY_FINNISH_MARKKA "Finnische Mark" - IDS_CURRENCY_FRENCH_FRANC "Französchishe Franc" + IDS_CURRENCY_FRENCH_FRANC "Französchische Franc" IDS_CURRENCY_GREEK_DRACHMA "Griechische Drachme" IDS_CURRENCY_IRISH_POUND "Irische Pfund" IDS_CURRENCY_ITALIAN_LIRA "Italienische Lire" diff --git a/base/applications/calc/lang/nl-NL.rc b/base/applications/calc/lang/nl-NL.rc index fd3e3442a67..510352f6ee2 100644 --- a/base/applications/calc/lang/nl-NL.rc +++ b/base/applications/calc/lang/nl-NL.rc @@ -703,7 +703,7 @@ END STRINGTABLE DISCARDABLE BEGIN IDS_WEIGHT_BAHT "Baht" - IDS_WEIGHT_CARATS "Carats" + IDS_WEIGHT_CARATS "Karaat" IDS_WEIGHT_CHUNG "Chung" IDS_WEIGHT_DON "Don" IDS_WEIGHT_GEUN "Geun" diff --git a/base/applications/charmap/charmap.rbuild b/base/applications/charmap/charmap.rbuild index 1970a4a5418..76a1d64155b 100644 --- a/base/applications/charmap/charmap.rbuild +++ b/base/applications/charmap/charmap.rbuild @@ -3,7 +3,6 @@ . gdi32 - kernel32 user32 comctl32 diff --git a/base/applications/charmap/lang/ja-JP.rc b/base/applications/charmap/lang/ja-JP.rc index f59ee5ea58a..17c649a23a0 100644 --- a/base/applications/charmap/lang/ja-JP.rc +++ b/base/applications/charmap/lang/ja-JP.rc @@ -1,7 +1,7 @@ LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT IDD_CHARMAP DIALOGEX 6, 6, 293, 205 //233 -CAPTION "ƒLƒƒƒ‰ƒNƒ^[ ƒ}ƒbƒv" +CAPTION "•¶ŽšƒR[ƒh•\\" FONT 9,"MS UI Gothic",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_SYSMENU | WS_MINIMIZEBOX BEGIN @@ -18,11 +18,11 @@ BEGIN END IDD_ABOUTBOX DIALOGEX 22,16,210,182 -CAPTION "ƒLƒƒƒ‰ƒNƒ^[ ƒ}ƒbƒv‚ɂ‚¢‚Ä" +CAPTION "•¶ŽšƒR[ƒh•\\‚ɂ‚¢‚Ä" FONT 9,"MS UI Gothic",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME BEGIN - LTEXT "ƒLƒƒƒ‰ƒNƒ^[ ƒ}ƒbƒv v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36 + LTEXT "•¶ŽšƒR[ƒh•\\ v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36 PUSHBUTTON "•Â‚¶‚é", IDOK, 75, 162, 44, 15 ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30 EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE diff --git a/base/applications/charmap/lang/uk-UA.rc b/base/applications/charmap/lang/uk-UA.rc index 53627b66a6e..3c82d762f3f 100644 --- a/base/applications/charmap/lang/uk-UA.rc +++ b/base/applications/charmap/lang/uk-UA.rc @@ -21,12 +21,12 @@ BEGIN EDITTEXT IDC_TEXTBOX, 74, 186, 114, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP DEFPUSHBUTTON "Âèáðàòè", IDC_SELECT, 194, 186, 44, 13 PUSHBUTTON "Êîï³þâàòè", IDC_COPY, 242, 186, 44, 13, WS_DISABLED - //AUTOCHECKBOX "Advanced view", IDC_ADVVIEW, 10, 204, 64, 9, WS_CHILD | WS_VISIBLE | WS_TABSTOP + //AUTOCHECKBOX "Ðîçøèðåíèé âèãëÿä", IDC_ADVVIEW, 10, 204, 64, 9, WS_CHILD | WS_VISIBLE | WS_TABSTOP //EDITTEXT IDC_DISPLAY, 8, 217, 278, 13, WS_VISIBLE | WS_TABSTOP | ES_READONLY END IDD_ABOUTBOX DIALOGEX 22,16,210,182 -CAPTION "Ïðî Òàáëèöþ ñèìâîë³â" +CAPTION "Ïðî ïðîãðàìó..." FONT 8,"MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME BEGIN @@ -38,6 +38,6 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_LICENSE "Òàáëèöÿ ñèìâîë³â - â³ëüíå ïðîãðàìíå çàáåçïå÷åííÿ; Âè ìîæåòå ðîçïîâñþäæóâàòè ¿¿ òà (àáî) çì³íþâàòè, äîòðèìóþ÷èñü óìîâè ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU, îïóáë³êîâàíî¿ Ôîíäîì â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ; àáî ðåäàêö³¿ 2 Óãîäè, àáî áóäü-ÿêî¿ ðåäàêö³¿, âèïóùåíî¿ ï³çí³øå.\r\n\r\nÖÿ ïðîãðàìà ðîçïîâñþäæóºòüñÿ â íà䳿 íà òå, ùî âîíà âèÿâèòüñÿ êîðèñíîþ, àëå ÁÅÇ ÁÓÄÜ-ßÊÈÕ ÃÀÐÀÍÒ²É, âêëþ÷àþ÷è ÓßÂÍÎÞ ÃÀÐÀÍÒ²ªÞ ßÊÎÑÒ² àáî ÏÐÈÄÀÒÍÎÑÒ² äëÿ ïåâíèõ ö³ëåé. Ïîäðîáèö³ ì³ñòÿòüñÿ ó ³äêðèò³é ë³öåíç³éí³é óãîä³ GNU.\r\n\r\nÐàçîì ç ö³ºþ ïðîãðàìîþ ïîâèíåí ïîøèðþâàòèñÿ ïðèì³ðíèê ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU. ßêùî â³í â³äñóòí³é, ïîâ³äîìòå ïðî öå â Ôîíä â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." - IDS_ABOUT "&Ïðî Òàáëèöþ ñèìâîë³â..." + IDS_LICENSE "Òàáëèöÿ ñèìâîë³â - â³ëüíå ïðîãðàìíå çàáåçïå÷åííÿ; Âè ìîæåòå ðîçïîâñþäæóâàòè ¿¿ òà çì³íþâàòè, äîòðèìóþ÷èñü óìîâè ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU, îïóáë³êîâàíî¿ Ôîíäîì â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ; àáî ðåäàêö³¿ 2 Óãîäè, àáî áóäü-ÿêî¿ ðåäàêö³¿, âèïóùåíî¿ ï³çí³øå.\r\n\r\nÖÿ ïðîãðàìà ðîçïîâñþäæóºòüñÿ â íà䳿 íà òå, ùî âîíà âèÿâèòüñÿ êîðèñíîþ, àëå ÁÅÇ ÁÓÄÜ-ßÊÈÕ ÃÀÐÀÍÒ²É, âêëþ÷àþ÷è ÓßÂÍÎÞ ÃÀÐÀÍÒ²ªÞ ßÊÎÑÒ² àáî ÏÐÈÄÀÒÍÎÑÒ² äëÿ ïåâíèõ ö³ëåé. Ïîäðîáèö³ ì³ñòÿòüñÿ ó ³äêðèò³é ë³öåíç³éí³é óãîä³ GNU.\r\n\r\nÐàçîì ç ö³ºþ ïðîãðàìîþ ïîâèíåí ïîøèðþâàòèñÿ ïðèì³ðíèê ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU. ßêùî â³í â³äñóòí³é, ïîâ³äîìòå ïðî öå â Ôîíä â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + IDS_ABOUT "&Ïðî ïðîãðàìó..." END diff --git a/base/applications/charmap/lang/zh-CN.rc b/base/applications/charmap/lang/zh-CN.rc new file mode 100644 index 00000000000..9b8187200ec --- /dev/null +++ b/base/applications/charmap/lang/zh-CN.rc @@ -0,0 +1,37 @@ +// Chinese (Simplified) language resource file (Elton Chung, elton328@gmail.com) + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED + +IDD_CHARMAP DIALOGEX 6, 6, 293, 205 //233 +CAPTION "×Ö·û±í" +FONT 8,"MS Shell Dlg",0,0 +STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_SYSMENU | WS_MINIMIZEBOX +BEGIN + LTEXT "×ÖÌå:", IDC_STATIC, 6, 7, 24, 9 + COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS + PUSHBUTTON "˵Ã÷", IDC_CMHELP, 249, 5, 35, 13 + CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL, 20, 22, 266, 156 + LTEXT "´ý¸´ÖƵÄ×Ö·û:", IDC_STATIC, 6, 188, 66, 9 + EDITTEXT IDC_TEXTBOX, 74, 186, 114, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP + DEFPUSHBUTTON "Ñ¡Ôñ", IDC_SELECT, 194, 186, 44, 13 + PUSHBUTTON "¸´ÖÆ", IDC_COPY, 242, 186, 44, 13, WS_DISABLED + //AUTOCHECKBOX "Advanced view", IDC_ADVVIEW, 10, 204, 64, 9, WS_CHILD | WS_VISIBLE | WS_TABSTOP + //EDITTEXT IDC_DISPLAY, 8, 217, 278, 13, WS_VISIBLE | WS_TABSTOP | ES_READONLY +END + +IDD_ABOUTBOX DIALOGEX 22,16,210,182 +CAPTION "¹ØÓÚ×Ö·û±í" +FONT 8,"MS Shell Dlg",0,0 +STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME +BEGIN + LTEXT "×Ö·û±í v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36 + PUSHBUTTON "¹Ø±Õ", IDOK, 75, 162, 44, 15 + ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30 + EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA." + IDS_ABOUT "¹ØÓÚ(&A)..." +END diff --git a/base/applications/charmap/lang/zh-TW.rc b/base/applications/charmap/lang/zh-TW.rc new file mode 100644 index 00000000000..4cb9841adf5 --- /dev/null +++ b/base/applications/charmap/lang/zh-TW.rc @@ -0,0 +1,37 @@ +// Chinese (Traditional) language resource file (Elton Chung, elton328@gmail.com) + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL + +IDD_CHARMAP DIALOGEX 6, 6, 293, 205 //233 +CAPTION "¦r²Åªí" +FONT 8,"MS Shell Dlg",0,0 +STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_SYSMENU | WS_MINIMIZEBOX +BEGIN + LTEXT "¦rÅé¡G", IDC_STATIC, 6, 7, 24, 9 + COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE | WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS + PUSHBUTTON "»¡©ú", IDC_CMHELP, 249, 5, 35, 13 + CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_VSCROLL, 20, 22, 266, 156 + LTEXT "«Ý½Æ»sªº¦r²Å¡G", IDC_STATIC, 6, 188, 66, 9 + EDITTEXT IDC_TEXTBOX, 74, 186, 114, 13, WS_CHILD | WS_VISIBLE | WS_TABSTOP + DEFPUSHBUTTON "¿ï¾Ü", IDC_SELECT, 194, 186, 44, 13 + PUSHBUTTON "½Æ»s", IDC_COPY, 242, 186, 44, 13, WS_DISABLED + //AUTOCHECKBOX "Advanced view", IDC_ADVVIEW, 10, 204, 64, 9, WS_CHILD | WS_VISIBLE | WS_TABSTOP + //EDITTEXT IDC_DISPLAY, 8, 217, 278, 13, WS_VISIBLE | WS_TABSTOP | ES_READONLY +END + +IDD_ABOUTBOX DIALOGEX 22,16,210,182 +CAPTION "Ãö©ó¦r²Åªí" +FONT 8,"MS Shell Dlg",0,0 +STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME +BEGIN + LTEXT "¦r²Åªí v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36 + PUSHBUTTON "Ãö³¬", IDOK, 75, 162, 44, 15 + ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30 + EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA." + IDS_ABOUT "Ãö©ó(&A)..." +END diff --git a/base/applications/charmap/rsrc.rc b/base/applications/charmap/rsrc.rc index 8cb655ba503..045d05cb884 100644 --- a/base/applications/charmap/rsrc.rc +++ b/base/applications/charmap/rsrc.rc @@ -25,3 +25,5 @@ IDI_ICON ICON "res/charmap.ico" #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" #include "lang/uk-UA.rc" +#include "lang/zh-CN.rc" +#include "lang/zh-TW.rc" diff --git a/base/applications/cmdutils/dbgprint/dbgprint.rbuild b/base/applications/cmdutils/dbgprint/dbgprint.rbuild index d3c2e90b511..7fae9cfe87a 100644 --- a/base/applications/cmdutils/dbgprint/dbgprint.rbuild +++ b/base/applications/cmdutils/dbgprint/dbgprint.rbuild @@ -1,6 +1,5 @@ - kernel32 dbgprint.c diff --git a/base/applications/cmdutils/doskey/doskey.rbuild b/base/applications/cmdutils/doskey/doskey.rbuild index 4793ff300d2..f38eb3009d7 100644 --- a/base/applications/cmdutils/doskey/doskey.rbuild +++ b/base/applications/cmdutils/doskey/doskey.rbuild @@ -1,7 +1,6 @@ - kernel32 user32 doskey.c doskey.rc diff --git a/base/applications/cmdutils/doskey/doskey.rc b/base/applications/cmdutils/doskey/doskey.rc index 2d2c30bfbaf..53772107152 100644 --- a/base/applications/cmdutils/doskey/doskey.rc +++ b/base/applications/cmdutils/doskey/doskey.rc @@ -5,5 +5,8 @@ #include #include "doskey.h" + +#include "lang/bg-BG.rc" +#include "lang/de-DE.rc" #include "lang/en-US.rc" #include "lang/uk-UA.rc" diff --git a/base/applications/cmdutils/doskey/lang/bg-BG.rc b/base/applications/cmdutils/doskey/lang/bg-BG.rc new file mode 100644 index 00000000000..6ad0f1e41f4 --- /dev/null +++ b/base/applications/cmdutils/doskey/lang/bg-BG.rc @@ -0,0 +1,27 @@ +LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_HELP, "Óïðàâëÿâà íàñòðîéêèòå çà îáðàáîòêà â êîìàíäíèÿ ðåä, äíåâíèêà è ìàêðîòàòà.\n\ +\n\ +DOSKEY [/INSERT | /OVERSTRIKE] [/EXENAME=exe] [/HISTORY] [/LISTSIZE=ðàçìåð]\n\ + [/REINSTALL] [/MACROS[:exe | :ALL]] [/MACROFILE=ôàéë] [macroname=[òåêñò]]\n\ +\n\ + /INSERT Âêëþ÷âà ðåæèì íà âìúêâàíå.\n\ + /OVERSTRIKE Èçêëþ÷âà ðåæèìà íà âìúêâàíå.\n\ + /EXENAME=èìåíàexe Óêàçâà èìåòî íà ïðèëîæåíèåòî çà ïðåãëåä/ïðîìÿíà íà äíåâíèêà\n\ + è ìàêðîòàòà. Ïî ïîäðàçáèðàíå å cmd.exe.\n\ + /HISTORY Ïîêàçâà äíåâíèêà íà çàïîâåäèòå.\n\ + /LISTSIZE=ðàçìåð Óêàçâà ðàçìåðà íà äíåâíèêà çà çàïîâåäè.\n\ + /REINSTALL Èç÷èñòâà äíåâíèêà íà çàïîâåäèòå.\n\ + /MACROS Ïîêàçâà çàäàäåíèòå ìàêðîòà.\n\ + /MACROS:èìåíàexe Ïîêàçâà çàäàäåíèòå ìàêðîòà çà îïðåäåëåíî ïðèëîæåíèå.\n\ + /MACROS:ALL Ïîêàçâà çàäàäåíèòå ìàêðîòà çà âñè÷êè ïðèëîæåíèÿ.\n\ + /MACROFILE=ôàéëîâîèìå Çàðåæäà ìàêðîòà îò ôàéë.\n\ + macroname Óêàçâà èìåòî íà ìàêðîòî, êîåòî äà áúäå ñúçäàäåíî.\n\ + text Óêàçâà òåêñòúò çà çàìÿíà îò ìàêðîòî.\n" + +IDS_INVALID_MACRO_DEF, "Íåïðàâèëíî îïðåäåëåíî ìàêðî: %s\n" + +END diff --git a/base/applications/cmdutils/doskey/lang/de-DE.rc b/base/applications/cmdutils/doskey/lang/de-DE.rc new file mode 100644 index 00000000000..fc73d5dc365 --- /dev/null +++ b/base/applications/cmdutils/doskey/lang/de-DE.rc @@ -0,0 +1,28 @@ +LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_HELP, "Verwaltet Einstellungen, Verlauf und Makros der Kommandozeile.\n\ +\n\ +DOSKEY [/INSERT | /OVERSTRIKE] [/EXENAME=exe] [/HISTORY] [/LISTSIZE=size]\n\ + [/REINSTALL] [/MACROS[:exe | :ALL]] [/MACROFILE=file] [macroname=[text]]\n\ +\n\ + /INSERT Aktiviert den Einfügemodus.\n\ + /OVERSTRIKE Deaktiviert den Einfügemodus.\n\ + /EXENAME=exename Legt den Namen der Anwendung, auf die die Einstel-\n\ + lungen angewendet werden sollen, fest. Der Standard-\n\ + wert ist cmd.exe.\n\ + /HISTORY Zeigt den Befehlsverlauf an.\n\ + /LISTSIZE=size Legt die Anzahl der Befehle per Verlaufspuffer fest.\n\ + /REINSTALL Leert den Befehlsverlauf.\n\ + /MACROS Zeigt Makrodefinitionen an.\n\ + /MACROS:exename Zeigt Makrodefinitionen für eine Anwendung an.\n\ + /MACROS:ALL Zeigt Makrodefinitionen für alle Anwendungen an.\n\ + /MACROFILE=file Lädt Makrodefinitionen aus einer Datei.\n\ + macroname Legt den Namen eines zu erstellenden Makros fest.\n\ + text Legt den ersetzenden Text des Makros fest.\n" + +IDS_INVALID_MACRO_DEF, "Ungültige Makrodefinition: %s\n" + +END diff --git a/base/applications/cmdutils/doskey/lang/en-US.rc b/base/applications/cmdutils/doskey/lang/en-US.rc index 1b7028681c6..7adc23750d0 100644 --- a/base/applications/cmdutils/doskey/lang/en-US.rc +++ b/base/applications/cmdutils/doskey/lang/en-US.rc @@ -18,7 +18,7 @@ DOSKEY [/INSERT | /OVERSTRIKE] [/EXENAME=exe] [/HISTORY] [/LISTSIZE=size]\n\ /MACROS Displays macro definitions.\n\ /MACROS:exename Displays macro definitions for a specific program.\n\ /MACROS:ALL Displays macro definitions for all programs.\n\ - /MACROFILE=filename Loads macro definitions from a file.\n\ + /MACROFILE=file Loads macro definitions from a file.\n\ macroname Specifies the name of a macro to create.\n\ text Specifies the replacement text for the macro.\n" diff --git a/base/applications/cmdutils/find/find.rbuild b/base/applications/cmdutils/find/find.rbuild index 7df9b9a58bc..84a700aa724 100644 --- a/base/applications/cmdutils/find/find.rbuild +++ b/base/applications/cmdutils/find/find.rbuild @@ -1,7 +1,6 @@ - kernel32 user32 find.c find.rc diff --git a/base/applications/cmdutils/hostname/hostname.rbuild b/base/applications/cmdutils/hostname/hostname.rbuild index 4a281d45600..ed747aac6f7 100644 --- a/base/applications/cmdutils/hostname/hostname.rbuild +++ b/base/applications/cmdutils/hostname/hostname.rbuild @@ -1,7 +1,6 @@ - kernel32 hostname.c hostname.rc diff --git a/base/applications/cmdutils/lodctr/lodctr.rbuild b/base/applications/cmdutils/lodctr/lodctr.rbuild index 099497e467d..ea5e7cf1198 100644 --- a/base/applications/cmdutils/lodctr/lodctr.rbuild +++ b/base/applications/cmdutils/lodctr/lodctr.rbuild @@ -1,7 +1,6 @@ - kernel32 loadperf wine lodctr_main.c diff --git a/base/applications/cmdutils/more/more.rbuild b/base/applications/cmdutils/more/more.rbuild index bfe3b74c79c..c94585a53ba 100644 --- a/base/applications/cmdutils/more/more.rbuild +++ b/base/applications/cmdutils/more/more.rbuild @@ -1,7 +1,6 @@ - kernel32 ntdll user32 more.c diff --git a/base/applications/cmdutils/reg/De.rc b/base/applications/cmdutils/reg/De.rc index 0940640306c..504359d67a6 100644 --- a/base/applications/cmdutils/reg/De.rc +++ b/base/applications/cmdutils/reg/De.rc @@ -35,6 +35,6 @@ STRINGTABLE STRING_SUCCESS, "Der Vorgang wurde erfolgreich abgeschlossen\n" STRING_INVALID_KEY, "Fehler: Ungültiger Schlüssel\n" STRING_INVALID_CMDLINE, "Fehler: Ungültige Befehlszeilenargumente\n" - STRING_NO_REMOTE, "Fehler: Konnte Schlüssel nicht zum remote Rechner hinzufügen\n" + STRING_NO_REMOTE, "Fehler: Konnte Schlüssel nicht zum entfernten Rechner hinzufügen\n" STRING_CANNOT_FIND, "Fehler: Der angegebene Schlüssel oder Wert konnte nicht gefunden werden\n" } diff --git a/base/applications/cmdutils/reg/Ru.rc b/base/applications/cmdutils/reg/Ru.rc index cac53a3ce43..b3cfc1f0d3f 100644 --- a/base/applications/cmdutils/reg/Ru.rc +++ b/base/applications/cmdutils/reg/Ru.rc @@ -31,4 +31,9 @@ STRINGTABLE STRING_ADD_USAGE, "REG ADD <ключ> [/v <параметр> | /ve] [/t <тип>] [/s <разделитель>] [/d данные] [/f]\n" STRING_DELETE_USAGE, "REG DELETE <ключ> [/v <параметр> | /ve | /va] [/f]\n" STRING_QUERY_USAGE, "REG QUERY <ключ> [/v <параметр> | /ve] [/s]\n" + STRING_SUCCESS, "Операция успешно завершена\n" + STRING_INVALID_KEY, "Ошибка: неправильное имя ключа\n" + STRING_INVALID_CMDLINE, "Ошибка: неправильные параметры командной строки\n" + STRING_NO_REMOTE, "Ошибка: невозможно добавить ключи на удаленной машине\n" + STRING_CANNOT_FIND, "Ошибка: не удалось найти указанный ключ реестра или значение\n" } diff --git a/base/applications/cmdutils/reg/reg.c b/base/applications/cmdutils/reg/reg.c index a538d819a4b..07dbdbff367 100644 --- a/base/applications/cmdutils/reg/reg.c +++ b/base/applications/cmdutils/reg/reg.c @@ -255,7 +255,8 @@ static int reg_delete(WCHAR *key_name, WCHAR *value_name, BOOL value_empty, /* FIXME: Prompt for delete */ } - if (!value_name) + /* Delete subtree only if no /v* option is given */ + if (!value_name && !value_empty && !value_all) { if (RegDeleteTreeW(root,p)!=ERROR_SUCCESS) { @@ -279,13 +280,6 @@ static int reg_delete(WCHAR *key_name, WCHAR *value_name, BOOL value_empty, DWORD count; LONG rc; - if (value_name) - { - RegCloseKey(subkey); - reg_message(STRING_INVALID_CMDLINE); - return 1; - } - rc = RegQueryInfoKeyW(subkey, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &maxValue, NULL, NULL, NULL); if (rc != ERROR_SUCCESS) @@ -300,10 +294,10 @@ static int reg_delete(WCHAR *key_name, WCHAR *value_name, BOOL value_empty, while (1) { count = maxValue; - rc = RegEnumValueW(subkey, 0, value_name, &count, NULL, NULL, NULL, NULL); + rc = RegEnumValueW(subkey, 0, szValue, &count, NULL, NULL, NULL, NULL); if (rc == ERROR_SUCCESS) { - rc = RegDeleteValueW(subkey,value_name); + rc = RegDeleteValueW(subkey, szValue); if (rc != ERROR_SUCCESS) break; } diff --git a/base/applications/cmdutils/reg/reg.rbuild b/base/applications/cmdutils/reg/reg.rbuild index 2daf43b51f3..ce9a744808d 100644 --- a/base/applications/cmdutils/reg/reg.rbuild +++ b/base/applications/cmdutils/reg/reg.rbuild @@ -4,7 +4,6 @@ wine advapi32 user32 - kernel32 reg.c rsrc.rc diff --git a/base/applications/cmdutils/xcopy/De.rc b/base/applications/cmdutils/xcopy/De.rc index fed120e4536..3d15e780f6e 100644 --- a/base/applications/cmdutils/xcopy/De.rc +++ b/base/applications/cmdutils/xcopy/De.rc @@ -75,7 +75,7 @@ Mit:\n\ [/C] Nach Fehlern den Kopiervorgang fortsetzen\n\ [/A] Nur Dateien mit Archivbit kopieren\n\ [/M] Nur Dateien mit Archivbit kopieren, danach Archivbit löschen\n\ -[/D | /D:m-d-y] Kopiere neue Dateien und Dateien, die neuer als das\n\ +[/D | /D:M-T-J] Kopiere neue Dateien und Dateien, die neuer als das\n\ \t\tangegebene Datum sind. Wird kein Datum angegegebn, werden nur\n\ \t\tQuelldateien kopiert, die neuer sind als die Zieldatei\n\n" diff --git a/base/applications/cmdutils/xcopy/It.rc b/base/applications/cmdutils/xcopy/It.rc new file mode 100644 index 00000000000..84ca52ca911 --- /dev/null +++ b/base/applications/cmdutils/xcopy/It.rc @@ -0,0 +1,84 @@ +/* + * XCOPY - Wine-compatible xcopy program + * Italian language support + * + * Copyright (C) 2010 Luca Bennati + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "xcopy.h" + +/*UTF-8*/ +#pragma code_page(65001) + +LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL + +STRINGTABLE +{ + STRING_INVPARMS, "Numero non valido di parametri - Digita xcopy /? per l'aiuto\n" + STRING_INVPARM, "Parametro '%s' non valido - Digita xcopy /? per l'aiuto\n" + STRING_PAUSE, "Premi Invio per iniziare a copiare\n" + STRING_SIMCOPY, "%d file(s) sarebbero copiati\n" + STRING_COPY, "%d file(s) copiati\n" + STRING_QISDIR, "'%s' è il nome di un file o una cartella\n" \ + "sull'obiettivo?\n" \ + "(F - File, C - Cartella)\n" + STRING_SRCPROMPT,"%s? (Sì|No)\n" + STRING_OVERWRITE,"Sovrascrivere %s? (Sì|No|Tutti)\n" + STRING_COPYFAIL, "La copia di '%s' in '%s' è fallita con r/c %d\n" + STRING_OPENFAIL, "Impossibile aprire '%s'\n" + STRING_READFAIL, "Errore durante la lettura di '%s'\n" + STRING_YES_CHAR, "S" + STRING_NO_CHAR, "N" + STRING_ALL_CHAR, "T" + STRING_FILE_CHAR,"F" + STRING_DIR_CHAR, "C" + + STRING_HELP, +"XCOPY - Copia file(s) e alberi di cartelle sorgenti in una destinazione\n\ +\n\ +Sintassi:\n\ +XCOPY sorgente [destinazione] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\ +\t [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\ +\n\ +Dove:\n\ +\n\ +[/I] Assumi una cartella se la destinazione non esiste e sono copiati 2 o\n\ +\tpiù files\n\ +[/S] Copia le cartelle e le sottocartelle\n\ +[/E] Copia le cartelle e le sottocartelle, includendo quelle vuote\n\ +[/Q] Non mostrare i nomi durante la copia, modalità silenziosa.\n\ +[/F] Mostra i nomi completi della sorgente e della destinazione durante la copia\n\ +[/L] Simula l'operazione, mostrando i nome che sarebbero copiati\n\ +[/W] Prompts before beginning the copy operation\n\ +[/T] Crea la struttura di cartelle vuote ma non copia i files\n\ +[/Y] Disabilita le conferme quando sono sovrascritti files\n\ +[/-Y] Abilita le conferme quando sono sovrascritti files\n\ +[/P] Chiede conferma per ogni file sorgente prima di copiare\n\ +[/N] Copia usando gli short names\n\ +[/U] Copia solo files che sono già presenti nella destinazione\n\ +[/R] Sovrascrivi ogni file che abbia l'attributo Sola Lettura\n\ +[/H] Includi files nascosti e di sistema nella copia\n\ +[/C] Continua anche se accade un errore durante la copia\n\ +[/A] Copia solo files che abbiano l'attributo Archivio\n\ +[/M] Copia solo files che abbiano l'attributo Archivio, rimuovendo\n\ +\tl'attributo\n\ +[/D | /D:m-g-a] Copia i nuovi files o quelli modificati dopo la data fornita.\n\ +\t\tSe nessuna data è stata fornita, copia solo se la destinazione è più vecchia\n\ +\t\tdella sorgente\n\n" + +} +#pragma code_page(default) diff --git a/base/applications/cmdutils/xcopy/Uk.rc b/base/applications/cmdutils/xcopy/Uk.rc new file mode 100644 index 00000000000..d25e6483dcf --- /dev/null +++ b/base/applications/cmdutils/xcopy/Uk.rc @@ -0,0 +1,85 @@ +/* + * XCOPY - Wine-compatible xcopy program + * Ukrainian language support + * + * Copyright (C) 2007 J. Edmeades + * Copyright (C) 2010 I. Paliychuk + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "xcopy.h" + +/* UTF-8 */ +#pragma code_page(65001) + +LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT + +STRINGTABLE +{ + STRING_INVPARMS, "Невірна кількість параметрів - Введіть xcopy /? для довідки\n" + STRING_INVPARM, "Невірний параметр '%s' - Введіть xcopy /? для довідки\n" + STRING_PAUSE, "Натисніть щоб почати копіювання\n" + STRING_SIMCOPY, "%d файл(ів) буде скопійовано\n" + STRING_COPY, "%d файл(ів) скопійовано\n" + STRING_QISDIR, "'%s' є файлом чи директорією\n" \ + "on the target?\n" \ + "(F - Файл, D - Директорія)\n" + STRING_SRCPROMPT,"%s? (Yes|No)\n" + STRING_OVERWRITE,"Переписати %s? (Yes|No|All)\n" + STRING_COPYFAIL, "Під час копіювання '%s' в '%s' сталась помилка r/c %d\n" + STRING_OPENFAIL, "Не вдалось відкрити '%s'\n" + STRING_READFAIL, "Помилка читання '%s'\n" + STRING_YES_CHAR, "Y" + STRING_NO_CHAR, "N" + STRING_ALL_CHAR, "A" + STRING_FILE_CHAR,"F" + STRING_DIR_CHAR, "D" + + STRING_HELP, +"XCOPY - Копіює файли та дерева директорій за призначенням\n\ +\n\ +Syntax:\n\ +XCOPY source [dest] [/I] [/S] [/Q] [/F] [/L] [/W] [/T] [/N] [/U]\n\ +\t [/R] [/H] [/C] [/P] [/A] [/M] [/E] [/D] [/Y] [/-Y]\n\ +\n\ +Where:\n\ +\n\ +[/I] Assume directory if destination does not exist and copying 2 or\n\ +\tmore files\n\ +[/S] Копіює директорії та піддиректорії\n\ +[/E] Копіює директорії та піддиректорії, включно з порожніми\n\ +[/Q] Do not list names during copy, ie quiet.\n\ +[/F] Під час копіювання відображає повні імена початкових і кінцевих файлів\n\ +[/L] Simulate operation, showing names which would be copied\n\ +[/W] Питає підтвердження перед початком копіювання\n\ +[/T] Створює структуру каталогів але не копіює файли\n\ +[/Y] Suppress prompting when overwriting files\n\ +[/-Y] Питає підтвердження на перезапис файлів\n\ +[/P] Prompts on each source file before copying\n\ +[/N] Копіює, використовуючи короткі імена\n\ +[/U] Copy only files which already exist in destination\n\ +[/R] Перезаписує файли, доступні лише для читання\n\ +[/H] Include hidden and system files in the copy\n\ +[/C] Продовжує роботу, навіть якщо при копіюванні виникла помилка\n\ +[/A] Копіює лише файли з властивістю АРХІВНИЙ\n\ +[/M] Копіює лише файли з властивістю АРХІВНИЙ, видаляє\n\ +\властивість АРХІВНИЙ\n\ +[/D | /D:m-d-y] Копіює лише нові файли або ті, які були змінені після вказаної дати.\n\ +\t\tЯкщо дата не вказана, only copy if destination is older\n\ +\t\tthan source\n\n" + +} +#pragma code_page(default) diff --git a/base/applications/cmdutils/xcopy/rsrc.rc b/base/applications/cmdutils/xcopy/rsrc.rc index 13cd86fcd57..6d7817cf4cd 100644 --- a/base/applications/cmdutils/xcopy/rsrc.rc +++ b/base/applications/cmdutils/xcopy/rsrc.rc @@ -30,6 +30,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include "De.rc" #include "En.rc" #include "Fr.rc" +#include "It.rc" #include "Ja.rc" #include "Ko.rc" #include "Lt.rc" @@ -39,3 +40,4 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include "Pt.rc" #include "Ru.rc" #include "Si.rc" +#include "Uk.rc" diff --git a/base/applications/cmdutils/xcopy/xcopy.c b/base/applications/cmdutils/xcopy/xcopy.c index eaff10cdc0a..f996144d543 100644 --- a/base/applications/cmdutils/xcopy/xcopy.c +++ b/base/applications/cmdutils/xcopy/xcopy.c @@ -261,10 +261,10 @@ int wmain (int argc, WCHAR *argvW[]) WINE_TRACE("Destination : '%s'\n", wine_dbgstr_w(supplieddestination)); /* Extract required information from source specification */ - rc = XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags); + XCOPY_ProcessSourceParm(suppliedsource, sourcestem, sourcespec, flags); /* Extract required information from destination specification */ - rc = XCOPY_ProcessDestParm(supplieddestination, destinationstem, + XCOPY_ProcessDestParm(supplieddestination, destinationstem, destinationspec, sourcespec, flags); /* Trace out the resulting information */ diff --git a/base/applications/cmdutils/xcopy/xcopy.rbuild b/base/applications/cmdutils/xcopy/xcopy.rbuild index 9841a3a2a0f..2e3e1a9809d 100644 --- a/base/applications/cmdutils/xcopy/xcopy.rbuild +++ b/base/applications/cmdutils/xcopy/xcopy.rbuild @@ -5,7 +5,6 @@ wine shell32 user32 - kernel32 xcopy.c rsrc.rc diff --git a/base/applications/control/control.rbuild b/base/applications/control/control.rbuild index 5f8d580188d..2fe410ec9c7 100644 --- a/base/applications/control/control.rbuild +++ b/base/applications/control/control.rbuild @@ -3,7 +3,6 @@ . advapi32 - kernel32 shell32 control.c control.rc diff --git a/base/applications/downloader/downloader.rbuild b/base/applications/downloader/downloader.rbuild index 6aca8fc5acc..9ea43dc81f4 100644 --- a/base/applications/downloader/downloader.rbuild +++ b/base/applications/downloader/downloader.rbuild @@ -5,7 +5,6 @@ . . - kernel32 advapi32 ntdll user32 diff --git a/base/applications/downloader/lang/de-DE.rc b/base/applications/downloader/lang/de-DE.rc index 087a14c6325..0b29796491c 100644 --- a/base/applications/downloader/lang/de-DE.rc +++ b/base/applications/downloader/lang/de-DE.rc @@ -15,11 +15,11 @@ STYLE DS_SHELLFONT | DS_CENTER | WS_BORDER | WS_CAPTION | WS_POPUP | WS_SYSMENU CAPTION "Einstellungen" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Download Ordner:", -1, 6, 10, 140, 8 + LTEXT "Downloadordner:", -1, 6, 10, 140, 8 EDITTEXT IDC_DOWNLOAD_FOLDER_EDIT, 6, 20, 205, 14, WS_VISIBLE | WS_TABSTOP PUSHBUTTON "W&ähle...", IDC_CHOOSE_BUTTON, 216, 20, 45, 14 AUTOCHECKBOX "&Installationsdateien nach dem Setup löschen", IDC_DELINST_FILES_CHECKBOX, 8, 40, 210, 10, WS_GROUP - LTEXT "Update Server:", -1, 6, 55, 140, 8 + LTEXT "Updateserver:", -1, 6, 55, 140, 8 EDITTEXT IDC_UPDATE_SERVER_EDIT, 6, 65, 255, 14, WS_VISIBLE | WS_TABSTOP DEFPUSHBUTTON "&OK", IDOK, 147, 90, 54, 15 PUSHBUTTON "&Abbrechen", IDCANCEL, 207, 90, 54, 15 @@ -31,7 +31,7 @@ BEGIN IDS_WELCOME_TITLE "Willkommen im ReactOS Downloader" IDS_WELCOME "Bitte wählen Sie links eine Kategorie. Dies ist Version 1.1." IDS_NO_APP_TITLE "Keine Anwendung ausgewählt" - IDS_NO_APP "Bitte wählen Sie eine Anwendung, bevor Sie die Download-Schaltfläche betätigen. Wenn Sie Hilfe benötigen, drücken Sie die Hilfe-Schaltfläche in der oberen rechten Ecke." + IDS_NO_APP "Bitte wählen Sie eine Anwendung aus, bevor Sie die Download-Schaltfläche betätigen. Wenn Sie Hilfe benötigen, drücken Sie die Hilfe-Schaltfläche in der oberen rechten Ecke." IDS_UPDATE_TITLE "Update" IDS_UPDATE "Diese Funktion wurde noch nicht implementiert." IDS_HELP_TITLE "Hilfe" @@ -41,20 +41,20 @@ BEGIN IDS_CHOOSE_SUB "Bitte wählen Sie eine Unterkategorie." IDS_CHOOSE_CATEGORY "Bitte wählen Sie eine Kategorie." IDS_CHOOSE_BOTH "Bitte wählen Sie eine Unterkategorie oder eine Anwendung." - IDS_XMLERROR_1 "XML Datei nicht gefunden!" - IDS_XMLERROR_2 "XML Datei kann nicht verarbeitet werden!" + IDS_XMLERROR_1 "XML-Datei nicht gefunden!" + IDS_XMLERROR_2 "XML-Datei kann nicht verarbeitet werden!" IDS_DOWNLOAD_ERROR "Die Datei konnte nicht heruntergeladen werden.\nBitte prüfen sie, ob eine Verbindung zum Internet besteht." IDS_VERSION "Version: " IDS_LICENCE "Lizenz: " IDS_MAINTAINER "Maintainer: " IDS_APPS_TITLE "Anwendungen" IDS_CATS_TITLE "Kategorien" - IDS_CHOOSE_FOLDER "Bitte wählen Sie den Ordner..." + IDS_CHOOSE_FOLDER "Bitte wählen Sie den Ordner aus..." IDS_NOTCREATE_REGKEY "Registryschlüssel könnte nicht erstellt werden." IDS_DOWNLOAD_FOLDER "Downloader" IDS_UNABLECREATE_FOLDER "Es konnte kein Ordner mit diesem Namen erstellt werden!" IDS_UPDATE_URL "http://svn.reactos.org" - IDS_INSTALL_DEP "%s wird benötigt um %s ausführen zu können. Soll %s jetzt installiert werden?" + IDS_INSTALL_DEP "%s wird benötigt, um %s ausführen zu können. Soll %s jetzt installiert werden?" TTT_HELPBUTTON "Hilfe über den Downloader" TTT_UPDATEBUTTON "Noch nicht vorhanden" TTT_PROFBUTTON "Konfiguriert den Downloader" diff --git a/base/applications/dxdiag/dxdiag.rbuild b/base/applications/dxdiag/dxdiag.rbuild index d4d336f2f3d..1da09c53cdd 100644 --- a/base/applications/dxdiag/dxdiag.rbuild +++ b/base/applications/dxdiag/dxdiag.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 advapi32 comctl32 diff --git a/base/applications/dxdiag/lang/de-DE.rc b/base/applications/dxdiag/lang/de-DE.rc index 8a572b65576..e79530d5bed 100644 --- a/base/applications/dxdiag/lang/de-DE.rc +++ b/base/applications/dxdiag/lang/de-DE.rc @@ -148,9 +148,9 @@ IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN FONT 8, "MS Shell Dlg" BEGIN - GROUPBOX "DirectInput Geräte", -1, 10, 10, 452, 80 + GROUPBOX "DirectInput-Geräte", -1, 10, 10, 452, 80 CONTROL "", IDC_LIST_DEVICE, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 - GROUPBOX "Eingabebezogene Geräte", -1, 10, 100, 452, 60 + GROUPBOX "Eingabegeräte", -1, 10, 100, 452, 60 CONTROL "", IDC_TREE_PORT, "SysTreeView32", TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 20, 112, 432, 40, 0x00000200 GROUPBOX "Hinweis", -1, 10, 170, 452, 50 EDITTEXT IDC_RICH_INFO, 20, 182, 432, 30, WS_DISABLED | WS_TABSTOP @@ -172,7 +172,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_MAIN_DIALOG "ReactX Diagnoseprogramm" + IDS_MAIN_DIALOG "ReactX-Diagnoseprogramm" IDS_SYSTEM_DIALOG "System" IDS_DISPLAY_DIALOG "Anzeige" IDS_SOUND_DIALOG "Sound" @@ -193,7 +193,7 @@ BEGIN IDS_DEVICE_CONTROLLER "Controllererkennung" IDS_DEVICE_MANUFACTURER "Herstellererkennung" IDS_DEVICE_PRODUCT "Produkterkennung" - IDS_DEVICE_FORCEFEEDBACK "Force Feedback-Treiber" + IDS_DEVICE_FORCEFEEDBACK "Force-Feedback-Treiber" IDS_NOT_APPLICABLE "Nicht zutreffend" IDS_OPTION_YES "Ja" IDS_DIRECTPLAY_COL_NAME1 "Name" @@ -204,20 +204,20 @@ BEGIN IDS_DIRECTPLAY8_SERIALSP "DirectPlay8 serieller Dienstanbieter" IDS_DIRECTPLAY8_IPXSP "DirectPlay8-IPX-Dienstanbieter" IDS_DIRECTPLAY8_TCPSP "DirectPlay8-TCP/IP-Dienstanbieter" - IDS_DIRECTPLAY_TCPCONN "TCP/IP Verbindung für DirectPlay" - IDS_DIRECTPLAY_IPXCONN "IPX Verbindung für DirectPlay" + IDS_DIRECTPLAY_TCPCONN "TCP/IP-Verbindung für DirectPlay" + IDS_DIRECTPLAY_IPXCONN "IPX-Verbindung für DirectPlay" IDS_DIRECTPLAY_MODEMCONN "Modemverbindung für DirectPlay" IDS_DIRECTPLAY_SERIALCONN "Serielle Verbindung für DirectPlay" IDS_REG_SUCCESS "OK" IDS_REG_FAIL "Fehler" - IDS_DDTEST_ERROR "Test failed!" - IDS_DDTEST_DESCRIPTION "This will start DirecDraw interface test. Continue?" - IDS_DDPRIMARY_DESCRIPTION "This test will use DirectDraw to draw on primary surface. Black and white rectangles should be drawn. Continue?" - IDS_DDPRIMARY_RESULT "Did you see black and white rectangles?" - IDS_DDOFFSCREEN_DESCRIPTION "This test will use DirectDraw to draw in an offscreen buffer. Moving white rectangle should be drawn. Continue?" - IDS_DDOFFSCREEN_RESULT "Did you see white moving reactangle?" - IDS_DDFULLSCREEN_DESCRIPTION "This test will use DirectDraw to draw in a fullscreen mode. Moving white rectangle should be drawn. Continue?" - IDS_DDFULLSCREEN_RESULT "Did you see white moving reactangle in a fullscreen mode?" + IDS_DDTEST_ERROR "Test fehlgeschlagen!" + IDS_DDTEST_DESCRIPTION "Dies wird den DirectDraw-Interfacetest starten. Fortfahren?" + IDS_DDPRIMARY_DESCRIPTION "Dieser Test wird DirectDraw benutzen, um auf Ihrem primären Bildschirm etwas darzustellen. Schwarze und weiße Rechtecke sollten zu sehen sein. Fortfahren?" + IDS_DDPRIMARY_RESULT "Haben Sie schwarze und weiße Rechtecke gesehen?" + IDS_DDOFFSCREEN_DESCRIPTION "Dieser Test wird DirectDraw benutzen, um im Offscreen-Buffer zu zeichnen. Ein bewegtes weißes Rechteck sollte zu sehen sein. Fortfahren?" + IDS_DDOFFSCREEN_RESULT "Haben Sie das bewegte weiße Rechteck gesehen?" + IDS_DDFULLSCREEN_DESCRIPTION "Dieser Test wird DirectDraw benutzen, um im Vollbildmodus zu zeichnen. Ein bewegtes weißes Rechteck sollte zu sehen sein. Fortfahren?" + IDS_DDFULLSCREEN_RESULT "Haben Sie das bewegte weiße Rechteck im Vollbildmodus gesehen?" IDS_FORMAT_ADAPTER_MEM "%u MB" IDS_FORMAT_ADAPTER_MODE "%04u x %04u (%u bit)(%uHz)" IDS_OPTION_NO "Nein" diff --git a/base/applications/dxdiag/lang/en-US.rc b/base/applications/dxdiag/lang/en-US.rc index 824e377be51..b03b265d011 100644 --- a/base/applications/dxdiag/lang/en-US.rc +++ b/base/applications/dxdiag/lang/en-US.rc @@ -26,7 +26,7 @@ BEGIN LTEXT "Operating System:", -1, 70, 90, 80, 10, SS_RIGHT LTEXT "Language:", -1, 70, 100, 80, 10, SS_RIGHT LTEXT "System Manufacturer:", -1, 70, 110, 80, 10, SS_RIGHT - LTEXT "System Modell:", -1, 70, 120, 80, 10, SS_RIGHT + LTEXT "System Model:", -1, 70, 120, 80, 10, SS_RIGHT LTEXT "BIOS:", -1, 70, 130, 80, 10, SS_RIGHT LTEXT "Processor:", -1, 70, 140, 80, 10, SS_RIGHT LTEXT "Memory:", -1, 70, 150, 80, 10, SS_RIGHT diff --git a/base/applications/dxdiag/lang/ua-UA.rc b/base/applications/dxdiag/lang/ua-UA.rc new file mode 100644 index 00000000000..4acffc0173d --- /dev/null +++ b/base/applications/dxdiag/lang/ua-UA.rc @@ -0,0 +1,232 @@ +/* + * PROJECT: ReactOS dxdiag + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/dxdiag/lang/uk-UA.rc + * PURPOSE: Ukraianian Language File for ReactOS dxdiag + * TRANSLATOR: Sakara Yevhen + */ + +LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT + +IDD_MAIN_DIALOG DIALOGEX DISCARDABLE 0, 0, 478, 280 +STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | + WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | + WS_THICKFRAME +CAPTION "Çàñ³á ä³àãíîñòèêè ReactX" +FONT 8, "MS Shell Dlg" +BEGIN + CONTROL "Tab1",IDC_TAB_CONTROL,"SysTabControl32",WS_TABSTOP,2,2,474,250 + PUSHBUTTON "&Äîâ³äêà", IDC_BUTTON_HELP, 2, 260, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + DEFPUSHBUTTON "&Íàñòóïíà ñòîð³íêà", IDC_BUTTON_NEXT, 203, 260, 94, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "&Çáåðåãòè âñþ ³íôîðìàö³þ...", IDC_BUTTON_SAVE_INFO, 301, 260, 120, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "&Âèõ³ä", IDC_BUTTON_EXIT, 425, 260, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP +END + +IDD_SYSTEM_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 190 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + LTEXT "Öÿ ïðîãðàìà äîçâîëÿº îòðèìàòè äîêëàäí³ â³äîìîñò³ ïðî âñòàíîâëåí³ êîìïîíåíòè ³ äðàéâåðè ReactX.", -1, 10, 10, 443, 17 + LTEXT "ßêùî âè çíàºòå ìîæëèâó ïðè÷èíó íåïîëàäêè, ìîæíà â³äðàçó âèáðàòè â³äïîâ³äíó âêëàäêó.  ³íøîìó âèïàäêó âèêîðèñòîâóéòå êíîïêó ""Íàñòóïíà ñòîð³íêà"" äëÿ ïîñë³äîâíîãî ïåðåãëÿäó ñòîð³íîê.", -1, 10, 30, 443, 25 + GROUPBOX "³äîìîñò³ ïðî ñèñòåìó", -1, 10, 58, 443, 130, SS_RIGHT + LTEXT "Ïîòî÷í³ ÷àñ ³ äàòà:", -1, 70, 70, 80, 10, SS_RIGHT + LTEXT "²ì'ÿ êîìï'þòåðà:", -1, 70, 80, 80, 10, SS_RIGHT + LTEXT "Îïåðàö³éíà ñèñòåìà:", -1, 50, 90, 100, 10, SS_RIGHT + LTEXT "Ìîâà:", -1, 70, 100, 80, 10, SS_RIGHT + LTEXT "Âèðîáíèê êîìï'þòåðà:", -1, 50, 110, 100, 10, SS_RIGHT + LTEXT "Ìîäåëü êîìï'þòåðà:", -1, 70, 120, 80, 10, SS_RIGHT + LTEXT "BIOS:", -1, 70, 130, 80, 10, SS_RIGHT + LTEXT "Ïðîöåñîð:", -1, 70, 140, 80, 10, SS_RIGHT + LTEXT "Ïàì'ÿòü:", -1, 70, 150, 80, 10, SS_RIGHT + LTEXT "Ôàéë ï³äêà÷êè:", -1, 70, 160, 80, 10, SS_RIGHT + LTEXT "Âåðñ³ÿ ReactX:", -1, 70, 170, 80, 10, SS_RIGHT + LTEXT "", IDC_STATIC_TIME, 155, 70, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_COMPUTER, 155, 80, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_OS, 155, 90, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_LANG, 155, 100, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MANU, 155, 110, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MODEL, 155, 120, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_BIOS, 155, 130, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_PROC, 155, 140, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MEM, 155, 150, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_SWAP, 155, 160, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_VERSION, 155, 170, 195, 10, SS_LEFT +END + +IDD_DISPLAY_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Ïðèñòð³é", -1, 10, 10, 220, 100 + RTEXT "Íàçâà:", -1, 20, 25, 70, 10 + RTEXT "Âèðîáíèê:", -1, 20, 35, 70, 10 + RTEXT "Òèï ì³êðîñõåì:", -1, 20, 45, 70, 10 + RTEXT "Òèï êîíâåðòåðà DAC:", -1, 15, 55, 75, 10 + RTEXT "Âñüîãî ïàì'ÿò³:", -1, 20, 65, 70, 10 + RTEXT "Ðåæèì åêðàíó:", -1, 20, 75, 70, 10 + RTEXT "Ìîí³òîð:", -1, 20, 85, 70, 10 + LTEXT "", IDC_STATIC_ADAPTER_ID, 95, 25, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_VENDOR, 95, 35, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_CHIP, 95, 45, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_DAC, 95, 55, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_MEM, 95, 65, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_MODE, 95, 75, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_MONITOR, 95, 85, 130, 10 + + GROUPBOX "Äðàéâåðè", -1, 240, 10, 220, 100 + RTEXT "Ãîëîâíèé:", -1, 245, 30, 55, 10 + RTEXT "Âåðñ³ÿ:", -1, 245, 40, 55, 10 + RTEXT "Äàòà:", -1, 245, 50, 55, 10 + RTEXT "ϳäïèñ:", -1, 245, 60, 55, 10 + RTEXT "̳í³-VDD:", -1, 245, 70, 55, 10 + RTEXT "VDD:", -1, 245, 80, 55, 10 + RTEXT "Âåðñ³ÿ DDI:", -1, 245, 90, 55, 10 + LTEXT "", IDC_STATIC_ADAPTER_DRIVER, 305, 30, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_VERSION, 305, 40, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_DATE, 305, 50, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_LOGO, 305, 60, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_MINIVDD, 305, 70, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_VDD, 305, 80, 130, 10 + LTEXT "", IDC_STATIC_ADAPTER_DDI, 305, 90, 130, 10 + + GROUPBOX "Ìîæëèâîñò³ ReactX", -1, 10, 115, 450, 65 + RTEXT "Ïðèñêîðåííÿ DirectDraw:", -1, 15, 130, 110, 12 + RTEXT "Ïðèñêîðåííÿ Direct3D:", -1, 15, 145, 110, 12 + RTEXT "Ïðèñêîðåííÿ òåêñòóð AGP:", -1, 15, 160, 110, 12 + LTEXT "", IDC_STATIC_DDSTATE, 130, 130, 40, 10 + LTEXT "", IDC_STATIC_D3DSTATE, 130, 145, 40, 10 + LTEXT "", IDC_STATIC_AGPSTATE, 130, 160, 40, 10 + PUSHBUTTON "Óâ³ìêíóòè", IDC_BUTTON_DDRAW, 170, 126, 60, 14, WS_DISABLED + PUSHBUTTON "Óâ³ìêíóòè", IDC_BUTTON_D3D, 170, 142, 60, 14, WS_DISABLED + PUSHBUTTON "Óâ³ìêíóòè", IDC_BUTTON_AGP, 170, 158, 60, 14, WS_DISABLED + PUSHBUTTON "Ïåðåâ³ðêà DirectDraw", IDC_BUTTON_TESTDD, 250, 126, 80, 14 + PUSHBUTTON "Ïåðåâ³ðêà Direct3D", IDC_BUTTON_TEST3D, 250, 142, 80, 14, WS_DISABLED + + GROUPBOX "Ïðèì³òêè", -1, 10, 185, 450, 34 + EDITTEXT IDC_TEXT_INFO, 20, 195, 432, 18, WS_DISABLED | WS_TABSTOP +END + + +IDD_SOUND_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Ïðèñòð³é", -1, 10, 10, 250, 100 + RTEXT "Íàçâà:", -1, 20, 25, 70, 10 + RTEXT "Êîä ïðèñòðîþ:", -1, 20, 35, 70, 10 + RTEXT "Êîä âèðîáíèêà:", -1, 20, 45, 70, 10 + RTEXT "Êîä ïðîäóêòó:", -1, 20, 55, 70, 10 + RTEXT "Òèï:", -1, 20, 65, 70, 10 + RTEXT "Çà çàìîâ÷óâàííÿì:", -1, 20, 75, 70, 10 + LTEXT "", IDC_STATIC_DSOUND_NAME, 95, 25, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_DEVICEID, 95, 35, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_VENDORID, 95, 45, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_PRODUCTID, 95, 55, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_TYPE, 95, 65, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_STANDARD, 95, 75, 150, 10 + GROUPBOX "Äðàéâåðè", -1, 270, 10, 190, 100 + RTEXT "Íàçâà:", -1, 275, 25, 55, 10 + RTEXT "Âåðñ³ÿ:", -1, 275, 35, 55, 10 + RTEXT "Äàòà:", -1, 275, 45, 55, 10 + RTEXT "ϳäïèñ:", -1, 275, 55, 55, 10 + RTEXT "²íø³ ôàéëè:", -1, 275, 65, 55, 10 + RTEXT "Ïîñòà÷àëüíèê:", -1, 275, 75, 55, 10 + LTEXT "", IDC_STATIC_DSOUND_DRIVER, 335, 25, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_VERSION, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_DATE, 335, 45, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_LOGO, 335, 55, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_FILES, 335, 65, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_PROVIDER, 335, 75, 100, 10 + GROUPBOX "Ìîæëèâîñò³ ReactX", -1, 10, 115, 450, 60 + CONTROL "", IDC_SLIDER_DSOUND, "msctls_trackbar32", TBS_BOTTOM | TBS_AUTOTICKS | WS_TABSTOP, 120, 135, 80, 17 + RTEXT "гâåíü àïàðàòíîãî\nïðèñêîðåííÿ:", -1, 20, 135, 90, 20 + PUSHBUTTON "Ïåðåâ³ðêà DirectSound", IDC_BUTTON_TESTDSOUND, 270, 130, 80, 14 + GROUPBOX "Ïðèì³òêè", -1, 10, 180, 450, 40 + EDITTEXT IDC_TEXT_DSOUNDINFO, 20, 190, 432, 20, WS_DISABLED | WS_TABSTOP +END + +IDD_MUSIC_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + + +IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Ïðèñòðî¿ DirectInput", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_DEVICE, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 20, 432, 60 + GROUPBOX "Ïðèñòðî¿ ââåäåííÿ", -1, 10, 100, 452, 60 + CONTROL "", IDC_TREE_PORT, "SysTreeView32", TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 20, 110, 432, 40, 0x00000200 + GROUPBOX "²íôîðìàö³ÿ", -1, 10, 170, 452, 50 + EDITTEXT IDC_RICH_INFO, 20, 180, 432, 30, WS_DISABLED | WS_TABSTOP +END + +IDD_NETWORK_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "Çàðåºñòðîâàí³ ïîñòà÷àëüíèêè DirectPlay", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_PROVIDER, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 +END + +IDD_HELP_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_MAIN_DIALOG "Çàñ³á ä³àãíîñòèêè ReactX" + IDS_SYSTEM_DIALOG "Ñèñòåìà" + IDS_DISPLAY_DIALOG "Åêðàí" + IDS_SOUND_DIALOG "Çâóê" + IDS_MUSIC_DIALOG "Ìóçèêà" + IDS_INPUT_DIALOG "Ââåäåííÿ" + IDS_NETWORK_DIALOG "Ìåðåæà" + IDS_HELP_DIALOG "Äîâ³äêà" + IDS_FORMAT_MB "%I64uÌÁ ÎÇÓ" + IDS_FORMAT_SWAP "%I64u ÌÁ âèêîðèñòàíî, %I64u ÌÁ â íàÿâíîñò³" + IDS_FORMAT_UNIPROC "%s (%u ÖÏ)" + IDS_FORMAT_MPPROC "%s (%u ÖÏ)" + IDS_VERSION_UNKNOWN "Íåâ³äîìà âåðñ³ÿ" + IDS_DEVICE_STATUS_ATTACHED "ϳä'ºäíàíî" + IDS_DEVICE_STATUS_MISSING "³ä'ºäíàíî" + IDS_DEVICE_STATUS_UNKNOWN "Íåâ³äîìî" + IDS_DEVICE_NAME "Íàçâà ïðèñòðîþ" + IDS_DEVICE_STATUS "Ñòàí" + IDS_DEVICE_CONTROLLER "ID êîíòðîëåðà" + IDS_DEVICE_MANUFACTURER "ID âèðîáíèêà" + IDS_DEVICE_PRODUCT "ID ïðîäóêòó" + IDS_DEVICE_FORCEFEEDBACK "Äðàéâåð Force Feedback" + IDS_NOT_APPLICABLE "Í/Ä" + IDS_OPTION_YES "Òàê" + IDS_DIRECTPLAY_COL_NAME1 "Íàçâà" + IDS_DIRECTPLAY_COL_NAME2 "Ðåºñòð" + IDS_DIRECTPLAY_COL_NAME3 "Ôàéë" + IDS_DIRECTPLAY_COL_NAME4 "Âåðñ³ÿ" + IDS_DIRECTPLAY8_MODEMSP "Ïîñòà÷àëüíèê ñëóæáè ìîäåìó DirectPlay8" + IDS_DIRECTPLAY8_SERIALSP "Ïîñòà÷àëüíèê ñëóæáè îñòàí. ïîðòó DirectPlay8" + IDS_DIRECTPLAY8_IPXSP "Ïîñòà÷àëüíèê ñëóæáè IPX DirectPlay8" + IDS_DIRECTPLAY8_TCPSP "Ïîñòà÷àëüíèê ñëóæáè TCP/IP DirectPlay8" + IDS_DIRECTPLAY_TCPCONN "²íòåðíåò-ï³äêëþ÷åííÿ TCP/IP äëÿ DirectPlay" + IDS_DIRECTPLAY_IPXCONN "IPX ï³äêëþ÷åííÿ äëÿ DirectPlay" + IDS_DIRECTPLAY_MODEMCONN "ϳäêëþ÷åííÿ ÷åðåç ìîäåì äëÿ DirectPlay" + IDS_DIRECTPLAY_SERIALCONN "Ïîñë³äîâíå ï³äêëþ÷åííÿ äëÿ DirectPlay" + IDS_REG_SUCCESS "Òàê" + IDS_REG_FAIL "Ïîìèëêà" + IDS_DDTEST_ERROR "Çá³é ó ïåðåâ³ðö³!" + IDS_DDTEST_DESCRIPTION "Áóäå âèêîíàíà ïåðåâ³ðêà DirecDraw íà öåé ïðèñòð³é. Ïðîäîâæèòè?" + IDS_DDPRIMARY_DESCRIPTION "Öåé òåñò áóäå âèêîðèñòîâóâàòè DirectDraw äëÿ ìàëþâàííÿ íà ïåðâèíí³é ïîâåðõí³. Áóäóòü âèâîäèòèñü ÷îðí³ òà á³ë³ ïðÿìîêóòíèêè. Ïðîäîâæèòè?" + IDS_DDPRIMARY_RESULT "Âè áà÷èëè ÷îðí³ òà á³ë³ ïðÿìîêóòíèêè?" + IDS_DDOFFSCREEN_DESCRIPTION "Öåé òåñò áóäå âèêîðèñòîâóâàòè DirectDraw äëÿ ìàëþâàííÿ â çàêàäðîâèé áóôåð. Ïîâèíåí ðóõàòèñü á³ëèé ïðÿìîêóòíèê. Ïðîäîâæèòè?" + IDS_DDOFFSCREEN_RESULT "Âè áà÷èëè, ÿê ðóõàâñÿ á³ëèé ïðÿìîêóòíèê?" + IDS_DDFULLSCREEN_DESCRIPTION "Öåé òåñò áóäå âèêîðèñòîâóâàòè DirectDraw äëÿ ìàëþâàííÿ â ïîâíîåêðàííîìó ðåæèì³. Ïîâèíåí ðóõàòèñü á³ëèé ïðÿìîêóòíèê. Ïðîäîâæèòè?" + IDS_DDFULLSCREEN_RESULT "Âè áà÷èëè, ÿê ðóõàâñÿ á³ëèé ïðÿìîêóòíèê â ïîâíîåêðàííîìó ðåæèì³?" + IDS_FORMAT_ADAPTER_MEM "%u Ìá" + IDS_FORMAT_ADAPTER_MODE "%04u x %04u (%u á³ò)(%uÃö)" + IDS_OPTION_NO "ͳ" +END diff --git a/base/applications/dxdiag/lang/zh-CN.rc b/base/applications/dxdiag/lang/zh-CN.rc new file mode 100644 index 00000000000..2f86f86b242 --- /dev/null +++ b/base/applications/dxdiag/lang/zh-CN.rc @@ -0,0 +1,234 @@ +/* + * PROJECT: ReactOS ReactX-Diagnostic program + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/dxdiag/lang/zh-CN.rc + * PURPOSE: Chinese (Simplified) Language File for ReactX-Diagnostic program + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED + +IDD_MAIN_DIALOG DIALOGEX DISCARDABLE 0, 0, 478, 280 +STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | + WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | + WS_THICKFRAME +CAPTION "ReactX Õï¶Ï³Ìʽ" +FONT 8, "MS Shell Dlg" +BEGIN + CONTROL "Tab1",IDC_TAB_CONTROL,"SysTabControl32",WS_TABSTOP,2,2,474,250 + PUSHBUTTON "˵Ã÷(&H)", IDC_BUTTON_HELP, 2, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + DEFPUSHBUTTON "ÏÂÒ»Ò³(&N)", IDC_BUTTON_NEXT, 257, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "´¢´æËùÓÐ×ÊѶ(&S)...", IDC_BUTTON_SAVE_INFO, 311, 261, 110, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "½áÊø(&E)", IDC_BUTTON_EXIT, 425, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP +END + +IDD_SYSTEM_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + LTEXT "´Ë¹¤¾ß»á±¨¸æ°²×°ÔÚÄúϵͳµÄReactX Ôª¼þºÍÇý¶¯³ÌʽµÄÏêϸ×ÊÁÏ¡£", -1, 10, 10, 443, 17 + LTEXT "Èç¹ûÄãÖªµÀÄǸöÇøÓòÔì³ÉÎÊÌ⣬µ¥»÷ÉÏÃæÏàÓ¦µÄ±êÇ©¡£·ñÔò£¬Äã¿ÉÒÔʹÓá¸ÏÂÒ»Ò³¡¹°´Å¥À´Ë³Ðò·ÃÎÊÿһҳ¡£ ", -1, 10, 30, 443, 25 + GROUPBOX "ϵͳ×ÊѶ", -1, 10, 55, 443, 130, SS_RIGHT + LTEXT "Ä¿Ç°ÈÕÆÚ/ʱ¼ä£º", -1, 70, 70, 80, 10, SS_RIGHT + LTEXT "µçÄÔÃû³Æ£º", -1, 70, 80, 80, 10, SS_RIGHT + LTEXT "²Ù×÷ϵͳ£º", -1, 70, 90, 80, 10, SS_RIGHT + LTEXT "ÓïÑÔ£º", -1, 70, 100, 80, 10, SS_RIGHT + LTEXT "ϵͳÖÆÔìÉÌ£º", -1, 70, 110, 80, 10, SS_RIGHT + LTEXT "ϵͳÐͺţº", -1, 70, 120, 80, 10, SS_RIGHT + LTEXT "BIOS£º", -1, 70, 130, 80, 10, SS_RIGHT + LTEXT "´¦ÀíÆ÷£º", -1, 70, 140, 80, 10, SS_RIGHT + LTEXT "Äڴ棺", -1, 70, 150, 80, 10, SS_RIGHT + LTEXT "·ÖÒ³µµ°¸£º", -1, 70, 160, 80, 10, SS_RIGHT + LTEXT "ReactX °æ±¾£º", -1, 70, 170, 80, 10, SS_RIGHT + LTEXT "", IDC_STATIC_TIME, 155, 70, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_COMPUTER, 155, 80, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_OS, 155, 90, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_LANG, 155, 100, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MANU, 155, 110, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MODEL, 155, 120, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_BIOS, 155, 130, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_PROC, 155, 140, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MEM, 155, 150, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_SWAP, 155, 160, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_VERSION, 155, 170, 195, 10, SS_LEFT +END + +IDD_DISPLAY_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "×°ÖÃ", -1, 10, 10, 250, 100 + RTEXT "Ãû³Æ£º", -1, 20, 25, 70, 10 + RTEXT "ÖÆÔìÉÌ£º", -1, 20, 35, 70, 10 + RTEXT "¾§Æ¬ÀàÐÍ£º", -1, 20, 45, 70, 10 + RTEXT "DAC ÀàÐÍ£º", -1, 20, 55, 70, 10 + RTEXT "ÄÚ´æ×ܼÆÔ¼£º", -1, 20, 65, 70, 10 + RTEXT "Ä¿Ç°ÏÔʾģʽ£º", -1, 20, 75, 70, 10 + RTEXT "ÏÔʾÆ÷£º", -1, 20, 85, 70, 10 + LTEXT "", IDC_STATIC_ADAPTER_ID, 95, 25, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_VENDOR, 95, 35, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_CHIP, 95, 45, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_DAC, 95, 55, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MEM, 95, 65, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MODE, 95, 75, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MONITOR, 95, 85, 150, 10 + + GROUPBOX "Çý¶¯³Ìʽ", -1, 270, 10, 190, 100 + RTEXT "Ö÷ÒªÇý¶¯³Ìʽ£º", -1, 275, 25, 55, 10 + RTEXT "°æ±¾£º", -1, 275, 35, 55, 10 + RTEXT "ÈÕÆÚ£º", -1, 275, 45, 55, 10 + RTEXT "WHQL ±êÖ¾£º", -1, 275, 55, 55, 10 + RTEXT "ÃÔÄã VDD£º", -1, 275, 65, 55, 10 + RTEXT "VDD£º", -1, 275, 75, 55, 10 + RTEXT "DDI °æ±¾£º", -1, 275, 85, 55, 10 + LTEXT "", IDC_STATIC_ADAPTER_DRIVER, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_VERSION, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_DATE, 335, 45, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_LOGO, 335, 55, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_MINIVDD, 335, 65, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_VDD, 335, 75, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_DDI, 335, 85, 100, 10 + + GROUPBOX "ReactX ¹¦ÄÜ", -1, 10, 115, 450, 60 + RTEXT "DirectDraw ¼ÓËÙ£º", -1, 15, 130, 110, 12 + RTEXT "Direct3D ¼ÓËÙ£º", -1, 15, 145, 110, 12 + RTEXT "AGP ²ÄÖʼÓËÙ£º", -1, 15, 160, 110, 12 + LTEXT "", IDC_STATIC_DDSTATE, 130, 130, 40, 10 + LTEXT "", IDC_STATIC_D3DSTATE, 130, 145, 40, 10 + LTEXT "", IDC_STATIC_AGPSTATE, 130, 160, 40, 10 + PUSHBUTTON "ÆôÓÃ", IDC_BUTTON_DDRAW, 170, 124, 60, 14, WS_DISABLED + PUSHBUTTON "ÆôÓÃ", IDC_BUTTON_D3D, 170, 140, 60, 14, WS_DISABLED + PUSHBUTTON "ÆôÓÃ", IDC_BUTTON_AGP, 170, 156, 60, 14, WS_DISABLED + PUSHBUTTON "²âÊÔDirectDraw", IDC_BUTTON_TESTDD, 250, 124, 80, 14 + PUSHBUTTON "²âÊÔDirect3D", IDC_BUTTON_TEST3D, 250, 140, 80, 14 + + GROUPBOX "±¸×¢", -1, 10, 180, 450, 40 + EDITTEXT IDC_TEXT_INFO, 20, 192, 432, 20, WS_DISABLED | WS_TABSTOP +END + + +IDD_SOUND_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "×°ÖÃ", -1, 10, 10, 250, 100 + RTEXT "Ãû³Æ£º", -1, 20, 25, 70, 10 + RTEXT "×°ÖÃʶ±ðÂ룺", -1, 20, 35, 70, 10 + RTEXT "ÖÆÔìÉÌʶ±ðÂ룺", -1, 20, 45, 70, 10 + RTEXT "²úƷʶ±ðÂ룺", -1, 20, 55, 70, 10 + RTEXT "ÀàÐÍ£º", -1, 20, 65, 70, 10 + RTEXT "Ô¤Éè×°ÖÃ:", -1, 20, 75, 70, 10 + LTEXT "", IDC_STATIC_DSOUND_NAME, 95, 25, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_DEVICEID, 95, 35, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_VENDORID, 95, 45, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_PRODUCTID, 95, 55, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_TYPE, 95, 65, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_STANDARD, 95, 75, 150, 10 + GROUPBOX "Çý¶¯³Ìʽ", -1, 270, 10, 190, 100 + RTEXT "Ãû³Æ£º", -1, 275, 25, 55, 10 + RTEXT "°æ±¾£º", -1, 275, 35, 55, 10 + RTEXT "ÈÕÆÚ£º", -1, 275, 45, 55, 10 + RTEXT "WHQL ±êÖ¾£º", -1, 275, 55, 55, 10 + RTEXT "ÆäËûµµ°¸£º", -1, 275, 65, 55, 10 + RTEXT "ÌṩÕߣº", -1, 275, 75, 55, 10 + LTEXT "", IDC_STATIC_DSOUND_DRIVER, 335, 25, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_VERSION, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_DATE, 335, 45, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_LOGO, 335, 55, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_FILES, 335, 65, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_PROVIDER, 335, 75, 100, 10 + GROUPBOX "ReactX ¹¦ÄÜ", -1, 10, 115, 450, 60 + CONTROL "", IDC_SLIDER_DSOUND, "msctls_trackbar32", TBS_BOTTOM | TBS_AUTOTICKS | WS_TABSTOP, 120, 135, 80, 17 + RTEXT "Ó²ÌåÒôЧ\n¼ÓËٵȼ¶£º", -1, 20, 135, 90, 20 + PUSHBUTTON "²âÊÔ DirectSound", IDC_BUTTON_TESTDSOUND, 270, 134, 80, 14 + GROUPBOX "±¸×¢", -1, 10, 180, 450, 40 + EDITTEXT IDC_TEXT_DSOUNDINFO, 20, 192, 432, 20, WS_DISABLED | WS_TABSTOP +END + +IDD_MUSIC_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + + +IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "DirectInput ×°ÖÃ", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_DEVICE, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 + GROUPBOX "ÊäÈë×°ÖÃ", -1, 10, 100, 452, 60 + CONTROL "", IDC_TREE_PORT, "SysTreeView32", TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 20, 112, 432, 40, 0x00000200 + GROUPBOX "×ÊѶ", -1, 10, 170, 452, 50 + EDITTEXT IDC_RICH_INFO, 20, 182, 432, 30, WS_DISABLED | WS_TABSTOP +END + +IDD_NETWORK_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "ÒÑ×¢²áµÄ DirectPlay ·þÎñÌṩÕߣº", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_PROVIDER, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 +END + +IDD_HELP_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_MAIN_DIALOG "ReactX Õï¶Ï¹¤¾ß" + IDS_SYSTEM_DIALOG "ϵͳ" + IDS_DISPLAY_DIALOG "ÏÔʾ" + IDS_SOUND_DIALOG "ÒôЧ" + IDS_MUSIC_DIALOG "ÒôÀÖ" + IDS_INPUT_DIALOG "ÊäÈë" + IDS_NETWORK_DIALOG "ÍøÂç" + IDS_HELP_DIALOG "˵Ã÷" + IDS_FORMAT_MB "%I64uMB RAM" + IDS_FORMAT_SWAP "ÒÑʹÓà %I64u MB£¬»¹ÓÐ %I64u MB ¿ÉÓÃ" + IDS_FORMAT_UNIPROC "%s (%u CPU)" + IDS_FORMAT_MPPROC "%s (%u CPUs)" + IDS_VERSION_UNKNOWN "δ֪°æ±¾" + IDS_DEVICE_STATUS_ATTACHED "ÒÑÁ¬½Ó" + IDS_DEVICE_STATUS_MISSING "ÒÑÖжÏÁ¬½Ó" + IDS_DEVICE_STATUS_UNKNOWN "δ֪" + IDS_DEVICE_NAME "×°ÖÃÃû³Æ" + IDS_DEVICE_STATUS "״̬" + IDS_DEVICE_CONTROLLER "¿ØÖÆÆ÷ʶ±ðÂë" + IDS_DEVICE_MANUFACTURER "ÖÆÔìÉÌʶ±ðÂë" + IDS_DEVICE_PRODUCT "²úƷʶ±ðÂë" + IDS_DEVICE_FORCEFEEDBACK "¶¯Á¦»ØÀ¡Çý¶¯³Ìʽ" + IDS_NOT_APPLICABLE "²»ÊÊÓÃ" + IDS_OPTION_YES "ÊÇ" + IDS_DIRECTPLAY_COL_NAME1 "Ãû³Æ" + IDS_DIRECTPLAY_COL_NAME2 "µÇ¼" + IDS_DIRECTPLAY_COL_NAME3 "µµ°¸" + IDS_DIRECTPLAY_COL_NAME4 "°æ±¾" + IDS_DIRECTPLAY8_MODEMSP "DirectPlay8 Êý¾Ý»ú·þÎñÌṩÕß" + IDS_DIRECTPLAY8_SERIALSP "DirectPlay8 ÐòÁзþÎñÌṩÕß" + IDS_DIRECTPLAY8_IPXSP "DirectPlay8 IPX ·þÎñÌṩÕß" + IDS_DIRECTPLAY8_TCPSP "DirectPlay8 TCP/IP ·þÎñÌṩÕß" + IDS_DIRECTPLAY_TCPCONN "DirectPlay Íø¼ÊÍøÂç TCP/IP Á¬½Ó" + IDS_DIRECTPLAY_IPXCONN "DirectPlay IPX Á¬½Ó" + IDS_DIRECTPLAY_MODEMCONN "DirectPlay Êý¾Ý»úÁ¬½Ó" + IDS_DIRECTPLAY_SERIALCONN "DirectPlay ÐòÁÐÁ¬½Ó" + IDS_REG_SUCCESS "È·ÈÏ" + IDS_REG_FAIL "´íÎó" + IDS_DDTEST_ERROR "²âÊÔʧ°Ü£¡" + IDS_DDTEST_DESCRIPTION "Õ⽫Æô¶¯ DirectDraw ½çÃæ²âÊÔ¡£Òª¼ÌÐø£¿" + IDS_DDPRIMARY_DESCRIPTION "´Ë²âÊÔ½«Ê¹Óà DirectDraw ÔÚÖ÷Òª±íÃæÉÏ»æͼ¡£ÄúÓ¦»á¿´¼ûºÚÉ«ºÍ°×É«µÄ¾ØÐΡ£Òª¼ÌÐø£¿" + IDS_DDPRIMARY_RESULT "Äã¿´¼ûºÚÉ«ºÍ°×É«µÄ¾ØÐÎÂð£¿" + IDS_DDOFFSCREEN_DESCRIPTION "´Ë²âÊÔ½«Ê¹Óà DirectDraw ÔÚÄ»Íâ±íÃæÉÏ»æͼ¡£ÄúÓ¦»á¿´¼ûÔÚÒƶ¯µÄ°×É«¾ØÐΡ£Òª¼ÌÐø£¿" + IDS_DDOFFSCREEN_RESULT "Äã¿´¼ûÔÚÒƶ¯µÄ°×É«¾ØÐÎÂð£¿" + IDS_DDFULLSCREEN_DESCRIPTION "´Ë²âÊÔ½«Ê¹Óà DirectDraw ÔÚȫөĻģʽ»æͼ¡£ÄúÓ¦»á¿´¼ûÔÚÒƶ¯µÄ°×É«¾ØÐΡ£Òª¼ÌÐø£¿" + IDS_DDFULLSCREEN_RESULT "ÄãÔÚȫөĻģʽÖп´¼ûÔÚÒƶ¯µÄ°×É«¾ØÐÎÂð£¿" + IDS_FORMAT_ADAPTER_MEM "%u MB" + IDS_FORMAT_ADAPTER_MODE "%04u x %04u (%u bit)(%uHz)" + IDS_OPTION_NO "·ñ" + IDS_D3DTEST_DESCRIPTION "Õ⽫Æô¶¯ Direct3D ½çÃæ²âÊÔ¡£Òª¼ÌÐø£¿" + IDS_D3DTEST_D3Dx "´Ë²âÊÔ½«Ê¹ÓÃÓ²Ìå¼ÓËÙµÄ Direct3D %u ½çÃæ¡£" +END diff --git a/base/applications/dxdiag/lang/zh-TW.rc b/base/applications/dxdiag/lang/zh-TW.rc new file mode 100644 index 00000000000..d1e7ab5ab77 --- /dev/null +++ b/base/applications/dxdiag/lang/zh-TW.rc @@ -0,0 +1,234 @@ +/* + * PROJECT: ReactOS ReactX-Diagnostic program + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/dxdiag/lang/zh-TW.rc + * PURPOSE: Chinese (Traditional) Language File for ReactX-Diagnostic program + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL + +IDD_MAIN_DIALOG DIALOGEX DISCARDABLE 0, 0, 478, 280 +STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | + WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | + WS_THICKFRAME +CAPTION "ReactX ¶EÂ_µ{¦¡" +FONT 8, "MS Shell Dlg" +BEGIN + CONTROL "Tab1",IDC_TAB_CONTROL,"SysTabControl32",WS_TABSTOP,2,2,474,250 + PUSHBUTTON "»¡©ú(&H)", IDC_BUTTON_HELP, 2, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + DEFPUSHBUTTON "¤U¤@­¶(&N)", IDC_BUTTON_NEXT, 257, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "Àx¦s©Ò¦³¸ê°T(&S)...", IDC_BUTTON_SAVE_INFO, 311, 261, 110, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP + PUSHBUTTON "µ²§ô(&E)", IDC_BUTTON_EXIT, 425, 261, 50, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP +END + +IDD_SYSTEM_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + LTEXT "¦¹¤u¨ã·|³ø§i¦w¸Ë¦b±z¨t²Îªº ReactX ¤¸¥ó©MÅX°Êµ{¦¡ªº¸Ô²Ó¸ê®Æ¡C", -1, 10, 10, 443, 17 + LTEXT "¦pªG§Aª¾¹D¨º­Ó°Ï°ì³y¦¨°ÝÃD¡A³æÀ»¤W­±¬ÛÀ³ªº¼ÐÅÒ¡C§_«h¡A§A¥i¥H¨Ï¥Î¡u¤U¤@­¶¡v«ö¶s¨Ó¶¶§Ç³X°Ý¨C¤@­¶¡C", -1, 10, 30, 443, 25 + GROUPBOX "¨t²Î¸ê°T", -1, 10, 55, 443, 130, SS_RIGHT + LTEXT "¥Ø«e¤é´Á/®É¶¡¡G", -1, 70, 70, 80, 10, SS_RIGHT + LTEXT "¹q¸£¦WºÙ¡G", -1, 70, 80, 80, 10, SS_RIGHT + LTEXT "¾Þ§@¨t²Î¡G", -1, 70, 90, 80, 10, SS_RIGHT + LTEXT "»y¨¥¡G", -1, 70, 100, 80, 10, SS_RIGHT + LTEXT "¨t²Î»s³y°Ó¡G", -1, 70, 110, 80, 10, SS_RIGHT + LTEXT "¨t²Î«¬¸¹¡G", -1, 70, 120, 80, 10, SS_RIGHT + LTEXT "BIOS¡G", -1, 70, 130, 80, 10, SS_RIGHT + LTEXT "³B²z¾¹¡G", -1, 70, 140, 80, 10, SS_RIGHT + LTEXT "°O¾ÐÅé¡G", -1, 70, 150, 80, 10, SS_RIGHT + LTEXT "¤À­¶ÀɮסG", -1, 70, 160, 80, 10, SS_RIGHT + LTEXT "ReactX ª©¥»¡G", -1, 70, 170, 80, 10, SS_RIGHT + LTEXT "", IDC_STATIC_TIME, 155, 70, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_COMPUTER, 155, 80, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_OS, 155, 90, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_LANG, 155, 100, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MANU, 155, 110, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MODEL, 155, 120, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_BIOS, 155, 130, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_PROC, 155, 140, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_MEM, 155, 150, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_SWAP, 155, 160, 195, 10, SS_LEFT + LTEXT "", IDC_STATIC_VERSION, 155, 170, 195, 10, SS_LEFT +END + +IDD_DISPLAY_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "¸Ë¸m", -1, 10, 10, 250, 100 + RTEXT "¦WºÙ¡G", -1, 20, 25, 70, 10 + RTEXT "»s³y°Ó¡G", -1, 20, 35, 70, 10 + RTEXT "´¹¤ùÃþ«¬¡G", -1, 20, 45, 70, 10 + RTEXT "DAC Ãþ«¬¡G", -1, 20, 55, 70, 10 + RTEXT "°O¾ÐÅéÁ`­p¬ù¡G", -1, 20, 65, 70, 10 + RTEXT "¥Ø«eÅã¥Ü¼Ò¦¡¡G", -1, 20, 75, 70, 10 + RTEXT "Åã¥Ü¾¹¡G", -1, 20, 85, 70, 10 + LTEXT "", IDC_STATIC_ADAPTER_ID, 95, 25, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_VENDOR, 95, 35, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_CHIP, 95, 45, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_DAC, 95, 55, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MEM, 95, 65, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MODE, 95, 75, 150, 10 + LTEXT "", IDC_STATIC_ADAPTER_MONITOR, 95, 85, 150, 10 + + GROUPBOX "ÅX°Êµ{¦¡", -1, 270, 10, 190, 100 + RTEXT "¥D­nÅX°Êµ{¦¡¡G", -1, 275, 25, 55, 10 + RTEXT "ª©¥»¡G", -1, 275, 35, 55, 10 + RTEXT "¤é´Á¡G", -1, 275, 45, 55, 10 + RTEXT "WHQL ¼Ð»x¡G", -1, 275, 55, 55, 10 + RTEXT "°g§A VDD¡G", -1, 275, 65, 55, 10 + RTEXT "VDD¡G", -1, 275, 75, 55, 10 + RTEXT "DDI ª©¥»¡G", -1, 275, 85, 55, 10 + LTEXT "", IDC_STATIC_ADAPTER_DRIVER, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_VERSION, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_DATE, 335, 45, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_LOGO, 335, 55, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_MINIVDD, 335, 65, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_VDD, 335, 75, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_DDI, 335, 85, 100, 10 + + GROUPBOX "ReactX ¥\¯à", -1, 10, 115, 450, 60 + RTEXT "DirectDraw ¥[³t¡G", -1, 15, 130, 110, 12 + RTEXT "Direct3D ¥[³t¡G", -1, 15, 145, 110, 12 + RTEXT "AGP §÷½è¥[³t¡G", -1, 15, 160, 110, 12 + LTEXT "", IDC_STATIC_DDSTATE, 130, 130, 40, 10 + LTEXT "", IDC_STATIC_D3DSTATE, 130, 145, 40, 10 + LTEXT "", IDC_STATIC_AGPSTATE, 130, 160, 40, 10 + PUSHBUTTON "±Ò¥Î", IDC_BUTTON_DDRAW, 170, 124, 60, 14, WS_DISABLED + PUSHBUTTON "±Ò¥Î", IDC_BUTTON_D3D, 170, 140, 60, 14, WS_DISABLED + PUSHBUTTON "±Ò¥Î", IDC_BUTTON_AGP, 170, 156, 60, 14, WS_DISABLED + PUSHBUTTON "´ú¸Õ DirectDraw", IDC_BUTTON_TESTDD, 250, 124, 80, 14 + PUSHBUTTON "´ú¸Õ Direct3D", IDC_BUTTON_TEST3D, 250, 140, 80, 14 + + GROUPBOX "³Æµù", -1, 10, 180, 450, 40 + EDITTEXT IDC_TEXT_INFO, 20, 192, 432, 20, WS_DISABLED | WS_TABSTOP +END + + +IDD_SOUND_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "¸Ë¸m", -1, 10, 10, 250, 100 + RTEXT "¦WºÙ¡G", -1, 20, 25, 70, 10 + RTEXT "¸Ë¸mÃѧO½X¡G", -1, 20, 35, 70, 10 + RTEXT "»s³y°ÓÃѧO½X¡G", -1, 20, 45, 70, 10 + RTEXT "²£«~ÃѧO½X¡G", -1, 20, 55, 70, 10 + RTEXT "Ãþ«¬¡G", -1, 20, 65, 70, 10 + RTEXT "¹w³]¸Ë¸m:", -1, 20, 75, 70, 10 + LTEXT "", IDC_STATIC_DSOUND_NAME, 95, 25, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_DEVICEID, 95, 35, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_VENDORID, 95, 45, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_PRODUCTID, 95, 55, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_TYPE, 95, 65, 150, 10 + LTEXT "", IDC_STATIC_DSOUND_STANDARD, 95, 75, 150, 10 + GROUPBOX "ÅX°Êµ{¦¡", -1, 270, 10, 190, 100 + RTEXT "¦WºÙ¡G", -1, 275, 25, 55, 10 + RTEXT "ª©¥»¡G", -1, 275, 35, 55, 10 + RTEXT "¤é´Á¡G", -1, 275, 45, 55, 10 + RTEXT "WHQL ¼Ð»x¡G", -1, 275, 55, 55, 10 + RTEXT "¨ä¥LÀɮסG", -1, 275, 65, 55, 10 + RTEXT "´£¨ÑªÌ¡G", -1, 275, 75, 55, 10 + LTEXT "", IDC_STATIC_DSOUND_DRIVER, 335, 25, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_VERSION, 335, 35, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_DATE, 335, 45, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_LOGO, 335, 55, 100, 10 + LTEXT "", IDC_STATIC_DSOUND_FILES, 335, 65, 100, 10 + LTEXT "", IDC_STATIC_ADAPTER_PROVIDER, 335, 75, 100, 10 + GROUPBOX "ReactX ¥\¯à", -1, 10, 115, 450, 60 + CONTROL "", IDC_SLIDER_DSOUND, "msctls_trackbar32", TBS_BOTTOM | TBS_AUTOTICKS | WS_TABSTOP, 120, 135, 80, 17 + RTEXT "µwÅé­µ®Ä\n¥[³tµ¥¯Å¡G", -1, 20, 135, 90, 20 + PUSHBUTTON "´ú¸Õ DirectSound", IDC_BUTTON_TESTDSOUND, 270, 134, 80, 14 + GROUPBOX "³Æµù", -1, 10, 180, 450, 40 + EDITTEXT IDC_TEXT_DSOUNDINFO, 20, 192, 432, 20, WS_DISABLED | WS_TABSTOP +END + +IDD_MUSIC_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + + +IDD_INPUT_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "DirectInput ¸Ë¸m", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_DEVICE, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 + GROUPBOX "¿é¤J¸Ë¸m", -1, 10, 100, 452, 60 + CONTROL "", IDC_TREE_PORT, "SysTreeView32", TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP | TVS_SHOWSELALWAYS | WS_VISIBLE | WS_BORDER | WS_TABSTOP, 20, 112, 432, 40, 0x00000200 + GROUPBOX "¸ê°T", -1, 10, 170, 452, 50 + EDITTEXT IDC_RICH_INFO, 20, 182, 432, 30, WS_DISABLED | WS_TABSTOP +END + +IDD_NETWORK_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN + GROUPBOX "¤wµù¥Uªº DirectPlay ªA°È´£¨ÑªÌ¡G", -1, 10, 10, 452, 80 + CONTROL "", IDC_LIST_PROVIDER, "SysListView32", LVS_REPORT | WS_CHILD | WS_BORDER | WS_TABSTOP, 20, 22, 432, 60 +END + +IDD_HELP_DIALOG DIALOGEX DISCARDABLE 0, 0, 462, 220 +STYLE DS_SHELLFONT | DS_CONTROL | WS_CHILD | WS_CLIPCHILDREN +FONT 8, "MS Shell Dlg" +BEGIN +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_MAIN_DIALOG "ReactX ¶EÂ_¤u¨ã" + IDS_SYSTEM_DIALOG "¨t²Î" + IDS_DISPLAY_DIALOG "Åã¥Ü" + IDS_SOUND_DIALOG "­µ®Ä" + IDS_MUSIC_DIALOG "­µ¼Ö" + IDS_INPUT_DIALOG "¿é¤J" + IDS_NETWORK_DIALOG "ºôµ¸" + IDS_HELP_DIALOG "»¡©ú" + IDS_FORMAT_MB "%I64uMB RAM" + IDS_FORMAT_SWAP "¤w¨Ï¥Î %I64u MB¡AÁÙ¦³ %I64u MB ¥i¥Î" + IDS_FORMAT_UNIPROC "%s (%u CPU)" + IDS_FORMAT_MPPROC "%s (%u CPUs)" + IDS_VERSION_UNKNOWN "¥¼ª¾ª©¥»" + IDS_DEVICE_STATUS_ATTACHED "¤w³s±µ" + IDS_DEVICE_STATUS_MISSING "¤w¤¤Â_³s±µ" + IDS_DEVICE_STATUS_UNKNOWN "¥¼ª¾" + IDS_DEVICE_NAME "¸Ë¸m¦WºÙ" + IDS_DEVICE_STATUS "ª¬ºA" + IDS_DEVICE_CONTROLLER "±±¨î¾¹ÃѧO½X" + IDS_DEVICE_MANUFACTURER "»s³y°ÓÃѧO½X" + IDS_DEVICE_PRODUCT "²£«~ÃѧO½X" + IDS_DEVICE_FORCEFEEDBACK "°Ê¤O¦^õXÅX°Êµ{¦¡" + IDS_NOT_APPLICABLE "¤£¾A¥Î" + IDS_OPTION_YES "¬O" + IDS_DIRECTPLAY_COL_NAME1 "¦WºÙ" + IDS_DIRECTPLAY_COL_NAME2 "µn¿ý" + IDS_DIRECTPLAY_COL_NAME3 "ÀÉ®×" + IDS_DIRECTPLAY_COL_NAME4 "ª©¥»" + IDS_DIRECTPLAY8_MODEMSP "DirectPlay8 ¼Æ¾Ú¾÷ªA°È´£¨ÑªÌ" + IDS_DIRECTPLAY8_SERIALSP "DirectPlay8 §Ç¦CªA°È´£¨ÑªÌ" + IDS_DIRECTPLAY8_IPXSP "DirectPlay8 IPX ªA°È´£¨ÑªÌ" + IDS_DIRECTPLAY8_TCPSP "DirectPlay8 TCP/IP ªA°È´£¨ÑªÌ" + IDS_DIRECTPLAY_TCPCONN "DirectPlay ºô»Úºôµ¸ TCP/IP ³s±µ" + IDS_DIRECTPLAY_IPXCONN "DirectPlay IPX ³s±µ" + IDS_DIRECTPLAY_MODEMCONN "DirectPlay ¼Æ¾Ú¾÷³s±µ" + IDS_DIRECTPLAY_SERIALCONN "DirectPlay §Ç¦C³s±µ" + IDS_REG_SUCCESS "½T»{" + IDS_REG_FAIL "¿ù»~" + IDS_DDTEST_ERROR "´ú¸Õ¥¢±Ñ¡I" + IDS_DDTEST_DESCRIPTION "³o±N±Ò°Ê DirectDraw ¬É­±´ú¸Õ¡C­nÄ~Äò¡H" + IDS_DDPRIMARY_DESCRIPTION "¦¹´ú¸Õ±N¨Ï¥Î DirectDraw ¦b¥D­nªí­±¤Wø¹Ï¡C±zÀ³·|¬Ý¨£¶Â¦â©M¥Õ¦âªº¯x§Î¡C­nÄ~Äò¡H" + IDS_DDPRIMARY_RESULT "§A¬Ý¨£¶Â¦â©M¥Õ¦âªº¯x§Î¶Ü¡H" + IDS_DDOFFSCREEN_DESCRIPTION "¦¹´ú¸Õ±N¨Ï¥Î DirectDraw ¦b¹õ¥~ªí­±¤Wø¹Ï¡C±zÀ³·|¬Ý¨£¦b²¾°Êªº¥Õ¦â¯x§Î¡C­nÄ~Äò¡H" + IDS_DDOFFSCREEN_RESULT "§A¬Ý¨£¦b²¾°Êªº¥Õ¦â¯x§Î¶Ü¡H" + IDS_DDFULLSCREEN_DESCRIPTION "¦¹´ú¸Õ±N¨Ï¥Î DirectDraw ¦b¥þ¿Ã¹õ¼Ò¦¡Ã¸¹Ï¡C±zÀ³·|¬Ý¨£¦b²¾°Êªº¥Õ¦â¯x§Î¡C­nÄ~Äò¡H" + IDS_DDFULLSCREEN_RESULT "§A¦b¥þ¿Ã¹õ¼Ò¦¡¤¤¬Ý¨£¦b²¾°Êªº¥Õ¦â¯x§Î¶Ü¡H" + IDS_FORMAT_ADAPTER_MEM "%u MB" + IDS_FORMAT_ADAPTER_MODE "%04u x %04u (%u bit)(%uHz)" + IDS_OPTION_NO "§_" + IDS_D3DTEST_DESCRIPTION "³o±N±Ò°Ê Direct3D ¬É­±´ú¸Õ¡C­nÄ~Äò¡H" + IDS_D3DTEST_D3Dx "¦¹´ú¸Õ±N¨Ï¥ÎµwÅé¥[³tªº Direct3D %u ¬É­±¡C" +END diff --git a/base/applications/dxdiag/rsrc.rc b/base/applications/dxdiag/rsrc.rc index 9b6cbb0b9b0..eef95d5cc9b 100644 --- a/base/applications/dxdiag/rsrc.rc +++ b/base/applications/dxdiag/rsrc.rc @@ -17,3 +17,6 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL #include "lang/pl-PL.rc" #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" +#include "lang/ua-UA.rc" +#include "lang/zh-CN.rc" +//#include "lang/zh-TW.rc" diff --git a/base/applications/fontview/fontview.rbuild b/base/applications/fontview/fontview.rbuild index ba4f5b9cade..8ceda786c4b 100644 --- a/base/applications/fontview/fontview.rbuild +++ b/base/applications/fontview/fontview.rbuild @@ -3,7 +3,6 @@ gdi32 user32 shell32 - kernel32 fontview.c display.c fontview.rc diff --git a/base/applications/fontview/lang/de-DE.rc b/base/applications/fontview/lang/de-DE.rc index 2197a7ffaec..28cc675ec79 100644 --- a/base/applications/fontview/lang/de-DE.rc +++ b/base/applications/fontview/lang/de-DE.rc @@ -8,7 +8,7 @@ BEGIN IDS_ERROR, "Fehler" IDS_ERROR_NOMEM, "Es steht nicht genügend Speicher zur Verfügung." IDS_ERROR_NOFONT, "Die angegebene Datei %1 ist keine gültige Schriftartendatei." - IDS_ERROR_NOCLASS, "Fehler beim initialisieren der Fensterklasse." + IDS_ERROR_NOCLASS, "Fehler beim Initialisieren der Fensterklasse." IDS_ERROR_BADCMD, "Keine Schriftartendatei angegeben.\nSyntax:\n fontview.exe " END diff --git a/base/applications/fontview/lang/zh-TW.rc b/base/applications/fontview/lang/zh-TW.rc index 714bc46d618..6b036780959 100644 --- a/base/applications/fontview/lang/zh-TW.rc +++ b/base/applications/fontview/lang/zh-TW.rc @@ -1,7 +1,7 @@ /* * PROJECT: ReactOS FontView * LICENSE: GPL - See COPYING in the top level directory - * FILE: rosapps/fontview/lang/zh-TW.rc + * FILE: base/applications/fontview/lang/zh-TW.rc * PURPOSE: Chinese (Traditional) Language File for FontView * TRANSLATOR: Elton Chung */ @@ -19,4 +19,3 @@ BEGIN IDS_ERROR_NOCLASS, "µ¡¤fµLªkªì©l¤Æ¡C" IDS_ERROR_BADCMD, "¨S¦³´£¨Ñ¦rÅé¤å¥ó¡C\n»yªk¡G\n fontview.exe <¦rÅéÀÉ®×>" END - diff --git a/base/applications/games/solitaire/lang/de-DE.rc b/base/applications/games/solitaire/lang/de-DE.rc index 5e8f44457f4..9ecc79e5c37 100644 --- a/base/applications/games/solitaire/lang/de-DE.rc +++ b/base/applications/games/solitaire/lang/de-DE.rc @@ -57,7 +57,7 @@ BEGIN IDS_SOL_NAME "Solitär" IDS_SOL_ABOUT "Solitär von J Brown\n\nCardLib version 1.0." IDS_SOL_QUIT "Laufendes Spiel beenden?" - IDS_SOL_WIN "Glückwunsch, Sie haben Gewonnen!" + IDS_SOL_WIN "Glückwunsch, Sie haben gewonnen!" IDS_SOL_DEAL "Neu geben?" END diff --git a/base/applications/games/solitaire/lang/uk-UA.rc b/base/applications/games/solitaire/lang/uk-UA.rc index 21e379a6e88..8b2ecbaf1f1 100644 --- a/base/applications/games/solitaire/lang/uk-UA.rc +++ b/base/applications/games/solitaire/lang/uk-UA.rc @@ -18,8 +18,8 @@ CAPTION " FONT 8, "MS Shell Dlg" BEGIN GROUPBOX "Êàðòè", -1, 7, 7, 65, 40 - AUTORADIOBUTTON "&Ïî îäí³é", IDC_OPT_DRAWONE, 14, 19, 52, 10, WS_GROUP | WS_TABSTOP - AUTORADIOBUTTON "Ï&î òðè", IDC_OPT_DRAWTHREE, 14, 32, 52, 10 + AUTORADIOBUTTON "Ïî &îäí³é", IDC_OPT_DRAWONE, 14, 19, 52, 10, WS_GROUP | WS_TABSTOP + AUTORADIOBUTTON "Ïî &òðè", IDC_OPT_DRAWTHREE, 14, 32, 52, 10 AUTOCHECKBOX "&Ãðà çà ÷àñîì", IDC_OPT_SHOWTIME, 7 ,51 ,65 ,10, WS_TABSTOP | WS_DISABLED AUTOCHECKBOX "&Ðÿäîê ñòàíó", IDC_OPT_STATUSBAR, 7, 66, 64, 10, WS_TABSTOP @@ -58,7 +58,7 @@ BEGIN IDS_SOL_ABOUT "Êîñèíêà â³ä J Brown\n\nCardLib âåðñ³¿ 1.0." IDS_SOL_QUIT "Âèéòè ç ïîòî÷íî¿ ãðè?" IDS_SOL_WIN "³òàííÿ, Âè âèãðàëè!!" - IDS_SOL_DEAL "Deal again?" + IDS_SOL_DEAL "Ðîçäàòè çíîâó?" END @@ -71,14 +71,14 @@ BEGIN MENUITEM "&Ðîçäàòè êàðòè\tF2", IDM_GAME_NEW MENUITEM SEPARATOR MENUITEM "&Êîëîäà...", IDM_GAME_DECK - MENUITEM "&Ïàðàìåòðè...", IDM_GAME_OPTIONS + MENUITEM "Ïà&ðàìåòðè...", IDM_GAME_OPTIONS MENUITEM SEPARATOR MENUITEM "Â&èõ³ä", IDM_GAME_EXIT END POPUP "&Äîâ³äêà" BEGIN MENUITEM "&Çì³ñò\tF1", IDM_HELP_CONTENTS - MENUITEM "&Ïðî", IDM_HELP_ABOUT + MENUITEM "&Ïðî ïðîãðàìó...", IDM_HELP_ABOUT END END diff --git a/base/applications/games/solitaire/solitaire.cpp b/base/applications/games/solitaire/solitaire.cpp index e53efda79ce..4046b92ff2a 100644 --- a/base/applications/games/solitaire/solitaire.cpp +++ b/base/applications/games/solitaire/solitaire.cpp @@ -196,8 +196,6 @@ int WINAPI _tWinMain(HINSTANCE hInst, HINSTANCE hPrev, LPTSTR szCmdLine, int iCm SaveSettings(); - try { throw 0; } catch (int i) { } /* HACK */ - return msg.wParam; } diff --git a/base/applications/games/spider/lang/bg-BG.rc b/base/applications/games/spider/lang/bg-BG.rc new file mode 100644 index 00000000000..ff60cf56077 --- /dev/null +++ b/base/applications/games/spider/lang/bg-BG.rc @@ -0,0 +1,89 @@ +/* + * PROJECT: Spider Solitaire + * LICENSE: See COPYING in top level directory + * FILE: base/applications/games/spider/lang/en-US.rc + * PURPOSE: English Language File for Spider Solitaire + * TRANSLATOR: Gregor Schneider + */ + +#include "resource.h" + +LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT + + +/* Dialogs */ + +IDD_CARDBACK DIALOGEX 6, 6, 186, 104 +CAPTION "Èçáîð íà ãðúá íà êàðòèòå" +FONT 8, "MS Shell Dlg" +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT +BEGIN + CONTROL "", IDC_CARDBACK1, "Static", SS_NOTIFY, 4, 7, 26, 32 + CONTROL "", IDC_CARDBACK2, "Static", SS_NOTIFY, 34, 7, 26, 32 + CONTROL "", IDC_CARDBACK3, "Static", SS_NOTIFY, 64, 7, 26, 32 + CONTROL "", IDC_CARDBACK4, "Static", SS_NOTIFY, 94, 7, 26, 32 + CONTROL "", IDC_CARDBACK5, "Static", SS_NOTIFY, 124, 7, 26, 32 + CONTROL "", IDC_CARDBACK6, "Static", SS_NOTIFY, 154, 7, 26, 32 + CONTROL "", IDC_CARDBACK7, "Static", SS_NOTIFY, 4, 46, 26, 32 + CONTROL "", IDC_CARDBACK8, "Static", SS_NOTIFY, 34, 46, 26, 32 + CONTROL "", IDC_CARDBACK9, "Static", SS_NOTIFY, 64, 46, 26, 32 + CONTROL "", IDC_CARDBACK10, "Static", SS_NOTIFY, 94, 46, 26, 32 + CONTROL "", IDC_CARDBACK11, "Static", SS_NOTIFY, 124, 46, 26, 32 + CONTROL "", IDC_CARDBACK12, "Static", SS_NOTIFY, 154, 46, 26, 32 + DEFPUSHBUTTON "Äîáðå", IDOK, 66, 84, 54, 13 + PUSHBUTTON "Îòêàç", IDCANCEL, 126, 84, 54, 13 +END + +IDD_DIFFICULTY DIALOGEX DISCARDABLE 100, 100, 106, 80 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT +CAPTION "Òðóäíîñò" +FONT 8, "MS Shell Dlg" +BEGIN + AUTORADIOBUTTON "Ëåñíî: &Åäèí öâÿò", IDC_DIF_ONECOLOR, 8, 10, 90, 10, WS_GROUP | WS_TABSTOP + AUTORADIOBUTTON "Ñðåäíî: &Äâà öâÿòà", IDC_DIF_TWOCOLORS, 8, 23, 90, 10 + AUTORADIOBUTTON "Òðóäíî: &×åòèðè öâÿòà", IDC_DIF_FOURCOLORS, 8, 36, 96, 10 + + DEFPUSHBUTTON "Äîáðå", IDOK, 8, 58, 40, 14 + PUSHBUTTON "Îòêàç", IDCANCEL, 58, 58, 40, 14 +END + +/* Strings */ + +STRINGTABLE +BEGIN + IDS_SPI_NAME "Ïàÿê" + IDS_SPI_ABOUT "Spider Solitaire by Gregor Schneider\n\nCardLib version 1.0" + IDS_SPI_QUIT "Èçõîä îò òåêóøàòà èãðà?" + IDS_SPI_WIN "Ïîçäðàâëåíèÿ, ñïå÷åëèõòå!" + IDS_SPI_DEAL "Íîâî ðàçäàâàíå?" +END + + +/* Menus */ + +IDR_MENU1 MENU DISCARDABLE +BEGIN + POPUP "&Èãðà" + BEGIN + MENUITEM "&Íîâà èãðà\tF2", IDM_GAME_NEW + MENUITEM SEPARATOR + MENUITEM "&Òåñòå", IDM_GAME_DECK + MENUITEM SEPARATOR + MENUITEM "Èç&õîä", IDM_GAME_EXIT + END + POPUP "Ïîìî&ù" + BEGIN + MENUITEM "&Ñúäúðæàíèå\tF1", IDM_HELP_CONTENTS + MENUITEM "&Çà", IDM_HELP_ABOUT + END +END + + + +/* Accelerator */ + +IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE +BEGIN + VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT + VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT +END diff --git a/base/applications/games/spider/lang/de-DE.rc b/base/applications/games/spider/lang/de-DE.rc index b2bc790b06c..5b353b17263 100644 --- a/base/applications/games/spider/lang/de-DE.rc +++ b/base/applications/games/spider/lang/de-DE.rc @@ -54,7 +54,7 @@ BEGIN IDS_SPI_NAME "Spider" IDS_SPI_ABOUT "Spider Solitaire von Gregor Schneider\n\nCardLib Version 1.0" IDS_SPI_QUIT "Laufendes Spiel beenden?" - IDS_SPI_WIN "Gratulation, Sie haben gewonnen!" + IDS_SPI_WIN "Glückwunsch, Sie haben gewonnen!" IDS_SPI_DEAL "Neu geben?" END diff --git a/base/applications/games/spider/lang/es-ES.rc b/base/applications/games/spider/lang/es-ES.rc index 33660858b54..eef876b9669 100644 --- a/base/applications/games/spider/lang/es-ES.rc +++ b/base/applications/games/spider/lang/es-ES.rc @@ -30,7 +30,7 @@ BEGIN CONTROL "", IDC_CARDBACK10, "Static", SS_NOTIFY, 94, 46, 26, 32 CONTROL "", IDC_CARDBACK11, "Static", SS_NOTIFY, 124, 46, 26, 32 CONTROL "", IDC_CARDBACK12, "Static", SS_NOTIFY, 154, 46, 26, 32 - DEFPUSHBUTTON "OK", IDOK, 66, 84, 54, 13 + DEFPUSHBUTTON "Aceptar", IDOK, 66, 84, 54, 13 PUSHBUTTON "Cancelar", IDCANCEL, 126, 84, 54, 13 END @@ -39,11 +39,11 @@ STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT CAPTION "Dificultad" FONT 8, "MS Shell Dlg" BEGIN - AUTORADIOBUTTON "Fácil: &Un Color", IDC_DIF_ONECOLOR, 8, 10, 80, 10, WS_GROUP | WS_TABSTOP - AUTORADIOBUTTON "Medio: &Dos Colores", IDC_DIF_TWOCOLORS, 8, 23, 80, 10 - AUTORADIOBUTTON "Difícil: &Cuatro Colores", IDC_DIF_FOURCOLORS, 8, 36, 90, 10 + AUTORADIOBUTTON "Fácil: &Un Palo", IDC_DIF_ONECOLOR, 8, 10, 80, 10, WS_GROUP | WS_TABSTOP + AUTORADIOBUTTON "Medio: &Dos Palos", IDC_DIF_TWOCOLORS, 8, 23, 80, 10 + AUTORADIOBUTTON "Difícil: &Cuatro Palos", IDC_DIF_FOURCOLORS, 8, 36, 90, 10 - DEFPUSHBUTTON "OK", IDOK, 8, 58, 40, 14 + DEFPUSHBUTTON "Aceptar", IDOK, 8, 58, 40, 14 PUSHBUTTON "Cancelar", IDCANCEL, 58, 58, 40, 14 END diff --git a/base/applications/games/spider/lang/ru-RU.rc b/base/applications/games/spider/lang/ru-RU.rc index 9b8a7186e6c..8701fef3c11 100644 --- a/base/applications/games/spider/lang/ru-RU.rc +++ b/base/applications/games/spider/lang/ru-RU.rc @@ -34,17 +34,17 @@ BEGIN PUSHBUTTON "Îòìåíà", IDCANCEL, 126, 84, 54, 13 END -IDD_DIFFICULTY DIALOGEX DISCARDABLE 100, 100, 106, 80 +IDD_DIFFICULTY DIALOGEX DISCARDABLE 100, 100, 112, 80 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT CAPTION "Óðîâåíü" FONT 8, "MS Shell Dlg" BEGIN - AUTORADIOBUTTON "Ïðîñòîé: &îäèí öâåò", IDC_DIF_ONECOLOR, 8, 10, 80, 10, WS_GROUP | WS_TABSTOP - AUTORADIOBUTTON "Ñðåäíèé: &äâà öâåòà", IDC_DIF_TWOCOLORS, 8, 23, 80, 10 - AUTORADIOBUTTON "Ñëîæíûé: &÷åòûðå öâåòà", IDC_DIF_FOURCOLORS, 8, 36, 80, 10 + AUTORADIOBUTTON "Ïðîñòîé: &îäèí öâåò", IDC_DIF_ONECOLOR, 8, 10, 102, 10, WS_GROUP | WS_TABSTOP + AUTORADIOBUTTON "Ñðåäíèé: &äâà öâåòà", IDC_DIF_TWOCOLORS, 8, 23, 102, 10 + AUTORADIOBUTTON "Ñëîæíûé: &÷åòûðå öâåòà", IDC_DIF_FOURCOLORS, 8, 36, 102, 10 DEFPUSHBUTTON "OK", IDOK, 8, 58, 40, 14 - PUSHBUTTON "Îòìåíà", IDCANCEL, 58, 58, 40, 14 + PUSHBUTTON "Îòìåíà", IDCANCEL, 63, 58, 40, 14 END /* Strings */ diff --git a/base/applications/games/spider/lang/uk-UA.rc b/base/applications/games/spider/lang/uk-UA.rc new file mode 100644 index 00000000000..cee31995e31 --- /dev/null +++ b/base/applications/games/spider/lang/uk-UA.rc @@ -0,0 +1,91 @@ +/* + * PROJECT: ReactOS Spider + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/games/spider/lang/uk-UA.rc + * PURPOSE: Ukraianian Language File for ReactOS Spider + * TRANSLATOR: Sakara Yevhen + */ + + +#include "resource.h" + +LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT + + + +/* Dialogs */ + +IDD_CARDBACK DIALOGEX 6, 6, 186, 104 +CAPTION "Âèá³ð îôîðìëåííÿ" +FONT 8, "MS Shell Dlg" +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT +BEGIN + CONTROL "", IDC_CARDBACK1, "Static", SS_NOTIFY, 4, 7, 26, 32 + CONTROL "", IDC_CARDBACK2, "Static", SS_NOTIFY, 34, 7, 26, 32 + CONTROL "", IDC_CARDBACK3, "Static", SS_NOTIFY, 64, 7, 26, 32 + CONTROL "", IDC_CARDBACK4, "Static", SS_NOTIFY, 94, 7, 26, 32 + CONTROL "", IDC_CARDBACK5, "Static", SS_NOTIFY, 124, 7, 26, 32 + CONTROL "", IDC_CARDBACK6, "Static", SS_NOTIFY, 154, 7, 26, 32 + CONTROL "", IDC_CARDBACK7, "Static", SS_NOTIFY, 4, 46, 26, 32 + CONTROL "", IDC_CARDBACK8, "Static", SS_NOTIFY, 34, 46, 26, 32 + CONTROL "", IDC_CARDBACK9, "Static", SS_NOTIFY, 64, 46, 26, 32 + CONTROL "", IDC_CARDBACK10, "Static", SS_NOTIFY, 94, 46, 26, 32 + CONTROL "", IDC_CARDBACK11, "Static", SS_NOTIFY, 124, 46, 26, 32 + CONTROL "", IDC_CARDBACK12, "Static", SS_NOTIFY, 154, 46, 26, 32 + DEFPUSHBUTTON "OK", IDOK, 66, 84, 54, 13 + PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 126, 84, 54, 13 +END + +IDD_DIFFICULTY DIALOGEX DISCARDABLE 100, 100, 106, 80 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | DS_SHELLFONT +CAPTION "гâåíü" +FONT 8, "MS Shell Dlg" +BEGIN + AUTORADIOBUTTON "Ïðîñòèé: &Îäèí êîë³ð", IDC_DIF_ONECOLOR, 8, 10, 80, 10, WS_GROUP | WS_TABSTOP + AUTORADIOBUTTON "Ñåðåäí³é: &Äâà êîëüîðè", IDC_DIF_TWOCOLORS, 8, 23, 80, 10 + AUTORADIOBUTTON "Ñêëàäíèé: &×îòèðè êîëüîðè", IDC_DIF_FOURCOLORS, 8, 36, 80, 10 + + DEFPUSHBUTTON "OK", IDOK, 8, 58, 40, 14 + PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 58, 58, 40, 14 +END + +/* Strings */ + +STRINGTABLE +BEGIN + IDS_SPI_NAME "Ïàñ’ÿíñ Ïàóê" + IDS_SPI_ABOUT "Ïàñ’ÿíñ Ïàóê, Gregor Schneider\n\nCardLib âåðñ³¿ 1.0" + IDS_SPI_QUIT "Âèéòè ç ïîòî÷íî¿ ãðè?" + IDS_SPI_WIN "³òàºìî, âè âèãðàòè!" + IDS_SPI_DEAL "Ñïðîáóâàòè çíîâó?" +END + + +/* Menus */ + +IDR_MENU1 MENU DISCARDABLE +BEGIN + POPUP "&Ãðà" + BEGIN + MENUITEM "&Íîâà ãðà\tF2", IDM_GAME_NEW + MENUITEM SEPARATOR + MENUITEM "&Îôîðìëåííÿ...", IDM_GAME_DECK + MENUITEM SEPARATOR + MENUITEM "&Âèõ³ä", IDM_GAME_EXIT + END + POPUP "&Äîâ³äêà" + BEGIN + MENUITEM "Ïå&ðåãëÿä äîâ³äêè\tF1", IDM_HELP_CONTENTS + MENUITEM "&Ïðî ïðîãðàìó...", IDM_HELP_ABOUT + END +END + + + +/* Accelerator */ + +IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE +BEGIN + VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT + VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT +END diff --git a/base/applications/games/spider/rsrc.rc b/base/applications/games/spider/rsrc.rc index 3678b3b109b..27fe5ae2061 100644 --- a/base/applications/games/spider/rsrc.rc +++ b/base/applications/games/spider/rsrc.rc @@ -5,14 +5,16 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDI_SPIDER ICON DISCARDABLE "spider.ico" +#include "lang/bg-BG.rc" #include "lang/de-DE.rc" #include "lang/en-US.rc" #include "lang/es-ES.rc" #include "lang/hu-HU.rc" #include "lang/it-IT.rc" -#include "lang/nl-NL.rc" #include "lang/ja-JP.rc" +#include "lang/nl-NL.rc" #include "lang/pl-PL.rc" #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" +#include "lang/uk-UA.rc" diff --git a/base/applications/games/spider/spider.cpp b/base/applications/games/spider/spider.cpp index b89d3290b16..49676433234 100644 --- a/base/applications/games/spider/spider.cpp +++ b/base/applications/games/spider/spider.cpp @@ -50,7 +50,7 @@ void MakePath(TCHAR *szDest, UINT nDestLen, const TCHAR *szExt) lstrcpy(ptr + 1, szExt); } -BOOL CALLBACK DifficultyDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) +INT_PTR CALLBACK DifficultyDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { switch (uMsg) { @@ -154,9 +154,6 @@ int WINAPI _tWinMain(HINSTANCE hInst, HINSTANCE hPrev, LPTSTR szCmdLine, int iCm DispatchMessage(&msg); } } - - try { throw 0; } catch (int i) { } /* HACK */ - return msg.wParam; } @@ -239,7 +236,7 @@ CardImageWndProc(HWND hwnd, } -BOOL CALLBACK CardBackDlgProc(HWND hDlg, +INT_PTR CALLBACK CardBackDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) diff --git a/base/applications/games/spider/spigame.cpp b/base/applications/games/spider/spigame.cpp index e025d6c0639..d3717207f7f 100644 --- a/base/applications/games/spider/spigame.cpp +++ b/base/applications/games/spider/spigame.cpp @@ -201,6 +201,8 @@ bool CARDLIBPROC StackDragProc(CardRegion &stackobj, int numDragCards) /* Game finished successfully */ void GameFinished() { + SpiderWnd.EmptyStacks(); + MessageBox(SpiderWnd, MsgWin, szAppName, MB_OK | MB_ICONINFORMATION); if( IDYES == MessageBox(SpiderWnd, MsgDeal, szAppName, MB_YESNO | MB_ICONQUESTION) ) { @@ -208,7 +210,6 @@ void GameFinished() } else { - SpiderWnd.EmptyStacks(); fGameStarted = false; } } diff --git a/base/applications/games/winemine/lang/bg-BG.rc b/base/applications/games/winemine/lang/bg-BG.rc index 7b3e3c5f431..293c05ef845 100644 --- a/base/applications/games/winemine/lang/bg-BG.rc +++ b/base/applications/games/winemine/lang/bg-BG.rc @@ -48,7 +48,7 @@ BEGIN LTEXT "", IDC_NAME2, 132, 30, 55, 8 LTEXT "", IDC_NAME3, 132, 40, 55, 8 DEFPUSHBUTTON "Äîáðå", IDOK, 127, 57, 50, 15 - PUSHBUTTON "&Reset Scores", IDRESET, 18, 57, 67, 15 + PUSHBUTTON "&Î÷èñòâàíå íà ðåçóëòàòèòå", IDRESET, 18, 57, 67, 15 END IDD_CONGRATS DIALOGEX DISCARDABLE 0, 0, 160, 60 diff --git a/base/applications/games/winemine/lang/de-DE.rc b/base/applications/games/winemine/lang/de-DE.rc index 4c4e59d1457..69676c41f56 100644 --- a/base/applications/games/winemine/lang/de-DE.rc +++ b/base/applications/games/winemine/lang/de-DE.rc @@ -56,7 +56,7 @@ STYLE DS_MODALFRAME | WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP | DS_SHEL CAPTION "Glückwunsch!" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Bitte geben Sie ihren Namen ein", IDIGNORE, 25, 10, 150, 10 + LTEXT "Bitte geben Sie Ihren Namen ein", IDIGNORE, 25, 10, 150, 10 EDITTEXT IDC_EDITNAME, 25, 20, 110, 12 DEFPUSHBUTTON "OK", IDOK, 60, 40, 40, 15 END diff --git a/base/applications/games/winemine/lang/uk-UA.rc b/base/applications/games/winemine/lang/uk-UA.rc index 2a88d60a367..d5b0262d718 100644 --- a/base/applications/games/winemine/lang/uk-UA.rc +++ b/base/applications/games/winemine/lang/uk-UA.rc @@ -19,15 +19,15 @@ END IDM_WINEMINE MENU DISCARDABLE BEGIN - POPUP "&Game" + POPUP "&Ãðà" BEGIN MENUITEM "&Íîâà\tF2", IDM_NEW MENUITEM SEPARATOR MENUITEM "&̳òêè (?)", IDM_MARKQ MENUITEM SEPARATOR - MENUITEM "&Íîâà÷îê", IDM_BEGINNER + MENUITEM "Íîâà&÷îê", IDM_BEGINNER MENUITEM "&Àìàòîð", IDM_ADVANCED - MENUITEM "&Ïðîôåñ³îíàë", IDM_EXPERT + MENUITEM "Ïðî&ôåñ³îíàë", IDM_EXPERT MENUITEM "&Îñîáëèâ³...", IDM_CUSTOM MENUITEM SEPARATOR MENUITEM "&×åìï³îíè...", IDM_TIMES @@ -55,7 +55,7 @@ BEGIN LTEXT "", IDC_NAME1, 132, 20, 55, 8 LTEXT "", IDC_NAME2, 132, 30, 55, 8 LTEXT "", IDC_NAME3, 132, 40, 55, 8 - DEFPUSHBUTTON "OK", IDOK, 127, 57, 50, 15 + DEFPUSHBUTTON "OK", IDOK, 127, 57, 50, 15 PUSHBUTTON "&Ñêèäàííÿ ðåçóëüòàò³â", IDRESET, 18, 57, 67, 15 END @@ -66,7 +66,7 @@ FONT 8, "MS Shell Dlg" BEGIN LTEXT "Ââåä³òü Âàøå ³ì'ÿ", IDIGNORE, 25, 10, 150, 10 EDITTEXT IDC_EDITNAME, 25, 20, 110, 12 - DEFPUSHBUTTON "OK", IDOK, 60, 40, 40, 15 + DEFPUSHBUTTON "OK", IDOK, 60, 40, 40, 15 END IDD_CUSTOM DIALOGEX DISCARDABLE 0, 0, 139, 80 diff --git a/base/applications/games/winemine/winemine.rbuild b/base/applications/games/winemine/winemine.rbuild index c2f7e66047a..5f6a52a51af 100644 --- a/base/applications/games/winemine/winemine.rbuild +++ b/base/applications/games/winemine/winemine.rbuild @@ -2,7 +2,6 @@ . - kernel32 gdi32 user32 advapi32 diff --git a/base/applications/hh/hh.rbuild b/base/applications/hh/hh.rbuild index abc1c513e07..c81f6680097 100644 --- a/base/applications/hh/hh.rbuild +++ b/base/applications/hh/hh.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 gdi32 main.c diff --git a/base/applications/iexplore/iexplore.rbuild b/base/applications/iexplore/iexplore.rbuild index 8fb8dcd1ab3..807526ae86c 100644 --- a/base/applications/iexplore/iexplore.rbuild +++ b/base/applications/iexplore/iexplore.rbuild @@ -2,10 +2,9 @@ . - kernel32 user32 gdi32 - shdocvw + shdocvw main.c version.rc diff --git a/base/applications/kbswitch/kbsdll/kbsdll.rbuild b/base/applications/kbswitch/kbsdll/kbsdll.rbuild index 71ead6f7cbd..f459343e6c3 100644 --- a/base/applications/kbswitch/kbsdll/kbsdll.rbuild +++ b/base/applications/kbswitch/kbsdll/kbsdll.rbuild @@ -3,7 +3,6 @@ . - kernel32 user32 comctl32 kbsdll.c diff --git a/base/applications/kbswitch/kbswitch.rbuild b/base/applications/kbswitch/kbswitch.rbuild index c107f0a6d4d..2eed0b22bb0 100644 --- a/base/applications/kbswitch/kbswitch.rbuild +++ b/base/applications/kbswitch/kbswitch.rbuild @@ -2,7 +2,6 @@ . - kernel32 advapi32 user32 shell32 diff --git a/base/applications/logoff/logoff.rbuild b/base/applications/logoff/logoff.rbuild index a69e916adbc..d53f79499e4 100644 --- a/base/applications/logoff/logoff.rbuild +++ b/base/applications/logoff/logoff.rbuild @@ -4,7 +4,6 @@ . advapi32 user32 - kernel32 misc.c logoff.c logoff.rc diff --git a/base/applications/magnify/lang/ja-JP.rc b/base/applications/magnify/lang/ja-JP.rc new file mode 100644 index 00000000000..daba7bfe996 --- /dev/null +++ b/base/applications/magnify/lang/ja-JP.rc @@ -0,0 +1,64 @@ +LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT + +IDC_MAGNIFIER MENU +BEGIN + POPUP "ƒtƒ@ƒCƒ‹(&F)" + BEGIN + MENUITEM "I—¹(&X)", IDM_EXIT + MENUITEM "ƒIƒvƒVƒ‡ƒ“(&O)", IDM_OPTIONS + MENUITEM SEPARATOR + MENUITEM "ƒo[ƒWƒ‡ƒ“î•ñ(&A) ...", IDM_ABOUT + END +END + +IDC_MAGNIFIER ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 22, 17, 220, 75 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_CAPTION | WS_SYSMENU +CAPTION "Šg‘勾‚ɂ‚¢‚Ä" +FONT 9, "MS UI Gothic", 0, 0, 0x0 +BEGIN + ICON IDI_ICON,IDC_MYICON,14,9,20,20 + LTEXT "Šg‘勾 ƒo[ƒWƒ‡ƒ“ 1.0",IDC_STATIC,49,10,119,8,SS_NOPREFIX + LTEXT "Copyright (C) 2007 Marc Piulachs (marc.piulachs@codexchange.net)",IDC_STATIC,48,24,125,22 + PUSHBUTTON "OK",IDOK,162,48,50,14 +END + +IDD_DIALOGOPTIONS DIALOGEX 0, 0, 153, 182 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Šg‘勾‚̐ݒè" +FONT 9, "MS UI Gothic", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "I—¹",IDOK,96,161,50,14 + PUSHBUTTON "ƒwƒ‹ƒv",IDC_BUTTON_HELP,38,161,50,14 + LTEXT "Šg‘å—¦:",IDC_STATIC,6,8,68,8 + COMBOBOX IDC_ZOOM,72,6,63,66,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + GROUPBOX "Šg‘å‚̑ΏÛ",IDC_STATIC,7,25,139,59 + GROUPBOX "•\\Ž¦",IDC_STATIC,7,87,139,57 + CONTROL "ƒ}ƒEƒX ƒJ[ƒ\\ƒ‹‚Ì“®‚«‚ð’Ç‚¤",IDC_FOLLOWMOUSECHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,42,114,10 + CONTROL "ƒL[ƒ{[ƒh‚̃tƒH[ƒJƒX‚ð’Ç‚¤",IDC_FOLLOWKEYBOARDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,54,114,10 + CONTROL "•ÒW’†‚̃eƒLƒXƒg‚ð’Ç‚¤",IDC_FOLLOWTEXTEDITINGCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,66,114,10 + CONTROL "F‚𔽓]‚·‚é",IDC_INVERTCOLORSCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,102,114,10 + CONTROL "Å¬‰»‚µ‚ÄŠJŽn‚·‚é",IDC_STARTMINIMIZEDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,114,114,10 + CONTROL "Šg‘勾‚ð•\\Ž¦‚·‚é",IDC_SHOWMAGNIFIERCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,126,114,10 +END + +IDD_WARNINGDIALOG DIALOGEX 0, 0, 250, 97 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION +CAPTION "ReactOS Šg‘勾" +FONT 9, "MS UI Gothic", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "OK",IDOK,193,76,50,14 + ICON IDI_ICON,IDC_STATIC,7,17,20,20 + LTEXT "Šg‘勾‚ÍŒy‚¢Ž‹ŠoáŠQ‚ª‚ ‚é•û‚ɍŒáŒÀ‚Ì‹@”\\‚ð’ñ‹Ÿ‚·‚é‚悤‚ɐ݌v‚³‚ê‚Ä‚¢‚Ü‚·B‚Ù‚Æ‚ñ‚Ç‚ÌŽ‹ŠoáŠQŽÒ‚Ì•û‚̏ꍇA“úí—˜—p‚·‚é‚É‚Í‚æ‚荂‹@”\\‚ÈŠg‘僆[ƒeƒBƒŠƒeƒB‚ª•K—v‚Æ‚È‚è‚Ü‚·B",IDC_STATIC,36,7,207,33 + CONTROL "¡ŒãA‚±‚̃ƒbƒZ[ƒW‚ð•\\Ž¦‚µ‚È‚¢",IDC_SHOWWARNINGCHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,43,80,137,10 +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "Šg‘勾" +END diff --git a/base/applications/magnify/lang/zh-CN.rc b/base/applications/magnify/lang/zh-CN.rc new file mode 100644 index 00000000000..a3784d2ef0a --- /dev/null +++ b/base/applications/magnify/lang/zh-CN.rc @@ -0,0 +1,72 @@ +/* + * PROJECT: ReactOS Magnifier + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/magnify/lang/zh-CN.rc + * PURPOSE: Chinese (Simplified) Language File for Magnifier + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED + +IDC_MAGNIFIER MENU +BEGIN + POPUP "µµ°¸(&F)" + BEGIN + MENUITEM "½áÊø(&X)", IDM_EXIT + MENUITEM "Ñ¡Ïî(&O)", IDM_OPTIONS + MENUITEM SEPARATOR + MENUITEM "¹ØÓÚ(&A)...", IDM_ABOUT + END +END + +IDC_MAGNIFIER ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 22, 17, 220, 75 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_CAPTION | WS_SYSMENU +CAPTION "¹ØÓÚ" +FONT 8, "MS Shell Dlg", 0, 0, 0x0 +BEGIN + ICON IDI_ICON,IDC_MYICON,14,9,20,20 + LTEXT "·Å´ó¾µ°æ±¾ 1.0",IDC_STATIC,49,10,119,8,SS_NOPREFIX + LTEXT "°æȨËùÓÐ (C) 2007 Marc Piulachs (marc.piulachs@codexchange.net)",IDC_STATIC,48,24,125,22 + PUSHBUTTON "È·¶¨",IDOK,162,48,50,14 +END + +IDD_DIALOGOPTIONS DIALOGEX 0, 0, 153, 182 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "·Å´ó¾µÉ趨" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "½áÊø",IDOK,96,161,50,14 + PUSHBUTTON "˵Ã÷",IDC_BUTTON_HELP,38,161,50,14 + LTEXT "·Å´ó±¶Êý£º",IDC_STATIC,6,8,68,8 + COMBOBOX IDC_ZOOM,72,6,63,66,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + GROUPBOX "×·×Ù",IDC_STATIC,7,25,139,59 + GROUPBOX "չʾ",IDC_STATIC,7,87,139,57 + CONTROL "¸úË滬ÊóÓαê",IDC_FOLLOWMOUSECHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,42,114,10 + CONTROL "¸úËæ¼üÅ̽¹µã",IDC_FOLLOWKEYBOARDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,54,114,10 + CONTROL "¸úËæÎı¾±à¼­",IDC_FOLLOWTEXTEDITINGCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,66,114,10 + CONTROL "É«²Ê¶Ô»»",IDC_INVERTCOLORSCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,102,114,10 + CONTROL "¿ªÊ¼Ê±Òþ²Ø",IDC_STARTMINIMIZEDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,114,114,10 + CONTROL "ÏÔʾ·Å´ó¾µ",IDC_SHOWMAGNIFIERCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,126,114,10 +END + +IDD_WARNINGDIALOG DIALOGEX 0, 0, 250, 97 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION +CAPTION "ReactOS ·Å´ó¾µ" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "È·¶¨",IDOK,193,76,50,14 + ICON IDI_ICON,IDC_STATIC,7,17,20,20 + LTEXT "·Å´ó¾µÊÇΪÓÐÇá΢ÊÓ¾õÕÏ°­µÄÓû§ÌṩµÄÒ»¸ö×îµÍÏ޶ȵŦÄÜ¡£´ó¶àÊýÓÐÊÓ¾õÕÏ°­µÄÓû§ÐèÒªÒ»¸ö½Ï¸ß¹¦ÄÜÐԵķŴó¾µ×÷ÈÕ³£Ê¹Óá£",IDC_STATIC,36,7,207,33 + CONTROL "²»ÒªÔÙ´ÎÏÔʾ´ËѶϢ",IDC_SHOWWARNINGCHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,43,80,137,10 +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "·Å´ó¾µ" +END diff --git a/base/applications/magnify/lang/zh-TW.rc b/base/applications/magnify/lang/zh-TW.rc new file mode 100644 index 00000000000..92be1748620 --- /dev/null +++ b/base/applications/magnify/lang/zh-TW.rc @@ -0,0 +1,72 @@ +/* + * PROJECT: ReactOS Magnifier + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/magnify/lang/zh-TW.rc + * PURPOSE: Chinese (Traditional) Language File for Magnifier + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL + +IDC_MAGNIFIER MENU +BEGIN + POPUP "ÀÉ®×(&F)" + BEGIN + MENUITEM "µ²§ô(&X)", IDM_EXIT + MENUITEM "¿ï¶µ(&O)", IDM_OPTIONS + MENUITEM SEPARATOR + MENUITEM "Ãö©ó(&A)...", IDM_ABOUT + END +END + +IDC_MAGNIFIER ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 22, 17, 220, 75 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_CAPTION | WS_SYSMENU +CAPTION "Ãö©ó" +FONT 8, "MS Shell Dlg", 0, 0, 0x0 +BEGIN + ICON IDI_ICON,IDC_MYICON,14,9,20,20 + LTEXT "©ñ¤jÃ誩¥» 1.0",IDC_STATIC,49,10,119,8,SS_NOPREFIX + LTEXT "ª©Åv©Ò¦³ (C) 2007 Marc Piulachs (marc.piulachs@codexchange.net)",IDC_STATIC,48,24,125,22 + PUSHBUTTON "½T©w",IDOK,162,48,50,14 +END + +IDD_DIALOGOPTIONS DIALOGEX 0, 0, 153, 182 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "©ñ¤jÃè³]©w" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "µ²§ô",IDOK,96,161,50,14 + PUSHBUTTON "»¡©ú",IDC_BUTTON_HELP,38,161,50,14 + LTEXT "©ñ¤j­¿¼Æ¡G",IDC_STATIC,6,8,68,8 + COMBOBOX IDC_ZOOM,72,6,63,66,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + GROUPBOX "°lÂÜ",IDC_STATIC,7,25,139,59 + GROUPBOX "®i¥Ü",IDC_STATIC,7,87,139,57 + CONTROL "¸òÀH·Æ¹««ü¼Ð",IDC_FOLLOWMOUSECHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,42,114,10 + CONTROL "¸òÀHÁä½LµJÂI",IDC_FOLLOWKEYBOARDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,54,114,10 + CONTROL "¸òÀH¤å¦r½s¿è",IDC_FOLLOWTEXTEDITINGCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,66,114,10 + CONTROL "¦â±m¹ï´«",IDC_INVERTCOLORSCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,102,114,10 + CONTROL "¶}©l®ÉÁôÂÃ",IDC_STARTMINIMIZEDCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,114,114,10 + CONTROL "Åã¥Ü©ñ¤jÃè",IDC_SHOWMAGNIFIERCHECK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,126,114,10 +END + +IDD_WARNINGDIALOG DIALOGEX 0, 0, 250, 97 +STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION +CAPTION "ReactOS ©ñ¤jÃè" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "½T©w",IDOK,193,76,50,14 + ICON IDI_ICON,IDC_STATIC,7,17,20,20 + LTEXT "©ñ¤jÃè¬O¬°¦³»´·Lµøı»Ùꪺ¥Î¤á´£¨Ñªº¤@­Ó³Ì§C­­«×ªº¥\¯à¡C¤j¦h¼Æ¦³µøı»Ùꪺ¥Î¤á»Ý­n¤@­Ó¸û°ª¥\¯à©Êªº©ñ¤jÃè§@¤é±`¨Ï¥Î¡C",IDC_STATIC,36,7,207,33 + CONTROL "¤£­n¦A¦¸Åã¥Ü¦¹°T®§",IDC_SHOWWARNINGCHECK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,43,80,137,10 +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "©ñ¤jÃè" +END diff --git a/base/applications/magnify/magnify.rbuild b/base/applications/magnify/magnify.rbuild index 08ffe958068..c891a1e14d1 100644 --- a/base/applications/magnify/magnify.rbuild +++ b/base/applications/magnify/magnify.rbuild @@ -6,7 +6,6 @@ gdi32 advapi32 shell32 - kernel32 magnifier.c settings.c magnify.rc diff --git a/base/applications/magnify/rsrc.rc b/base/applications/magnify/rsrc.rc index f81bdbc5901..848be8c5415 100644 --- a/base/applications/magnify/rsrc.rc +++ b/base/applications/magnify/rsrc.rc @@ -7,9 +7,12 @@ #include "lang/de-DE.rc" #include "lang/fr-FR.rc" #include "lang/it-IT.rc" +#include "lang/ja-JP.rc" #include "lang/no-NO.rc" #include "lang/pl-PL.rc" #include "lang/ro-RO.rc" #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" #include "lang/uk-UA.rc" +#include "lang/zh-CN.rc" +#include "lang/zh-TW.rc" diff --git a/base/applications/mmc/lang/zh-CN.rc b/base/applications/mmc/lang/zh-CN.rc new file mode 100644 index 00000000000..5befea52ca9 --- /dev/null +++ b/base/applications/mmc/lang/zh-CN.rc @@ -0,0 +1,29 @@ +/* + * PROJECT: ReactOS Management Console + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/mmc/lang/zh-CN.rc + * PURPOSE: Chinese (Simplified) Language File for Management Console + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED + +IDM_CONSOLEROOT MENU DISCARDABLE +BEGIN + POPUP "µµ°¸(&F)" + BEGIN + MENUITEM SEPARATOR + MENUITEM "½áÊø(&X)\tAlt+F4", ID_FILE_EXIT + END + + POPUP "˵Ã÷(&H)" + BEGIN + MENUITEM "¹ØÓÚ ReactOS ¹ÜÀí¿ØÖÆ̨(&A)...", ID_HELP_ABOUT + END +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_APPTITLE "ReactOS ¹ÜÀí¿ØÖÆ̨" + IDS_CONSOLETITLE "¿ØÖÆ̨%1!u!" +END diff --git a/base/applications/mmc/lang/zh-TW.rc b/base/applications/mmc/lang/zh-TW.rc new file mode 100644 index 00000000000..978a355037e --- /dev/null +++ b/base/applications/mmc/lang/zh-TW.rc @@ -0,0 +1,29 @@ +/* + * PROJECT: ReactOS Management Console + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/mmc/lang/zh-TW.rc + * PURPOSE: Chinese (Traditional) Language File for Management Console + * TRANSLATOR: Elton Chung + */ + +LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL + +IDM_CONSOLEROOT MENU DISCARDABLE +BEGIN + POPUP "ÀÉ®×(&F)" + BEGIN + MENUITEM SEPARATOR + MENUITEM "µ²§ô(&X)\tAlt+F4", ID_FILE_EXIT + END + + POPUP "»¡©ú(&H)" + BEGIN + MENUITEM "Ãö©ó ReactOS ºÞ²z±±¨î¥x(&A)...", ID_HELP_ABOUT + END +END + +STRINGTABLE DISCARDABLE +BEGIN + IDS_APPTITLE "ReactOS ºÞ²z±±¨î¥x" + IDS_CONSOLETITLE "±±¨î¥x%1!u!" +END diff --git a/base/applications/mmc/mmc.rbuild b/base/applications/mmc/mmc.rbuild index cd2cb87790c..8976acd569e 100644 --- a/base/applications/mmc/mmc.rbuild +++ b/base/applications/mmc/mmc.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 gdi32 comdlg32 diff --git a/base/applications/mmc/rsrc.rc b/base/applications/mmc/rsrc.rc index 7e30904c6fd..c50e9794730 100644 --- a/base/applications/mmc/rsrc.rc +++ b/base/applications/mmc/rsrc.rc @@ -18,6 +18,8 @@ #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" #include "lang/uk-UA.rc" +#include "lang/zh-CN.rc" +#include "lang/zh-TW.rc" diff --git a/base/applications/mplay32/lang/de-DE.rc b/base/applications/mplay32/lang/de-DE.rc index 622fdf6f10f..470413c555e 100644 --- a/base/applications/mplay32/lang/de-DE.rc +++ b/base/applications/mplay32/lang/de-DE.rc @@ -17,8 +17,8 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_ALL_TYPES_FILTER "Alle Unterstützten (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0" - IDS_TOOLTIP_PLAY "wiedergabe" + IDS_ALL_TYPES_FILTER "Alle unterstützten (*.wav, *.cda, *.midi, *.mid, *.avi)\0*.wav;*.cda;*.midi;*.mid;*.avi\0" + IDS_TOOLTIP_PLAY "Wiedergabe" IDS_TOOLTIP_STOP "Stopp" IDS_TOOLTIP_EJECT "Auswerfen" IDS_TOOLTIP_BACKWARD "Zurück" diff --git a/base/applications/mplay32/mplay32.rbuild b/base/applications/mplay32/mplay32.rbuild index d920e958605..c472e6f0207 100644 --- a/base/applications/mplay32/mplay32.rbuild +++ b/base/applications/mplay32/mplay32.rbuild @@ -3,7 +3,6 @@ advapi32 comctl32 comdlg32 - kernel32 user32 gdi32 winmm diff --git a/base/applications/msconfig/lang/de-DE.rc b/base/applications/msconfig/lang/de-DE.rc index b7dd1ed5b9b..96cb09fd864 100644 --- a/base/applications/msconfig/lang/de-DE.rc +++ b/base/applications/msconfig/lang/de-DE.rc @@ -83,7 +83,7 @@ BEGIN PUSHBUTTON "A&ls Standard", IDC_BTN_SET_DEFAULT_BOOT, 120, 65, 63, 12 PUSHBUTTON "Nach &oben", IDC_BTN_MOVE_UP_BOOT_OPTION, 203, 65, 63, 12 PUSHBUTTON "Nach &unten", IDC_BTN_MOVE_DOWN_BOOT_OPTION, 286, 65, 63, 12 - GROUPBOX "Boot Optionen", -1, 10, 80, 250, 90,0,WS_EX_TRANSPARENT + GROUPBOX "Bootoptionen", -1, 10, 80, 250, 90,0,WS_EX_TRANSPARENT CHECKBOX "/SA&FEBOOT", IDC_CBX_SAFE_BOOT, 15, 90, 55, 10 CHECKBOX "/&NOGUIBOOT", IDC_CBX_NO_GUI_BOOT, 15, 105, 60, 10 CHECKBOX "/&BOOTLOG", IDC_CBX_BOOT_LOG, 15, 120, 50, 10 @@ -149,7 +149,7 @@ BEGIN IDS_TOOLS_CMD_CMD "cmd.exe" IDS_TOOLS_INFO_NAME "Version" - IDS_TOOLS_INFO_DESCR "Zeigt die installierte ReactOS Version an." + IDS_TOOLS_INFO_DESCR "Zeigt die installierte ReactOS-Version an." IDS_TOOLS_INFO_CMD "winver.exe" IDS_TOOLS_REGEDIT_NAME "Registrierungs-Editor" diff --git a/base/applications/msconfig/msconfig.rbuild b/base/applications/msconfig/msconfig.rbuild index ac5800db399..958125f2d0f 100644 --- a/base/applications/msconfig/msconfig.rbuild +++ b/base/applications/msconfig/msconfig.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 advapi32 version diff --git a/base/applications/mscutils/devmgmt/devmgmt.rbuild b/base/applications/mscutils/devmgmt/devmgmt.rbuild index e0244eadd4a..a5f6844f06a 100644 --- a/base/applications/mscutils/devmgmt/devmgmt.rbuild +++ b/base/applications/mscutils/devmgmt/devmgmt.rbuild @@ -5,7 +5,6 @@ ntdll setupapi gdi32 - kernel32 user32 comctl32 advapi32 diff --git a/base/applications/mscutils/devmgmt/lang/de-DE.rc b/base/applications/mscutils/devmgmt/lang/de-DE.rc index a3706603fcf..6e5f6fb4900 100644 --- a/base/applications/mscutils/devmgmt/lang/de-DE.rc +++ b/base/applications/mscutils/devmgmt/lang/de-DE.rc @@ -51,7 +51,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License, wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/devmgmt/lang/ja-JP.rc b/base/applications/mscutils/devmgmt/lang/ja-JP.rc index cd4fd23c86e..2a0afdf9f23 100644 --- a/base/applications/mscutils/devmgmt/lang/ja-JP.rc +++ b/base/applications/mscutils/devmgmt/lang/ja-JP.rc @@ -51,7 +51,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_LICENSE "‚±‚̃vƒƒOƒ‰ƒ€‚̓tƒŠ[ƒ\\ƒtƒgƒEƒFƒA‚Å‚·B‚ ‚È‚½‚Í‚±‚ê‚ðAƒtƒŠ[ƒ\\ƒtƒgƒEƒFƒAà’c‚É‚æ‚Á‚Ä”­s‚³‚ꂽ GNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘(ƒo[ƒWƒ‡ƒ“2‚©AŠó–]‚É‚æ‚Á‚Ä‚Í‚»‚êˆÈ~‚̃o[ƒWƒ‡ƒ“‚Ì‚¤‚¿‚Ç‚ê‚©)‚Ì’è‚ß‚éðŒ‚̉º‚ōĔЕz‚Ü‚½‚͉ü•Ï‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B\r\n\r\n‚±‚̃vƒƒOƒ‰ƒ€‚Í—L—p‚Å‚ ‚邱‚Æ‚ðŠè‚Á‚Ä”z•z‚³‚ê‚Ü‚·‚ªA*‘S‚­‚Ì–³•ÛØ* ‚Å‚·B*¤‹Æ‰Â”\\«‚̕ۏØ*‚â*“Á’è‚Ì–Ú“I‚Ö‚Ì“K‡«*‚́AŒ¾ŠO‚ÉŽ¦‚³‚ꂽ‚à‚Ì‚àŠÜ‚ß‘S‚­‘¶Ý‚µ‚Ü‚¹‚ñBÚ‚µ‚­‚ÍGNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘‚ð‚²——‚­‚¾‚³‚¢B\r\n\r\n‚ ‚È‚½‚Í‚±‚̃vƒƒOƒ‰ƒ€‚Æ‹¤‚ɁAGNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘‚Ì•¡»‚ðˆê•”Žó‚¯Žæ‚Á‚½‚Í‚¸‚Å‚·B‚à‚µŽó‚¯Žæ‚Á‚Ä‚¢‚È‚¯‚ê‚΁AƒtƒŠ[ƒ\\ƒtƒgƒEƒFƒAà’c‚܂Ő¿‹‚µ‚Ä‚­‚¾‚³‚¢(ˆ¶æ‚Í the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA)B" + IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/devmgmt/lang/uk-UA.rc b/base/applications/mscutils/devmgmt/lang/uk-UA.rc index 7d43cda1a64..c45a6f1e58a 100644 --- a/base/applications/mscutils/devmgmt/lang/uk-UA.rc +++ b/base/applications/mscutils/devmgmt/lang/uk-UA.rc @@ -59,7 +59,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + IDS_LICENSE "Öå â³ëüíå ïðîãðàìíå çàáåçïå÷åííÿ; Âè ìîæåòå ðîçïîâñþäæóâàòè ¿¿ òà çì³íþâàòè, äîòðèìóþ÷èñü óìîâè ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU, îïóáë³êîâàíî¿ Ôîíäîì â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ; àáî ðåäàêö³¿ 2 Óãîäè, àáî áóäü-ÿêî¿ ðåäàêö³¿, âèïóùåíî¿ ï³çí³øå.\r\n\r\nÖÿ ïðîãðàìà ðîçïîâñþäæóºòüñÿ â íà䳿 íà òå, ùî âîíà âèÿâèòüñÿ êîðèñíîþ, àëå ÁÅÇ ÁÓÄÜ-ßÊÈÕ ÃÀÐÀÍÒ²É, âêëþ÷àþ÷è ÓßÂÍÎÞ ÃÀÐÀÍÒ²ªÞ ßÊÎÑÒ² àáî ÏÐÈÄÀÒÍÎÑÒ² äëÿ ïåâíèõ ö³ëåé. Ïîäðîáèö³ ì³ñòÿòüñÿ ó ³äêðèò³é ë³öåíç³éí³é óãîä³ GNU.\r\n\r\nÐàçîì ç ö³ºþ ïðîãðàìîþ ïîâèíåí ïîøèðþâàòèñÿ ïðèì³ðíèê ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU. ßêùî â³í â³äñóòí³é, ïîâ³äîìòå ïðî öå â Ôîíä â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/devmgmt/mainwnd.c b/base/applications/mscutils/devmgmt/mainwnd.c index 68ad01afb86..c9785097d17 100644 --- a/base/applications/mscutils/devmgmt/mainwnd.c +++ b/base/applications/mscutils/devmgmt/mainwnd.c @@ -342,12 +342,21 @@ OnNotify(PMAIN_WND_INFO Info, case NM_DBLCLK: { HTREEITEM hSelected = TreeView_GetSelection(Info->hTreeView); + TV_HITTESTINFO HitTest; if (!TreeView_GetChild(Info->hTreeView, hSelected)) { - OpenPropSheet(Info->hTreeView, - hSelected); + if (GetCursorPos(&HitTest.pt) && + ScreenToClient(Info->hTreeView, &HitTest.pt)) + { + if (TreeView_HitTest(Info->hTreeView, &HitTest)) + { + if (HitTest.hItem == hSelected) + OpenPropSheet(Info->hTreeView, + hSelected); + } + } } } break; diff --git a/base/applications/mscutils/eventvwr/eventvwr.rbuild b/base/applications/mscutils/eventvwr/eventvwr.rbuild index 4a1e6782086..367c19e5bb4 100644 --- a/base/applications/mscutils/eventvwr/eventvwr.rbuild +++ b/base/applications/mscutils/eventvwr/eventvwr.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 comctl32 advapi32 diff --git a/base/applications/mscutils/servman/control.c b/base/applications/mscutils/servman/control.c index 8ccf6fc43f4..d6fcbbacfcd 100644 --- a/base/applications/mscutils/servman/control.c +++ b/base/applications/mscutils/servman/control.c @@ -2,156 +2,183 @@ * PROJECT: ReactOS Services * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/mscutils/servman/control.c - * PURPOSE: Stops, pauses and resumes a service - * COPYRIGHT: Copyright 2006-2007 Ged Murphy + * PURPOSE: Pauses and resumes a service + * COPYRIGHT: Copyright 2006-2010 Ged Murphy * */ #include "precomp.h" -BOOL -Control(PMAIN_WND_INFO Info, - HWND hProgDlg, - DWORD Control) +static BOOL +DoControl(PMAIN_WND_INFO Info, + HWND hProgress, + DWORD Control) { SC_HANDLE hSCManager; - SC_HANDLE hSc; + SC_HANDLE hService; SERVICE_STATUS_PROCESS ServiceStatus = {0}; SERVICE_STATUS Status; DWORD BytesNeeded = 0; + DWORD dwStartTickCount; + DWORD dwOldCheckPoint; + DWORD dwWaitTime; + DWORD dwMaxWait; + DWORD dwReqState; BOOL bRet = FALSE; - BOOL bDispErr = TRUE; + + /* Set the state we're interested in */ + switch (Control) + { + case SERVICE_CONTROL_PAUSE: + dwReqState = SERVICE_PAUSED; + break; + case SERVICE_CONTROL_CONTINUE: + dwReqState = SERVICE_RUNNING; + break; + default: + /* Unhandled control code */ + return FALSE; + } hSCManager = OpenSCManager(NULL, NULL, - SC_MANAGER_ALL_ACCESS); - if (hSCManager != NULL) + SC_MANAGER_CONNECT); + if (hSCManager) { - hSc = OpenService(hSCManager, - Info->pCurrentService->lpServiceName, - SERVICE_ALL_ACCESS); - if (hSc != NULL) + hService = OpenService(hSCManager, + Info->pCurrentService->lpServiceName, + SERVICE_PAUSE_CONTINUE | SERVICE_INTERROGATE | SERVICE_QUERY_STATUS); + if (hService) { - if (ControlService(hSc, + if (hProgress) + { + /* Increment the progress bar */ + IncrementProgressBar(hProgress, DEFAULT_STEP); + } + + /* Send the control message to the service */ + if (ControlService(hService, Control, &Status)) { - bDispErr = FALSE; - - if (QueryServiceStatusEx(hSc, + /* Get the service status */ + if (QueryServiceStatusEx(hService, SC_STATUS_PROCESS_INFO, (LPBYTE)&ServiceStatus, sizeof(SERVICE_STATUS_PROCESS), &BytesNeeded)) { - DWORD dwStartTickCount = GetTickCount(); - DWORD dwOldCheckPoint = ServiceStatus.dwCheckPoint; - DWORD dwMaxWait = 2000 * 60; // wait for 2 mins - - IncrementProgressBar(hProgDlg); + /* We don't want to wait for more than 30 seconds */ + dwMaxWait = 30000; + dwStartTickCount = GetTickCount(); - while (ServiceStatus.dwCurrentState != Control) + /* Loop until it's at the correct state */ + while (ServiceStatus.dwCurrentState != dwReqState) { - DWORD dwWaitTime = ServiceStatus.dwWaitHint / 10; + dwOldCheckPoint = ServiceStatus.dwCheckPoint; + dwWaitTime = ServiceStatus.dwWaitHint / 10; - if (!QueryServiceStatusEx(hSc, + /* Get the latest status info */ + if (!QueryServiceStatusEx(hService, SC_STATUS_PROCESS_INFO, (LPBYTE)&ServiceStatus, sizeof(SERVICE_STATUS_PROCESS), &BytesNeeded)) { + /* Something went wrong... */ break; } + /* Is the service making progress? */ if (ServiceStatus.dwCheckPoint > dwOldCheckPoint) { - /* The service is making progress, increment the progress bar */ - IncrementProgressBar(hProgDlg); + /* It is, get the latest tickcount to reset the max wait time */ dwStartTickCount = GetTickCount(); dwOldCheckPoint = ServiceStatus.dwCheckPoint; + IncrementProgressBar(hProgress, DEFAULT_STEP); } else { + /* It's not, make sure we haven't exceeded our wait time */ if(GetTickCount() >= dwStartTickCount + dwMaxWait) { - /* give up */ + /* We have, give up */ break; } } - if(dwWaitTime < 200) + /* Adjust the wait hint times */ + if (dwWaitTime < 200) dwWaitTime = 200; else if (dwWaitTime > 10000) dwWaitTime = 10000; + /* Wait before trying again */ Sleep(dwWaitTime); } } + + if (ServiceStatus.dwCurrentState == dwReqState) + { + bRet = TRUE; + } } - CloseServiceHandle(hSc); + CloseServiceHandle(hService); } CloseServiceHandle(hSCManager); } - if (ServiceStatus.dwCurrentState == Control) - { - CompleteProgressBar(hProgDlg); - Sleep(500); - bRet = TRUE; - } - else - { - if (bDispErr) - GetError(); - else - DisplayString(_T("The service failed to start")); - } - return bRet; - - } -BOOL DoPause(PMAIN_WND_INFO Info) +BOOL +DoPause(PMAIN_WND_INFO Info) { - BOOL ret = FALSE; - HWND hProgDlg; + HWND hProgress; + BOOL bRet = FALSE; - hProgDlg = CreateProgressDialog(Info->hMainWnd, - Info->pCurrentService->lpServiceName, - IDS_PROGRESS_INFO_PAUSE); - if (hProgDlg) + /* Create a progress window to track the progress of the pausing service */ + hProgress = CreateProgressDialog(Info->hMainWnd, + IDS_PROGRESS_INFO_PAUSE); + if (hProgress) { - ret = Control(Info, - hProgDlg, - SERVICE_CONTROL_PAUSE); + /* Set the service name and reset the progress bag */ + InitializeProgressDialog(hProgress, Info->pCurrentService->lpServiceName); - DestroyWindow(hProgDlg); + /* Resume the requested service */ + bRet = DoControl(Info, hProgress, SERVICE_CONTROL_PAUSE); + + /* Complete and destroy the progress bar */ + DestroyProgressDialog(hProgress, bRet); } - return ret; + return bRet; } -BOOL DoResume(PMAIN_WND_INFO Info) +BOOL +DoResume(PMAIN_WND_INFO Info) { - BOOL ret = FALSE; - HWND hProgDlg; + HWND hProgress; + BOOL bRet = FALSE; - hProgDlg = CreateProgressDialog(Info->hMainWnd, - Info->pCurrentService->lpServiceName, - IDS_PROGRESS_INFO_RESUME); - if (hProgDlg) + /* Create a progress window to track the progress of the resuming service */ + hProgress = CreateProgressDialog(Info->hMainWnd, + IDS_PROGRESS_INFO_RESUME); + if (hProgress) { - ret = Control(Info, - hProgDlg, - SERVICE_CONTROL_CONTINUE); + /* Set the service name and reset the progress bag */ + InitializeProgressDialog(hProgress, Info->pCurrentService->lpServiceName); + + /* Resume the requested service */ + bRet = DoControl(Info, hProgress, SERVICE_CONTROL_CONTINUE); - DestroyWindow(hProgDlg); + /* Complete and destroy the progress bar */ + DestroyProgressDialog(hProgress, bRet); } - return ret; + return bRet; } diff --git a/base/applications/mscutils/servman/dependencies.c b/base/applications/mscutils/servman/dependencies.c deleted file mode 100644 index 7e753f5931e..00000000000 --- a/base/applications/mscutils/servman/dependencies.c +++ /dev/null @@ -1,298 +0,0 @@ -/* - * PROJECT: ReactOS Services - * LICENSE: GPL - See COPYING in the top level directory - * FILE: base/applications/mscutils/servman/dependencies.c - * PURPOSE: Helper functions for service dependents - * COPYRIGHT: Copyright 2006-2009 Ged Murphy - * - */ - -#include "precomp.h" - - -/* - * Services which depend on the given service. - * The return components depend on this service - */ -LPTSTR -GetDependentServices(SC_HANDLE hService) -{ - LPQUERY_SERVICE_CONFIG lpServiceConfig; - LPTSTR lpStr = NULL; - DWORD bytesNeeded; - DWORD bytes; - - if (!QueryServiceConfig(hService, - NULL, - 0, - &bytesNeeded) && - GetLastError() == ERROR_INSUFFICIENT_BUFFER) - { - lpServiceConfig = HeapAlloc(ProcessHeap, - 0, - bytesNeeded); - if (lpServiceConfig) - { - if (QueryServiceConfig(hService, - lpServiceConfig, - bytesNeeded, - &bytesNeeded)) - { - if (lpServiceConfig) - { - lpStr = lpServiceConfig->lpDependencies; - bytes = 0; - - while (TRUE) - { - bytes++; - - if (!*lpStr && !*(lpStr + 1)) - { - bytes++; - break; - } - - lpStr++; - } - - bytes *= sizeof(TCHAR); - lpStr = HeapAlloc(ProcessHeap, - 0, - bytes); - if (lpStr) - { - CopyMemory(lpStr, - lpServiceConfig->lpDependencies, - bytes); - } - } - } - } - } - - return lpStr; -} - - -/* - * Services which the given service depends on (1st treeview) - * The service depends on the return components - */ -LPENUM_SERVICE_STATUS -GetServiceDependents(SC_HANDLE hService, - LPDWORD lpdwCount) -{ - LPENUM_SERVICE_STATUS lpDependencies; - DWORD dwBytesNeeded; - DWORD dwCount; - - if (EnumDependentServices(hService, - SERVICE_STATE_ALL, - NULL, - 0, - &dwBytesNeeded, - &dwCount)) - { - /* There are no dependent services */ - return NULL; - } - else - { - if (GetLastError() != ERROR_MORE_DATA) - return NULL; /* Unexpected error */ - - lpDependencies = (LPENUM_SERVICE_STATUS)HeapAlloc(GetProcessHeap(), - 0, - dwBytesNeeded); - if (lpDependencies) - { - if (EnumDependentServices(hService, - SERVICE_STATE_ALL, - lpDependencies, - dwBytesNeeded, - &dwBytesNeeded, - &dwCount)) - { - *lpdwCount = dwCount; - } - else - { - HeapFree(ProcessHeap, - 0, - lpDependencies); - - lpDependencies = NULL; - } - } - } - - return lpDependencies; - -} - - -BOOL -HasDependentServices(SC_HANDLE hService) -{ - DWORD dwBytesNeeded, dwCount; - BOOL bRet = FALSE; - - if (hService) - { - if (!EnumDependentServices(hService, - SERVICE_STATE_ALL, - NULL, - 0, - &dwBytesNeeded, - &dwCount)) - { - if (GetLastError() == ERROR_MORE_DATA) - bRet = TRUE; - } - } - - return bRet; -} - -static BOOL -DoInitDependsDialog(PSTOP_INFO pStopInfo, - HWND hDlg) -{ - LPENUM_SERVICE_STATUS lpDependencies; - DWORD dwCount; - LPTSTR lpPartialStr, lpStr; - DWORD fullLen; - HICON hIcon = NULL; - BOOL bRet = FALSE; - - if (pStopInfo) - { - SetWindowLongPtr(hDlg, - GWLP_USERDATA, - (LONG_PTR)pStopInfo); - - hIcon = (HICON)LoadImage(hInstance, - MAKEINTRESOURCE(IDI_SM_ICON), - IMAGE_ICON, - 16, - 16, - 0); - if (hIcon) - { - SendMessage(hDlg, - WM_SETICON, - ICON_SMALL, - (LPARAM)hIcon); - DestroyIcon(hIcon); - } - - /* Add the label */ - if (AllocAndLoadString(&lpPartialStr, - hInstance, - IDS_STOP_DEPENDS)) - { - fullLen = _tcslen(lpPartialStr) + _tcslen(pStopInfo->pInfo->pCurrentService->lpDisplayName) + 1; - - lpStr = HeapAlloc(ProcessHeap, - 0, - fullLen * sizeof(TCHAR)); - if (lpStr) - { - _sntprintf(lpStr, fullLen, lpPartialStr, pStopInfo->pInfo->pCurrentService->lpDisplayName); - - SendDlgItemMessage(hDlg, - IDC_STOP_DEPENDS, - WM_SETTEXT, - 0, - (LPARAM)lpStr); - - bRet = TRUE; - - HeapFree(ProcessHeap, - 0, - lpStr); - } - - HeapFree(ProcessHeap, - 0, - lpPartialStr); - } - - /* Get the list of dependencies */ - lpDependencies = GetServiceDependents(pStopInfo->hMainService, &dwCount); - if (lpDependencies) - { - LPENUM_SERVICE_STATUS lpEnumServiceStatus; - DWORD i; - - for (i = 0; i < dwCount; i++) - { - lpEnumServiceStatus = &lpDependencies[i]; - - /* Add the service to the listbox */ - SendDlgItemMessage(hDlg, - IDC_STOP_DEPENDS_LB, - LB_ADDSTRING, - 0, - (LPARAM)lpEnumServiceStatus->lpDisplayName); - } - - HeapFree(ProcessHeap, - 0, - lpDependencies); - } - } - - return bRet; -} - - -INT_PTR CALLBACK -StopDependsDialogProc(HWND hDlg, - UINT message, - WPARAM wParam, - LPARAM lParam) -{ - PSTOP_INFO pStopInfo = NULL; - - /* Get the window context */ - pStopInfo = (PSTOP_INFO)GetWindowLongPtr(hDlg, - GWLP_USERDATA); - if (pStopInfo == NULL && message != WM_INITDIALOG) - { - return FALSE; - } - - switch (message) - { - case WM_INITDIALOG: - { - BOOL bRet = FALSE; - - pStopInfo = (PSTOP_INFO)lParam; - if (pStopInfo != NULL) - { - bRet = DoInitDependsDialog(pStopInfo, hDlg); - } - - return bRet; - } - - case WM_COMMAND: - { - switch (LOWORD(wParam)) - { - case IDOK: - case IDCANCEL: - { - EndDialog(hDlg, - LOWORD(wParam)); - return TRUE; - } - } - } - } - - return FALSE; -} diff --git a/base/applications/mscutils/servman/dependencies_tv1.c b/base/applications/mscutils/servman/dependencies_tv1.c new file mode 100644 index 00000000000..c4753c18569 --- /dev/null +++ b/base/applications/mscutils/servman/dependencies_tv1.c @@ -0,0 +1,206 @@ +/* + * PROJECT: ReactOS Services + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/mscutils/servman/tv1_dependencies.c + * PURPOSE: Helper functions for service dependents + * COPYRIGHT: Copyright 2009 Ged Murphy + * + */ + +#include "precomp.h" + + +LPTSTR +TV1_GetDependants(PSERVICEPROPSHEET pDlgInfo, + SC_HANDLE hService) +{ + LPQUERY_SERVICE_CONFIG lpServiceConfig; + LPTSTR lpStr = NULL; + DWORD bytesNeeded; + DWORD bytes; + + /* Get the info for this service */ + if (!QueryServiceConfig(hService, + NULL, + 0, + &bytesNeeded) && + GetLastError() == ERROR_INSUFFICIENT_BUFFER) + { + lpServiceConfig = HeapAlloc(ProcessHeap, + 0, + bytesNeeded); + if (lpServiceConfig) + { + if (QueryServiceConfig(hService, + lpServiceConfig, + bytesNeeded, + &bytesNeeded)) + { + /* Does this service have any dependencies? */ + if (lpServiceConfig->lpDependencies && + *lpServiceConfig->lpDependencies != '\0') + { + lpStr = lpServiceConfig->lpDependencies; + bytes = 0; + + /* Work out how many bytes we need to hold the list */ + while (TRUE) + { + bytes++; + + if (!*lpStr && !*(lpStr + 1)) + { + bytes++; + break; + } + + lpStr++; + } + + /* Allocate and copy the list */ + bytes *= sizeof(TCHAR); + lpStr = HeapAlloc(ProcessHeap, + 0, + bytes); + if (lpStr) + { + CopyMemory(lpStr, + lpServiceConfig->lpDependencies, + bytes); + } + } + } + + HeapFree(GetProcessHeap(), + 0, + lpServiceConfig); + } + } + + return lpStr; +} + +VOID +TV1_AddDependantsToTree(PSERVICEPROPSHEET pDlgInfo, + HTREEITEM hParent, + LPTSTR lpServiceName) +{ + SC_HANDLE hSCManager; + SC_HANDLE hService; + LPQUERY_SERVICE_CONFIG lpServiceConfig; + LPTSTR lpDependants; + LPTSTR lpStr; + LPTSTR lpNoDepends; + BOOL bHasChildren; + + hSCManager = OpenSCManager(NULL, + NULL, + SC_MANAGER_ALL_ACCESS); + if (hSCManager) + { + hService = OpenService(hSCManager, + lpServiceName, + SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS | SERVICE_QUERY_CONFIG); + if (hService) + { + /* Get a list of service dependents */ + lpDependants = TV1_GetDependants(pDlgInfo, hService); + if (lpDependants) + { + lpStr = lpDependants; + + /* Make sure this isn't the end of the list */ + while (*lpStr) + { + /* Get the info for this service */ + lpServiceConfig = GetServiceConfig(lpStr); + if (lpServiceConfig) + { + /* Does this item need a +/- box? */ + if (lpServiceConfig->lpDependencies && + *lpServiceConfig->lpDependencies != '\0') + { + bHasChildren = TRUE; + } + else + { + bHasChildren = FALSE; + } + + /* Add it */ + AddItemToTreeView(pDlgInfo->hDependsTreeView1, + hParent, + lpServiceConfig->lpDisplayName, + lpStr, + lpServiceConfig->dwServiceType, + bHasChildren); + + HeapFree(GetProcessHeap(), + 0, + lpServiceConfig); + } + + /* Move to the end of the string */ + while (*lpStr++) + ; + } + + HeapFree(GetProcessHeap(), + 0, + lpDependants); + } + else + { + /* If there is no parent, set the tree to 'no dependencies' */ + if (!hParent) + { + /* Load the 'No dependencies' string */ + AllocAndLoadString(&lpNoDepends, hInstance, IDS_NO_DEPENDS); + + AddItemToTreeView(pDlgInfo->hDependsTreeView1, + NULL, + lpNoDepends, + NULL, + 0, + FALSE); + + HeapFree(ProcessHeap, + 0, + lpNoDepends); + + /* Disable the window */ + EnableWindow(pDlgInfo->hDependsTreeView1, FALSE); + } + } + + CloseServiceHandle(hService); + } + + CloseServiceHandle(hSCManager); + } +} + + +BOOL +TV1_Initialize(PSERVICEPROPSHEET pDlgInfo, + LPTSTR lpServiceName) +{ + BOOL bRet = FALSE; + + /* Accociate the imagelist with TV1 */ + pDlgInfo->hDependsTreeView1 = GetDlgItem(pDlgInfo->hDependsWnd, IDC_DEPEND_TREE1); + if (!pDlgInfo->hDependsTreeView1) + { + ImageList_Destroy(pDlgInfo->hDependsImageList); + pDlgInfo->hDependsImageList = NULL; + return FALSE; + } + (void)TreeView_SetImageList(pDlgInfo->hDependsTreeView1, + pDlgInfo->hDependsImageList, + TVSIL_NORMAL); + + /* Set the first items in the control */ + TV1_AddDependantsToTree(pDlgInfo, NULL, lpServiceName); + + return bRet; +} diff --git a/base/applications/mscutils/servman/dependencies_tv2.c b/base/applications/mscutils/servman/dependencies_tv2.c new file mode 100644 index 00000000000..65a1e758528 --- /dev/null +++ b/base/applications/mscutils/servman/dependencies_tv2.c @@ -0,0 +1,201 @@ +/* + * PROJECT: ReactOS Services + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/mscutils/servman/tv2_dependencies.c + * PURPOSE: Helper functions for service dependents + * COPYRIGHT: Copyright 2009 Ged Murphy + * + */ + +#include "precomp.h" + + +BOOL +TV2_HasDependantServices(LPWSTR lpServiceName) +{ + HANDLE hSCManager; + HANDLE hService; + DWORD dwBytesNeeded, dwCount; + BOOL bRet = FALSE; + + hSCManager = OpenSCManager(NULL, + NULL, + SC_MANAGER_ALL_ACCESS); + if (hSCManager) + { + hService = OpenService(hSCManager, + lpServiceName, + SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS); + if (hService) + { + /* Does this have any dependencies? */ + if (!EnumDependentServices(hService, + SERVICE_STATE_ALL, + NULL, + 0, + &dwBytesNeeded, + &dwCount)) + { + if (GetLastError() == ERROR_MORE_DATA) + { + /* It does, return TRUE */ + bRet = TRUE; + } + } + } + + CloseServiceHandle(hSCManager); + } + + return bRet; +} + + +LPENUM_SERVICE_STATUS +TV2_GetDependants(LPWSTR lpServiceName, + LPDWORD lpdwCount) +{ + SC_HANDLE hSCManager; + SC_HANDLE hService; + LPENUM_SERVICE_STATUSW lpDependencies = NULL; + DWORD dwBytesNeeded; + DWORD dwCount; + + /* Set the first items in each tree view */ + hSCManager = OpenSCManagerW(NULL, + NULL, + SC_MANAGER_ALL_ACCESS); + if (hSCManager) + { + hService = OpenServiceW(hSCManager, + lpServiceName, + SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS | SERVICE_QUERY_CONFIG); + if (hService) + { + /* Does this have any dependencies? */ + if (!EnumDependentServicesW(hService, + SERVICE_STATE_ALL, + NULL, + 0, + &dwBytesNeeded, + &dwCount) && + GetLastError() == ERROR_MORE_DATA) + { + lpDependencies = (LPENUM_SERVICE_STATUSW)HeapAlloc(GetProcessHeap(), + 0, + dwBytesNeeded); + if (lpDependencies) + { + /* Get the list of dependents */ + if (EnumDependentServicesW(hService, + SERVICE_STATE_ALL, + lpDependencies, + dwBytesNeeded, + &dwBytesNeeded, + &dwCount)) + { + /* Set the count */ + *lpdwCount = dwCount; + } + else + { + HeapFree(ProcessHeap, + 0, + lpDependencies); + + lpDependencies = NULL; + } + } + } + + CloseServiceHandle(hService); + } + + CloseServiceHandle(hSCManager); + } + + return lpDependencies; +} + + +VOID +TV2_AddDependantsToTree(PSERVICEPROPSHEET pDlgInfo, + HTREEITEM hParent, + LPTSTR lpServiceName) +{ + + LPENUM_SERVICE_STATUSW lpServiceStatus; + LPTSTR lpNoDepends; + DWORD count, i; + BOOL bHasChildren; + + /* Get a list of service dependents */ + lpServiceStatus = TV2_GetDependants(lpServiceName, &count); + if (lpServiceStatus) + { + for (i = 0; i < count; i++) + { + /* Does this item need a +/- box? */ + bHasChildren = TV2_HasDependantServices(lpServiceStatus[i].lpServiceName); + + /* Add it */ + AddItemToTreeView(pDlgInfo->hDependsTreeView2, + hParent, + lpServiceStatus[i].lpDisplayName, + lpServiceStatus[i].lpServiceName, + lpServiceStatus[i].ServiceStatus.dwServiceType, + bHasChildren); + } + + HeapFree(GetProcessHeap(), + 0, + lpServiceStatus); + } + else + { + /* If there is no parent, set the tree to 'no dependencies' */ + if (!hParent) + { + /* Load the 'No dependencies' string */ + AllocAndLoadString(&lpNoDepends, hInstance, IDS_NO_DEPENDS); + + AddItemToTreeView(pDlgInfo->hDependsTreeView2, + NULL, + lpNoDepends, + NULL, + 0, + FALSE); + + HeapFree(ProcessHeap, + 0, + lpNoDepends); + + /* Disable the window */ + EnableWindow(pDlgInfo->hDependsTreeView2, FALSE); + } + } +} + +BOOL +TV2_Initialize(PSERVICEPROPSHEET pDlgInfo, + LPTSTR lpServiceName) +{ + BOOL bRet = FALSE; + + /* Accociate the imagelist with TV2 */ + pDlgInfo->hDependsTreeView2 = GetDlgItem(pDlgInfo->hDependsWnd, IDC_DEPEND_TREE2); + if (!pDlgInfo->hDependsTreeView2) + { + ImageList_Destroy(pDlgInfo->hDependsImageList); + pDlgInfo->hDependsImageList = NULL; + return FALSE; + } + (void)TreeView_SetImageList(pDlgInfo->hDependsTreeView2, + pDlgInfo->hDependsImageList, + TVSIL_NORMAL); + + /* Set the first items in the control */ + TV2_AddDependantsToTree(pDlgInfo, NULL, lpServiceName); + + return bRet; +} diff --git a/base/applications/mscutils/servman/lang/bg-BG.rc b/base/applications/mscutils/servman/lang/bg-BG.rc index 7a90a8b7c6a..46bb5730775 100644 --- a/base/applications/mscutils/servman/lang/bg-BG.rc +++ b/base/applications/mscutils/servman/lang/bg-BG.rc @@ -93,7 +93,7 @@ BEGIN LTEXT "Îïèñàíèå:", IDC_STATIC, 4, 51, 110, 11 LTEXT "Ïúò äî èçïúëíèìèÿ:", IDC_STATIC, 6, 73, 110, 9 /* startup type*/ - LTEXT "Âèä íà ïóñêàíå:", IDC_STATIC, 6, 108, 110, 11 + LTEXT "Ïóñêàíå:", IDC_STATIC, 6, 108, 110, 11 LTEXT "Ñúñòîÿíèå íà óñëóãàòà:", IDC_STATIC, 4, 138, 110, 11 LTEXT "", IDC_SERV_STATUS, 120, 138, 176, 11, WS_CHILD | WS_VISIBLE /* LTEXT "You can specify the start parameters that apply when you start the service from here.",IDC_STATIC, 6,177,240,15 */ @@ -107,8 +107,8 @@ CAPTION " FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 /* LTEXT "Some services depend on other services, system drivers and load order groups. If a system component is stopped or it is not running properly, dependant services can be affected.", IDC_STATIC,8, 7, 238, 26 */ LTEXT "Íÿêîè óñëóãè çàâèñÿò îò äðóãè óñëóãè, âîäà÷è (driver) è çàðåæäàò äðóãè ãðóïè. Àêî íÿêîÿ ñèñòåìíà ñúñòàâêà å ñïðÿíà èëè íå ðàáîòè ïðàâèëíî, çàâèñèìèòå îò íåÿ óñëóãè ìîæå äà áúäàò çàñåãíàòè.", IDC_STATIC,8, 7, 238, 26 LTEXT "Òàçè óñëóãà çàâèñè îò ñëåäíèòå ñúñòàâêè", IDC_STATIC, 8, 57, 236, 9 diff --git a/base/applications/mscutils/servman/lang/de-DE.rc b/base/applications/mscutils/servman/lang/de-DE.rc index a29eb823faa..d291a48463d 100644 --- a/base/applications/mscutils/servman/lang/de-DE.rc +++ b/base/applications/mscutils/servman/lang/de-DE.rc @@ -106,8 +106,8 @@ CAPTION "Abh FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Einige Dienste sind von anderen Diensten, Systemtreibern und Ladegruppen abhängig. Falls eine Systemkomponente anhält oder nicht einwandfrei ausgeführt wird, kann dies Auswirkungen auf abhängige Dienste haben.", IDC_STATIC,8, 7, 238, 38 LTEXT "Dieser Dienst ist von diesen Systemkomponenten abhängig", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 @@ -193,7 +193,7 @@ BEGIN IDS_NUM_SERVICES "Anzahl der Dienste: %d" IDS_STOP_DEPENDS "When %s stops, these other services will also stop" IDS_NO_DEPENDS "" - IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + IDS_LICENSE "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License, wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/servman/lang/el-GR.rc b/base/applications/mscutils/servman/lang/el-GR.rc index acdfd1a7b60..dc0fc4af3e1 100644 --- a/base/applications/mscutils/servman/lang/el-GR.rc +++ b/base/applications/mscutils/servman/lang/el-GR.rc @@ -106,8 +106,8 @@ CAPTION " FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Some services depend on other services, system drivers and load order groups. If a system component is stopped or it is not running properly, dependant services can be affected.", IDC_STATIC,8, 7, 238, 26 LTEXT "This service depends on the following components", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/en-US.rc b/base/applications/mscutils/servman/lang/en-US.rc index 38e94730e17..ac76978d457 100644 --- a/base/applications/mscutils/servman/lang/en-US.rc +++ b/base/applications/mscutils/servman/lang/en-US.rc @@ -106,8 +106,8 @@ CAPTION "Dependencies" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Some services depend on other services, system drivers and load order groups. If a system component is stopped or it is not running properly, dependant services can be affected.", IDC_STATIC,8, 7, 238, 26 LTEXT "This service depends on the following components", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/es-ES.rc b/base/applications/mscutils/servman/lang/es-ES.rc index e64f3ccfcbd..c1bc8171cfa 100644 --- a/base/applications/mscutils/servman/lang/es-ES.rc +++ b/base/applications/mscutils/servman/lang/es-ES.rc @@ -106,8 +106,8 @@ CAPTION "Dependencias" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Algunos servicios dependen de otros servicios, controladores de sistemas y grupos de orden de carga. Si un componente de sistema se detiene o no funciona correctamente, es posible que otros servicios dependientes resulten afectados.", IDC_STATIC,8, 7, 238, 26 LTEXT "Este servicio depende de los siguientes componentes", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/fr-FR.rc b/base/applications/mscutils/servman/lang/fr-FR.rc index 2193e30eef4..bdcfeceb38d 100644 --- a/base/applications/mscutils/servman/lang/fr-FR.rc +++ b/base/applications/mscutils/servman/lang/fr-FR.rc @@ -107,8 +107,8 @@ CAPTION "D FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Certains services dépendent d'autres services, pilotes système et groupes d'ordre de chargement. Si un composant système est arrêté ou ne fonctionne pas correctement, les services dépendants peuvent être affectés.", IDC_STATIC,8, 7, 238, 36 LTEXT "Ce service dépend des composants système suivants", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/id-ID.rc b/base/applications/mscutils/servman/lang/id-ID.rc index 5ef29c63e7c..9a0d73bd31c 100644 --- a/base/applications/mscutils/servman/lang/id-ID.rc +++ b/base/applications/mscutils/servman/lang/id-ID.rc @@ -106,8 +106,8 @@ CAPTION "Ketergantungan" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Beberapa layanan bergantung pada layanan lainnya, driver sistem dan grup urutan pengambilan. Jika komponen sistem dihentikan atau tidak berjalan dengan benar, layanan yang bergantung akan dipengaruhi.", IDC_STATIC,8, 7, 238, 26 LTEXT "Layanan ini tergantun pada komponen berikut", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/it-IT.rc b/base/applications/mscutils/servman/lang/it-IT.rc index 58ab25a6c98..260901e08fa 100644 --- a/base/applications/mscutils/servman/lang/it-IT.rc +++ b/base/applications/mscutils/servman/lang/it-IT.rc @@ -106,8 +106,8 @@ CAPTION "Dipendenze" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Alcuni servizi dipendono da altri servizi, driver di sistema e gruppi di ordine di caricamento. Se un componente di sistema viene fermato o non sta funzionando regolarmente, i servizi dipendenti possono venire influenzati.", IDC_STATIC,8, 7, 238, 26 LTEXT "Questo servizio dipende dai seguenti componenti", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/ja-JP.rc b/base/applications/mscutils/servman/lang/ja-JP.rc index 90e94158f83..097f82d5ebf 100644 --- a/base/applications/mscutils/servman/lang/ja-JP.rc +++ b/base/applications/mscutils/servman/lang/ja-JP.rc @@ -106,8 +106,8 @@ CAPTION " FONT 9, "MS UI Gothic",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "‘¼‚̃T[ƒrƒXAƒVƒXƒeƒ€ ƒhƒ‰ƒCƒoA“ǂݍž‚ݏ‡ƒOƒ‹[ƒv‚ȂǂɈˑ¶‚µ‚Ä‚¢‚éƒT[ƒrƒX‚ª‚ ‚è‚Ü‚·BƒVƒXƒeƒ€ ƒRƒ“ƒ|[ƒlƒ“ƒg‚ª’âŽ~‚·‚é‚©A‚Ü‚½‚͐³í‚ÉŽÀs‚³‚ê‚È‚¢ê‡AˆË‘¶‚·‚éƒT[ƒrƒX‚ª‰e‹¿‚³‚ê‚Ä‚¢‚éê‡‚ª‚ ‚è‚Ü‚·B", IDC_STATIC,8, 7, 238, 26 LTEXT "‚±‚̃T[ƒrƒX‚ªˆË‘¶‚·‚éƒRƒ“ƒ|[ƒlƒ“ƒg", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 @@ -206,7 +206,7 @@ BEGIN IDS_NUM_SERVICES "ƒT[ƒrƒX‚̐”: %d" IDS_STOP_DEPENDS "%s ‚ð’âŽ~‚·‚éê‡A‚±‚ê‚ç‚̃T[ƒrƒX‚à’âŽ~‚µ‚Ü‚·" IDS_NO_DEPENDS "<ˆË‘¶ŠÖŒW‚È‚µ>" - IDS_LICENSE "‚±‚̃vƒƒOƒ‰ƒ€‚̓tƒŠ[ƒ\\ƒtƒgƒEƒFƒA‚Å‚·B‚ ‚È‚½‚Í‚±‚ê‚ðAƒtƒŠ[ƒ\\ƒtƒgƒEƒFƒAà’c‚É‚æ‚Á‚Ä”­s‚³‚ꂽ GNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘(ƒo[ƒWƒ‡ƒ“2‚©AŠó–]‚É‚æ‚Á‚Ä‚Í‚»‚êˆÈ~‚̃o[ƒWƒ‡ƒ“‚Ì‚¤‚¿‚Ç‚ê‚©)‚Ì’è‚ß‚éðŒ‚̉º‚ōĔЕz‚Ü‚½‚͉ü•Ï‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B\r\n\r\n‚±‚̃vƒƒOƒ‰ƒ€‚Í—L—p‚Å‚ ‚邱‚Æ‚ðŠè‚Á‚Ä”z•z‚³‚ê‚Ü‚·‚ªA*‘S‚­‚Ì–³•ÛØ* ‚Å‚·B*¤‹Æ‰Â”\\«‚̕ۏØ*‚â*“Á’è‚Ì–Ú“I‚Ö‚Ì“K‡«*‚́AŒ¾ŠO‚ÉŽ¦‚³‚ꂽ‚à‚Ì‚àŠÜ‚ß‘S‚­‘¶Ý‚µ‚Ü‚¹‚ñBÚ‚µ‚­‚ÍGNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘‚ð‚²——‚­‚¾‚³‚¢B\r\n\r\n‚ ‚È‚½‚Í‚±‚̃vƒƒOƒ‰ƒ€‚Æ‹¤‚ɁAGNUˆê”ÊŒöO—˜—p‹–‘øŒ_–ñ‘‚Ì•¡»‚ðˆê•”Žó‚¯Žæ‚Á‚½‚Í‚¸‚Å‚·B‚à‚µŽó‚¯Žæ‚Á‚Ä‚¢‚È‚¯‚ê‚΁AƒtƒŠ[ƒ\\ƒtƒgƒEƒFƒAà’c‚܂Ő¿‹‚µ‚Ä‚­‚¾‚³‚¢(ˆ¶æ‚Í the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA)B" + IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/servman/lang/ko-KR.rc b/base/applications/mscutils/servman/lang/ko-KR.rc index e6de270f46d..096ef0b0df2 100644 --- a/base/applications/mscutils/servman/lang/ko-KR.rc +++ b/base/applications/mscutils/servman/lang/ko-KR.rc @@ -109,8 +109,8 @@ CAPTION " FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "ÀϺΠ¼­ºñ½º´Â ´Ù¸¥ ¼­ºñ½º³ª ½Ã½ºÅÛ µå¶óÀ̹ö, ±×·ì µî¿¡ Á¾¼ÓµÇ¾î ÀÖ½À´Ï´Ù. ¸¸¾à ½Ã½ºÅÛ ÄÄÆ÷³ÍÆ®°¡ Á¤ÁöµÇ¾ú°Å³ª Á¦´ë·Î µ¿ÀÛÇÏÁö ¾Ê´Â´Ù¸é, Á¾¼ÓµÈ ¼­ºñ½º¿¡ ¿µÇâÀ» ³¢Ä¥ ¼ö ÀÖ½À´Ï´Ù.", IDC_STATIC,8, 7, 238, 26 LTEXT "ÀÌ ¼­ºñ½º´Â ´ÙÀ½ ÄÄÆ÷³ÍÆ®¿¡ Á¾¼ÓµÇ¾î ÀÖ½À´Ï´Ù.", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/no-NO.rc b/base/applications/mscutils/servman/lang/no-NO.rc index 0339e243d84..adecaf078f9 100644 --- a/base/applications/mscutils/servman/lang/no-NO.rc +++ b/base/applications/mscutils/servman/lang/no-NO.rc @@ -106,8 +106,8 @@ CAPTION "Dependencies" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Noen tjenester depend på andre tjenester, system drivere og laster system grupper. Hvis system komponenten er stoppet eller ikke kjøre riktig, dependant services can be affected.", IDC_STATIC,8, 7, 238, 26 LTEXT "Denne tjenesten depends på følgende komponenter", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/pl-PL.rc b/base/applications/mscutils/servman/lang/pl-PL.rc index bbf017f2615..ea785ed3433 100644 --- a/base/applications/mscutils/servman/lang/pl-PL.rc +++ b/base/applications/mscutils/servman/lang/pl-PL.rc @@ -113,8 +113,8 @@ CAPTION "Zale FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Niektóre us³ugi s¹ zale¿ne od innych us³ug, sterowników systemowych i grup kolejnoœci ³adowania. Je¿eli sk³adnik systemu jest zatrzymany lub nie dzia³a prawid³owo, mo¿e to mieæ.", IDC_STATIC,8, 7, 238, 26 LTEXT "Ta us³uga jest zale¿na od nastêpuj¹cych sk³adników systemu", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/ro-RO.rc b/base/applications/mscutils/servman/lang/ro-RO.rc index ba9ffc83c9c..82948f30a9b 100644 --- a/base/applications/mscutils/servman/lang/ro-RO.rc +++ b/base/applications/mscutils/servman/lang/ro-RO.rc @@ -108,8 +108,8 @@ CAPTION "Dependențe" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Unele servicii depind de alte servicii sau drivere de sistem și încarcă alte grupuri. Dacă o componentă de sistem a oprit un astfel de serviciu sau dacă acesta nu funcționează corect, serviciile care depind de el pot avea probleme.", IDC_STATIC,8, 7, 238, 26 LTEXT "Acest serviciu depinde de următoarele componente:", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/ru-RU.rc b/base/applications/mscutils/servman/lang/ru-RU.rc index 5036fbd05a5..026f8215a27 100644 --- a/base/applications/mscutils/servman/lang/ru-RU.rc +++ b/base/applications/mscutils/servman/lang/ru-RU.rc @@ -105,8 +105,8 @@ CAPTION " FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "",IDC_DEPEND_TREE1,"SysTreeView32",0x50010007,8,70,236,68,0x00000200 - CONTROL "",IDC_DEPEND_TREE2,"SysTreeView32",0x50010007,8,151,234,67,0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Íåêîòîðûå ñëóæáû çàâèñÿò îò äðóãèõ. Åñëè ñëóæáà îñòàíîâëåíà èëè íåïðàâèëüíî ðàáîòàåò, ýòî îòðàæàåòñÿ íà çàâèñèìûõ îò íåå ñëóæáàõ.", IDC_STATIC,8, 7, 238, 26 LTEXT "Ýòà ñëóæáà çàâèñèò îò ñëåäóþùèõ êîìïîíåíòîâ:", IDC_STATIC, 8, 59, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/sk-SK.rc b/base/applications/mscutils/servman/lang/sk-SK.rc index f524c8d0dd5..a5b9cf5c0c6 100644 --- a/base/applications/mscutils/servman/lang/sk-SK.rc +++ b/base/applications/mscutils/servman/lang/sk-SK.rc @@ -111,8 +111,8 @@ CAPTION "Z FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Some services depend on other services, system drivers and load order groups. If a system component is stopped or it is not running properly, dependant services can be affected.", IDC_STATIC,8, 7, 238, 26 LTEXT "This service depends on the following components", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/th-TH.rc b/base/applications/mscutils/servman/lang/th-TH.rc index 4375aeee4f4..48c7bb27779 100644 --- a/base/applications/mscutils/servman/lang/th-TH.rc +++ b/base/applications/mscutils/servman/lang/th-TH.rc @@ -115,8 +115,8 @@ CAPTION "Ẻ FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "¡ÒÃãËéºÃÔ¡ÒúҧÍÂèÒ§¢Ö鹡ѺºÃÔ¡ÒÃÍ×è¹æ´éÇÂ, µÑǢѺà¤Å×è͹¢Í§Ãкº áÅСÒô֧¢éÍÁÙŵÒÁÅӴѺ¡ÅØèÁ ¶éÒÊèǹ»ÃСͺµèÒ§æ¢Í§ÃкºËÂØ´·Ó§Ò¹Å§ ËÃ×ÍäÁè·Ó§Ò¹µÒÁÊÁ¤Çà ¡ÒÃãËéºÃÔ¡ÒÃẺäÁè¡Ó˹´àͧ¨ÐÁռŷѹ·Õ", IDC_STATIC,8, 7, 238, 26 LTEXT "¡ÒÃãËéºÃÔ¡ÒùÕé¢Öé¹ÍÂÙè¡ÑºÊèǹ»ÃСͺÍ×è¹æ·ÕèµÒÁÁÒ´éÇÂ", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 diff --git a/base/applications/mscutils/servman/lang/uk-UA.rc b/base/applications/mscutils/servman/lang/uk-UA.rc index 2b7f988229e..d80653f5165 100644 --- a/base/applications/mscutils/servman/lang/uk-UA.rc +++ b/base/applications/mscutils/servman/lang/uk-UA.rc @@ -14,7 +14,7 @@ BEGIN BEGIN MENUITEM "&Åêñïîðò...", ID_EXPORT MENUITEM SEPARATOR - MENUITEM "Â&èõ³ä", ID_EXIT + MENUITEM "&Âèõ³ä", ID_EXIT END POPUP "ijÿ" BEGIN @@ -110,12 +110,12 @@ BEGIN END IDD_DLG_DEPEND DIALOGEX 6,6,253,225 -CAPTION "Dependencies" +CAPTION "Çàëåæíîñò³" FONT 8, "MS Shell Dlg",0,0 STYLE DS_SHELLFONT | WS_BORDER | WS_VISIBLE | WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME | WS_GROUP | WS_TABSTOP BEGIN - CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" ,0x50010007, 8, 70, 236, 68, 0x00000200 - CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", 0x50010007, 8, 151, 234, 67, 0x00000200 + CONTROL "", IDC_DEPEND_TREE1, "SysTreeView32" , WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 70, 236, 68 + CONTROL "", IDC_DEPEND_TREE2, "SysTreeView32", WS_BORDER | WS_CHILDWINDOW | WS_VISIBLE | WS_TABSTOP | TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT | TVS_DISABLEDRAGDROP, 8, 151, 234, 67 LTEXT "Äåÿê³ ñëóæáè çàëåæàòü â³ä ³íøèõ ñëóæá, ñèñòåìíèõ äðàéâåð³â àáî ñïèñêó çàâàíòàæåííÿ ãðóï ñëóæá. ßêùî ñëóæáà çóïèíåíà àáî íåïðàâèëüíî ïðàöþº, öå âïëèâຠíà çàëåæí³ â³ä íå¿ ñëóæáè.", IDC_STATIC,8, 7, 238, 26 LTEXT "Öÿ ñëóæáà çàëåæèòü â³ä íàñòóïíèõ êîìïîíåíò³â", IDC_STATIC, 8, 57, 236, 9 LTEXT "", IDC_DEPEND_SERVICE, 8, 38, 236, 13 @@ -151,8 +151,8 @@ BEGIN LTEXT "²ì'ÿ ñëóæáè:",IDC_STATIC, 6, 40, 80, 9 LTEXT "", IDC_DEL_NAME, 15, 53, 160, 15 EDITTEXT IDC_DEL_DESC, 6, 73, 174, 48, WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_EX_STATICEDGE | ES_MULTILINE | ES_READONLY - PUSHBUTTON "Òàê", IDOK, 26, 129, 54, 13 - DEFPUSHBUTTON "ͳ", IDCANCEL, 102, 129, 54, 13 + PUSHBUTTON "OK", IDOK, 26, 129, 54, 13 + DEFPUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 102, 129, 54, 13 END IDD_DLG_HELP_OPTIONS DIALOGEX 6,6,200,150 @@ -161,7 +161,7 @@ FONT 8, "MS Shell Dlg",0,0 STYLE 0x10CF0000 BEGIN LTEXT "", IDC_CREATE_HELP, 6, 5, 200, 150 - PUSHBUTTON "Ok", IDOK, 75, 130, 44, 13 + PUSHBUTTON "OK", IDOK, 75, 130, 44, 13 END IDD_DLG_PROGRESS DIALOGEX 6,6,255,89 @@ -199,9 +199,9 @@ END STRINGTABLE DISCARDABLE BEGIN IDS_NUM_SERVICES "Íîìåð ñëóæáè: %d" - IDS_STOP_DEPENDS "When %s stops, these other services will also stop" + IDS_STOP_DEPENDS "Êîëè %s çóïèíåòüñÿ, ³íø³ ñëóæáè òàêîæ áóäå çóïèíåíî" IDS_NO_DEPENDS "" - IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + IDS_LICENSE "Öå â³ëüíå ïðîãðàìíå çàáåçïå÷åííÿ; Âè ìîæåòå ðîçïîâñþäæóâàòè ¿¿ òà çì³íþâàòè, äîòðèìóþ÷èñü óìîâè ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU, îïóáë³êîâàíî¿ Ôîíäîì â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ; àáî ðåäàêö³¿ 2 Óãîäè, àáî áóäü-ÿêî¿ ðåäàêö³¿, âèïóùåíî¿ ï³çí³øå.\r\n\r\nÖÿ ïðîãðàìà ðîçïîâñþäæóºòüñÿ â íà䳿 íà òå, ùî âîíà âèÿâèòüñÿ êîðèñíîþ, àëå ÁÅÇ ÁÓÄÜ-ßÊÈÕ ÃÀÐÀÍÒ²É, âêëþ÷àþ÷è ÓßÂÍÎÞ ÃÀÐÀÍÒ²ªÞ ßÊÎÑÒ² àáî ÏÐÈÄÀÒÍÎÑÒ² äëÿ ïåâíèõ ö³ëåé. Ïîäðîáèö³ ì³ñòÿòüñÿ ó ³äêðèò³é ë³öåíç³éí³é óãîä³ GNU.\r\n\r\nÐàçîì ç ö³ºþ ïðîãðàìîþ ïîâèíåí ïîøèðþâàòèñÿ ïðèì³ðíèê ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU. ßêùî â³í â³äñóòí³é, ïîâ³äîìòå ïðî öå â Ôîíä â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE diff --git a/base/applications/mscutils/servman/manifest.xml b/base/applications/mscutils/servman/manifest.xml index 0330d8d6fa7..7256947186e 100644 --- a/base/applications/mscutils/servman/manifest.xml +++ b/base/applications/mscutils/servman/manifest.xml @@ -1,20 +1,15 @@ - - - - - - + + + + + + diff --git a/base/applications/mscutils/servman/precomp.h b/base/applications/mscutils/servman/precomp.h index e69feb36913..9b829ad78df 100644 --- a/base/applications/mscutils/servman/precomp.h +++ b/base/applications/mscutils/servman/precomp.h @@ -23,6 +23,10 @@ #define LVSTARTUP 3 #define LVLOGONAS 4 +#define IMAGE_UNKNOWN 0 +#define IMAGE_SERVICE 1 +#define IMAGE_DRIVER 2 + typedef struct _MAIN_WND_INFO { HWND hMainWnd; @@ -40,6 +44,8 @@ typedef struct _MAIN_WND_INFO BOOL bInMenuLoop; BOOL bIsUserAnAdmin; + PVOID pTag; + } MAIN_WND_INFO, *PMAIN_WND_INFO; @@ -84,15 +90,18 @@ typedef struct _STOP_INFO } STOP_INFO, *PSTOP_INFO; /* control */ -BOOL Control(PMAIN_WND_INFO Info, HWND hProgDlg, DWORD Control); +BOOL Control(PMAIN_WND_INFO Info, HWND hProgress, DWORD Control); BOOL DoStop(PMAIN_WND_INFO Info); BOOL DoPause(PMAIN_WND_INFO Info); BOOL DoResume(PMAIN_WND_INFO Info); /* progress.c */ -HWND CreateProgressDialog(HWND hParent, LPTSTR lpServiceName, UINT Event); -VOID IncrementProgressBar(HWND hProgDlg); -VOID CompleteProgressBar(HWND hProgDlg); +#define DEFAULT_STEP 0 +HWND CreateProgressDialog(HWND hParent, UINT LabelId); +BOOL DestroyProgressDialog(HWND hProgress, BOOL bComplete); +VOID InitializeProgressDialog(HWND hProgress, LPWSTR lpServiceName); +VOID IncrementProgressBar(HWND hProgress, UINT NewPos); +VOID CompleteProgressBar(HWND hProgress); /* query.c */ ENUM_SERVICE_STATUS_PROCESS* GetSelectedService(PMAIN_WND_INFO Info); @@ -105,11 +114,6 @@ BOOL RefreshServiceList(PMAIN_WND_INFO Info); BOOL UpdateServiceStatus(ENUM_SERVICE_STATUS_PROCESS* pService); BOOL GetServiceList(PMAIN_WND_INFO Info, DWORD *NumServices); -/* dependencies */ -LPENUM_SERVICE_STATUS GetServiceDependents(SC_HANDLE hService, LPDWORD lpdwCount); -BOOL HasDependentServices(SC_HANDLE hService); -INT_PTR CALLBACK StopDependsDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); -LPTSTR GetDependentServices(SC_HANDLE hService); /* propsheet.c */ typedef struct _SERVICEPROPSHEET @@ -117,8 +121,28 @@ typedef struct _SERVICEPROPSHEET PMAIN_WND_INFO Info; ENUM_SERVICE_STATUS_PROCESS *pService; HIMAGELIST hDependsImageList; + HWND hDependsWnd; + HWND hDependsTreeView1; + HWND hDependsTreeView2; } SERVICEPROPSHEET, *PSERVICEPROPSHEET; + +HTREEITEM AddItemToTreeView(HWND hTreeView, HTREEITEM hRoot, LPTSTR lpDisplayName, LPTSTR lpServiceName, ULONG serviceType, BOOL bHasChildren); + +/* stop_dependencies */ +INT_PTR CALLBACK StopDependsDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam); +LPWSTR GetListOfServicesToStop(LPWSTR lpServiceName); + +/* tv1_dependencies */ +BOOL TV1_Initialize(PSERVICEPROPSHEET pDlgInfo, LPTSTR lpServiceName); +VOID TV1_AddDependantsToTree(PSERVICEPROPSHEET pDlgInfo, HTREEITEM hParent, LPTSTR lpServiceName); + +/* tv2_dependencies */ +BOOL TV2_Initialize(PSERVICEPROPSHEET pDlgInfo, LPTSTR lpServiceName); +VOID TV2_AddDependantsToTree(PSERVICEPROPSHEET pDlgInfo, HTREEITEM hParent, LPTSTR lpServiceName); +BOOL TV2_HasDependantServices(LPWSTR lpServiceName); +LPENUM_SERVICE_STATUS TV2_GetDependants(LPWSTR lpServiceName, LPDWORD lpdwCount); + LONG APIENTRY OpenPropSheet(PMAIN_WND_INFO Info); /* propsheet window procs */ diff --git a/base/applications/mscutils/servman/progress.c b/base/applications/mscutils/servman/progress.c index e6c01feefc2..06f4fed6c2d 100644 --- a/base/applications/mscutils/servman/progress.c +++ b/base/applications/mscutils/servman/progress.c @@ -3,7 +3,7 @@ * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/mscutils/servman/progress.c * PURPOSE: Progress dialog box message handler - * COPYRIGHT: Copyright 2006-2007 Ged Murphy + * COPYRIGHT: Copyright 2006-2010 Ged Murphy * */ @@ -15,47 +15,85 @@ VOID CompleteProgressBar(HWND hProgDlg) { HWND hProgBar; + UINT Pos = 0; + /* Get a handle to the progress bar */ hProgBar = GetDlgItem(hProgDlg, IDC_SERVCON_PROGRESS); - if (hProgBar) { - INT pos = 0; - - pos = SendMessage(hProgBar, - PBM_GETPOS, - 0, - 0); + /* Get the current position */ + Pos = SendMessageW(hProgBar, + PBM_GETPOS, + 0, + 0); - for (; pos <= PROGRESSRANGE; pos++) + /* Loop until we hit the max */ + while (Pos <= PROGRESSRANGE) { - SendMessage(hProgBar, - PBM_DELTAPOS, - pos, - 0); + /* Increment the progress bar */ + SendMessageW(hProgBar, + PBM_DELTAPOS, + Pos, + 0); + + /* Wait for 15ms, it gives it a smooth feel */ Sleep(15); + Pos++; } } } VOID -IncrementProgressBar(HWND hProgDlg) +IncrementProgressBar(HWND hProgDlg, + UINT NewPos) { HWND hProgBar; + /* Get a handle to the progress bar */ hProgBar = GetDlgItem(hProgDlg, IDC_SERVCON_PROGRESS); - if (hProgBar) { - SendMessage(hProgBar, - PBM_STEPIT, - 0, - 0); + /* Do we want to increment the default amount? */ + if (NewPos == DEFAULT_STEP) + { + /* Yes, use the step value we set on create */ + SendMessageW(hProgBar, + PBM_STEPIT, + 0, + 0); + } + else + { + /* No, use the value passed */ + SendMessageW(hProgBar, + PBM_SETPOS, + NewPos, + 0); + } } } +VOID +InitializeProgressDialog(HWND hProgDlg, + LPWSTR lpServiceName) +{ + /* Write the service name to the dialog */ + SendDlgItemMessageW(hProgDlg, + IDC_SERVCON_NAME, + WM_SETTEXT, + 0, + (LPARAM)lpServiceName); + + /* Set the progress bar to the start */ + SendDlgItemMessageW(hProgDlg, + IDC_SERVCON_PROGRESS, + PBM_SETPOS, + 0, + 0); +} + INT_PTR CALLBACK ProgressDialogProc(HWND hDlg, UINT Message, @@ -68,18 +106,21 @@ ProgressDialogProc(HWND hDlg, { HWND hProgBar; - /* set the progress bar range and step */ + /* Get a handle to the progress bar */ hProgBar = GetDlgItem(hDlg, IDC_SERVCON_PROGRESS); - SendMessage(hProgBar, - PBM_SETRANGE, - 0, - MAKELPARAM(0, PROGRESSRANGE)); - SendMessage(hProgBar, - PBM_SETSTEP, - (WPARAM)1, - 0); + /* Set the progress bar range */ + SendMessageW(hProgBar, + PBM_SETRANGE, + 0, + MAKELPARAM(0, PROGRESSRANGE)); + + /* Set the progress bar step */ + SendMessageW(hProgBar, + PBM_SETSTEP, + (WPARAM)1, + 0); } break; @@ -98,43 +139,62 @@ ProgressDialogProc(HWND hDlg, } return TRUE; - } HWND CreateProgressDialog(HWND hParent, - LPTSTR lpServiceName, - UINT Event) + UINT LabelId) { HWND hProgDlg; - TCHAR ProgDlgBuf[100]; + LPWSTR lpProgStr; /* open the progress dialog */ - hProgDlg = CreateDialog(hInstance, - MAKEINTRESOURCE(IDD_DLG_PROGRESS), - hParent, - ProgressDialogProc); + hProgDlg = CreateDialogW(hInstance, + MAKEINTRESOURCEW(IDD_DLG_PROGRESS), + hParent, + ProgressDialogProc); if (hProgDlg != NULL) { - /* write the info to the progress dialog */ - LoadString(hInstance, - Event, - ProgDlgBuf, - sizeof(ProgDlgBuf) / sizeof(TCHAR)); - - SendDlgItemMessage(hProgDlg, - IDC_SERVCON_INFO, - WM_SETTEXT, - 0, - (LPARAM)ProgDlgBuf); - - /* write the service name to the progress dialog */ - SendDlgItemMessage(hProgDlg, - IDC_SERVCON_NAME, - WM_SETTEXT, - 0, - (LPARAM)lpServiceName); + /* Load the label Id */ + if (AllocAndLoadString(&lpProgStr, + hInstance, + LabelId)) + { + /* Write it to the dialog */ + SendDlgItemMessageW(hProgDlg, + IDC_SERVCON_INFO, + WM_SETTEXT, + 0, + (LPARAM)lpProgStr); + + HeapFree(GetProcessHeap(), + 0, + lpProgStr); + } } return hProgDlg; } + +BOOL +DestroyProgressDialog(HWND hwnd, + BOOL bComplete) +{ + BOOL bRet = FALSE; + + if (hwnd) + { + if (bComplete) + { + /* Complete the progress bar */ + CompleteProgressBar(hwnd); + + /* Wait, for asthetics */ + Sleep(500); + } + + bRet = DestroyWindow(hwnd); + } + + return bRet; +} diff --git a/base/applications/mscutils/servman/propsheet_depends.c b/base/applications/mscutils/servman/propsheet_depends.c index e18f10b112b..fd5a5d3658d 100644 --- a/base/applications/mscutils/servman/propsheet_depends.c +++ b/base/applications/mscutils/servman/propsheet_depends.c @@ -10,272 +10,173 @@ #include "precomp.h" -static HTREEITEM +HTREEITEM AddItemToTreeView(HWND hTreeView, - HTREEITEM hRoot, - LPTSTR lpLabel, - ULONG serviceType) + HTREEITEM hParent, + LPTSTR lpDisplayName, + LPTSTR lpServiceName, + ULONG ServiceType, + BOOL bHasChildren) { TV_ITEM tvi; TV_INSERTSTRUCT tvins; + LPTSTR lpName; + DWORD dwSize; ZeroMemory(&tvi, sizeof(tvi)); ZeroMemory(&tvins, sizeof(tvins)); - tvi.mask = TVIF_TEXT | TVIF_SELECTEDIMAGE | TVIF_IMAGE; - tvi.pszText = lpLabel; - tvi.cchTextMax = lstrlen(lpLabel); + tvi.mask = TVIF_TEXT | TVIF_PARAM | TVIF_SELECTEDIMAGE | TVIF_IMAGE | TVIF_CHILDREN; + tvi.pszText = lpDisplayName; + tvi.cchTextMax = _tcslen(lpDisplayName); + tvi.cChildren = bHasChildren; - if (serviceType == SERVICE_WIN32_OWN_PROCESS || - serviceType == SERVICE_WIN32_SHARE_PROCESS) + /* Select the image for this service */ + switch (ServiceType) { - tvi.iImage = 1; - tvi.iSelectedImage = 1; - } - else if (serviceType == SERVICE_KERNEL_DRIVER || - serviceType == SERVICE_FILE_SYSTEM_DRIVER) - { - tvi.iImage = 2; - tvi.iSelectedImage = 2; + case SERVICE_WIN32_OWN_PROCESS: + case SERVICE_WIN32_SHARE_PROCESS: + tvi.iImage = IMAGE_SERVICE; + tvi.iSelectedImage = IMAGE_SERVICE; + break; + + case SERVICE_KERNEL_DRIVER: + case SERVICE_FILE_SYSTEM_DRIVER: + tvi.iImage = IMAGE_DRIVER; + tvi.iSelectedImage = IMAGE_DRIVER; + break; + + default: + tvi.iImage = IMAGE_UNKNOWN; + tvi.iSelectedImage = IMAGE_UNKNOWN; + break; } - else + + if (lpServiceName) { - tvi.iImage = 0; - tvi.iSelectedImage = 0; + dwSize = _tcslen(lpServiceName) + 1; + /* Attach the service name */ + lpName = (LPTSTR)HeapAlloc(GetProcessHeap(), + 0, + dwSize * sizeof(TCHAR)); + if (lpName) + { + _tcscpy_s(lpName, dwSize, lpServiceName); + tvi.lParam = (LPARAM)lpName; + } } tvins.item = tvi; - tvins.hParent = hRoot; + tvins.hParent = hParent; return TreeView_InsertItem(hTreeView, &tvins); } -#if 0 -static VOID -AddServiceDependency(PSERVICEPROPSHEET dlgInfo, - HWND hTreeView, - SC_HANDLE hSCManager, - LPTSTR lpServiceName, - HTREEITEM hParent, - HWND hwndDlg) +static LPARAM +TreeView_GetItemParam(HWND hTreeView, + HTREEITEM hItem) { - LPQUERY_SERVICE_CONFIG lpServiceConfig; - SC_HANDLE hService; - HTREEITEM hChild; - LPTSTR lpStr; - LPTSTR lpNoDepends; - - hService = OpenService(hSCManager, - lpServiceName, - SERVICE_QUERY_CONFIG); - if (hService) - { - - lpStr = GetDependentServices(hService); - if (lpStr) - { - while (*lpStr) - { - hChild = AddItemToTreeView(hTreeView, - hParent, - lpServiceConfig->lpDisplayName, - lpServiceConfig->dwServiceType); - - - AddServiceDependency(dlgInfo, - hTreeView, - hSCManager, - lpStr, - hChild, - hwndDlg); - - while (*lpStr++) - ; - } - } - else - { - if (TreeView_GetCount(hTreeView) == 0) - { - if (AllocAndLoadString(&lpNoDepends, hInstance, IDS_NO_DEPENDS)) - { - lpStr = lpNoDepends; - } - - AddItemToTreeView(hTreeView, - hParent, - lpStr, - 0); - - HeapFree(ProcessHeap, - 0, - lpNoDepends); - - EnableWindow(hTreeView, FALSE); - } - } - + LPARAM lParam = 0; + TVITEM tv = {0}; - HeapFree(ProcessHeap, - 0, - lpStr); + tv.mask = TVIF_PARAM | TVIF_HANDLE; + tv.hItem = hItem; - CloseServiceHandle(hService); + if (TreeView_GetItem(hTreeView, &tv)) + { + lParam = tv.lParam; } + return lParam; } -#endif static VOID -AddServiceDependent(HWND hTreeView, - HTREEITEM hParent, - SC_HANDLE hSCManager, - LPTSTR lpServiceName, - LPTSTR lpDisplayName, - DWORD dwServiceType) +DestroyItem(HWND hTreeView, + HTREEITEM hItem) { - LPENUM_SERVICE_STATUS lpServiceStatus; - SC_HANDLE hChildService; - HTREEITEM hChildNode; - DWORD count; - INT i; - - - hChildNode = AddItemToTreeView(hTreeView, - hParent, - lpDisplayName, - dwServiceType); - - hChildService = OpenService(hSCManager, - lpServiceName, - SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS); - if (hChildService) - { - lpServiceStatus = GetServiceDependents(hChildService, &count); - if (lpServiceStatus) - { - for (i = 0; i < count; i++) - { - AddServiceDependent(hTreeView, - hChildNode, - hSCManager, - lpServiceStatus[i].lpServiceName, - lpServiceStatus[i].lpDisplayName, - lpServiceStatus[i].ServiceStatus.dwServiceType); - } + HTREEITEM hChildItem; + LPTSTR lpServiceName; - HeapFree(ProcessHeap, - 0, - lpServiceStatus); - } + /* Does this item have any children */ + hChildItem = TreeView_GetChild(hTreeView, hItem); + if (hChildItem) + { + /* It does, recurse to that one */ + DestroyItem(hTreeView, hChildItem); + } - CloseServiceHandle(hChildService); + /* Get the string and free it */ + lpServiceName = (LPTSTR)TreeView_GetItemParam(hTreeView, hItem); + if (lpServiceName) + { + HeapFree(GetProcessHeap(), + 0, + lpServiceName); } } static VOID -SetServiceDependents(HWND hTreeView, - SC_HANDLE hSCManager, - SC_HANDLE hService) +DestroyTreeView(HWND hTreeView) { - LPENUM_SERVICE_STATUS lpServiceStatus; - LPTSTR lpNoDepends; - DWORD count, i; + HTREEITEM hItem; - lpServiceStatus = GetServiceDependents(hService, &count); - if (lpServiceStatus) + /* Get the first item in the top level */ + hItem = TreeView_GetFirstVisible(hTreeView); + if (hItem) { - for (i = 0; i < count; i++) + /* Kill it and all children */ + DestroyItem(hTreeView, hItem); + + /* Kill all remaining top level items */ + while (hItem) { - AddServiceDependent(hTreeView, - NULL, - hSCManager, - lpServiceStatus[i].lpServiceName, - lpServiceStatus[i].lpDisplayName, - lpServiceStatus[i].ServiceStatus.dwServiceType); + /* Are there any more items at the top level */ + hItem = TreeView_GetNextSibling(hTreeView, hItem); + if (hItem) + { + /* Kill it and all children */ + DestroyItem(hTreeView, hItem); + } } } - else - { - AllocAndLoadString(&lpNoDepends, hInstance, IDS_NO_DEPENDS); - - AddItemToTreeView(hTreeView, - NULL, - lpNoDepends, - 0); - - HeapFree(ProcessHeap, - 0, - lpNoDepends); - - EnableWindow(hTreeView, FALSE); - } } -static VOID -SetDependentServices(SC_HANDLE hService) +/* +static BOOL +TreeView_GetItemText(HWND hTreeView, + HTREEITEM hItem, + LPTSTR lpBuffer, + DWORD cbBuffer) { + TVITEM tv = {0}; + + tv.mask = TVIF_TEXT | TVIF_HANDLE; + tv.hItem = hItem; + tv.pszText = lpBuffer; + tv.cchTextMax = (int)cbBuffer; + + return TreeView_GetItem(hTreeView, &tv); } +*/ static VOID -InitDependPage(PSERVICEPROPSHEET dlgInfo, - HWND hwndDlg) +InitDependPage(PSERVICEPROPSHEET pDlgInfo) { - HWND hTreeView1, hTreeView2; - SC_HANDLE hSCManager; - SC_HANDLE hService; - - dlgInfo->hDependsImageList = InitImageList(IDI_NODEPENDS, - IDI_DRIVER, - GetSystemMetrics(SM_CXSMICON), - GetSystemMetrics(SM_CXSMICON), - IMAGE_ICON); - - - hTreeView1 = GetDlgItem(hwndDlg, IDC_DEPEND_TREE1); - if (!hTreeView1) - return; - - (void)TreeView_SetImageList(hTreeView1, - dlgInfo->hDependsImageList, - TVSIL_NORMAL); - - hTreeView2 = GetDlgItem(hwndDlg, IDC_DEPEND_TREE2); - if (!hTreeView2) - return; - - (void)TreeView_SetImageList(hTreeView2, - dlgInfo->hDependsImageList, - TVSIL_NORMAL); - - hSCManager = OpenSCManager(NULL, - NULL, - SC_MANAGER_ALL_ACCESS); - if (hSCManager) - { - hService = OpenService(hSCManager, - dlgInfo->pService->lpServiceName, - SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS | SERVICE_QUERY_CONFIG); - if (hService) - { - /* Set the first tree view */ - SetServiceDependents(hTreeView1, - hSCManager, - hService); - - /* Set the second tree view */ - SetDependentServices(hService); - - CloseServiceHandle(hService); - } - - CloseServiceHandle(hSCManager); - } - + /* Initialize the image list */ + pDlgInfo->hDependsImageList = InitImageList(IDI_NODEPENDS, + IDI_DRIVER, + GetSystemMetrics(SM_CXSMICON), + GetSystemMetrics(SM_CXSMICON), + IMAGE_ICON); + + /* Set the first tree view */ + TV1_Initialize(pDlgInfo, pDlgInfo->pService->lpServiceName); + + /* Set the second tree view */ + TV2_Initialize(pDlgInfo, pDlgInfo->pService->lpServiceName); } - /* * Dependancies Property dialog callback. * Controls messages to the Dependancies dialog @@ -286,12 +187,12 @@ DependenciesPageProc(HWND hwndDlg, WPARAM wParam, LPARAM lParam) { - PSERVICEPROPSHEET dlgInfo; + PSERVICEPROPSHEET pDlgInfo; /* Get the window context */ - dlgInfo = (PSERVICEPROPSHEET)GetWindowLongPtr(hwndDlg, - GWLP_USERDATA); - if (dlgInfo == NULL && uMsg != WM_INITDIALOG) + pDlgInfo = (PSERVICEPROPSHEET)GetWindowLongPtr(hwndDlg, + GWLP_USERDATA); + if (pDlgInfo == NULL && uMsg != WM_INITDIALOG) { return FALSE; } @@ -300,24 +201,68 @@ DependenciesPageProc(HWND hwndDlg, { case WM_INITDIALOG: { - dlgInfo = (PSERVICEPROPSHEET)(((LPPROPSHEETPAGE)lParam)->lParam); - if (dlgInfo != NULL) + pDlgInfo = (PSERVICEPROPSHEET)(((LPPROPSHEETPAGE)lParam)->lParam); + if (pDlgInfo != NULL) { SetWindowLongPtr(hwndDlg, GWLP_USERDATA, - (LONG_PTR)dlgInfo); + (LONG_PTR)pDlgInfo); + + pDlgInfo->hDependsWnd = hwndDlg; - InitDependPage(dlgInfo, hwndDlg); + InitDependPage(pDlgInfo); } } break; + case WM_NOTIFY: + { + switch (((LPNMHDR)lParam)->code) + { + case TVN_ITEMEXPANDING: + { + LPNMTREEVIEW lpnmtv = (LPNMTREEVIEW)lParam; + + if (lpnmtv->action == TVE_EXPAND) + { + if (lpnmtv->hdr.idFrom == IDC_DEPEND_TREE1) + { + /* Has this node been expanded before */ + if (!TreeView_GetChild(pDlgInfo->hDependsTreeView1, lpnmtv->itemNew.hItem)) + { + /* It's not, add the children */ + TV1_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam); + } + } + else if (lpnmtv->hdr.idFrom == IDC_DEPEND_TREE2) + { + /* Has this node been expanded before */ + if (!TreeView_GetChild(pDlgInfo->hDependsTreeView2, lpnmtv->itemNew.hItem)) + { + /* It's not, add the children */ + TV2_AddDependantsToTree(pDlgInfo, lpnmtv->itemNew.hItem, (LPTSTR)lpnmtv->itemNew.lParam); + } + } + } + break; + } + } + break; + } + case WM_COMMAND: switch(LOWORD(wParam)) { } break; + + case WM_DESTROY: + DestroyTreeView(pDlgInfo->hDependsTreeView1); + DestroyTreeView(pDlgInfo->hDependsTreeView2); + + if (pDlgInfo->hDependsImageList) + ImageList_Destroy(pDlgInfo->hDependsImageList); } return FALSE; diff --git a/base/applications/mscutils/servman/query.c b/base/applications/mscutils/servman/query.c index 3c007852f6a..a06ef58be22 100644 --- a/base/applications/mscutils/servman/query.c +++ b/base/applications/mscutils/servman/query.c @@ -30,63 +30,54 @@ GetSelectedService(PMAIN_WND_INFO Info) LPQUERY_SERVICE_CONFIG GetServiceConfig(LPTSTR lpServiceName) { - SC_HANDLE hSCManager = NULL; - SC_HANDLE hSc = NULL; - LPQUERY_SERVICE_CONFIG pServiceConfig = NULL; - DWORD BytesNeeded = 0; + LPQUERY_SERVICE_CONFIG lpServiceConfig = NULL; + SC_HANDLE hSCManager; + SC_HANDLE hService; + DWORD dwBytesNeeded; hSCManager = OpenSCManager(NULL, NULL, - SC_MANAGER_ENUMERATE_SERVICE); - if (hSCManager == NULL) - { - GetError(); - return NULL; - } - - hSc = OpenService(hSCManager, - lpServiceName, - SERVICE_QUERY_CONFIG); - if (hSc == NULL) - { - GetError(); - goto cleanup; - } - - if (!QueryServiceConfig(hSc, - pServiceConfig, - 0, - &BytesNeeded)) + SC_MANAGER_ALL_ACCESS); + if (hSCManager) { - if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) + hService = OpenService(hSCManager, + lpServiceName, + SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS | SERVICE_QUERY_CONFIG); + if (hService) { - pServiceConfig = (LPQUERY_SERVICE_CONFIG) HeapAlloc(ProcessHeap, - 0, - BytesNeeded); - if (pServiceConfig == NULL) - goto cleanup; - - if (!QueryServiceConfig(hSc, - pServiceConfig, - BytesNeeded, - &BytesNeeded)) + if (!QueryServiceConfig(hService, + NULL, + 0, + &dwBytesNeeded)) { - HeapFree(ProcessHeap, - 0, - pServiceConfig); - - pServiceConfig = NULL; + if (GetLastError() == ERROR_INSUFFICIENT_BUFFER) + { + lpServiceConfig = (LPQUERY_SERVICE_CONFIG)HeapAlloc(GetProcessHeap(), + 0, + dwBytesNeeded); + if (lpServiceConfig) + { + if (!QueryServiceConfig(hService, + lpServiceConfig, + dwBytesNeeded, + &dwBytesNeeded)) + { + HeapFree(GetProcessHeap(), + 0, + lpServiceConfig); + lpServiceConfig = NULL; + } + } + } } + + CloseServiceHandle(hService); } - } -cleanup: - if (hSCManager != NULL) CloseServiceHandle(hSCManager); - if (hSc != NULL) - CloseServiceHandle(hSc); + } - return pServiceConfig; + return lpServiceConfig; } @@ -152,6 +143,7 @@ GetServiceDescription(LPTSTR lpServiceName) SERVICE_DESCRIPTION *pServiceDescription = NULL; LPTSTR lpDescription = NULL; DWORD BytesNeeded = 0; + DWORD dwSize; hSCManager = OpenSCManager(NULL, NULL, @@ -189,12 +181,16 @@ GetServiceDescription(LPTSTR lpServiceName) { if (pServiceDescription->lpDescription) { + dwSize = _tcslen(pServiceDescription->lpDescription) + 1; lpDescription = HeapAlloc(ProcessHeap, 0, - (_tcslen(pServiceDescription->lpDescription) + 1) * sizeof(TCHAR)); + dwSize * sizeof(TCHAR)); if (lpDescription) - _tcscpy(lpDescription, - pServiceDescription->lpDescription); + { + _tcscpy_s(lpDescription, + dwSize, + pServiceDescription->lpDescription); + } } } } diff --git a/base/applications/mscutils/servman/servman.rbuild b/base/applications/mscutils/servman/servman.rbuild index d8f0c174ee3..1d4951f89c7 100644 --- a/base/applications/mscutils/servman/servman.rbuild +++ b/base/applications/mscutils/servman/servman.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 gdi32 advapi32 @@ -15,7 +14,8 @@ control.c create.c delete.c - dependencies.c + dependencies_tv1.c + dependencies_tv2.c export.c listview.c mainwnd.c @@ -28,6 +28,7 @@ servman.c start.c stop.c + stop_dependencies.c servman.rc precomp.h diff --git a/base/applications/mscutils/servman/servman.rc b/base/applications/mscutils/servman/servman.rc index d16fcc3a9f4..45e5b876698 100644 --- a/base/applications/mscutils/servman/servman.rc +++ b/base/applications/mscutils/servman/servman.rc @@ -6,7 +6,7 @@ #define REACTOS_STR_FILE_DESCRIPTION "ReactOS Service Manager\0" #define REACTOS_STR_INTERNAL_NAME "services\0" #define REACTOS_STR_ORIGINAL_FILENAME "servman.exe\0" -#include +//#include 1 24 DISCARDABLE "manifest.xml" diff --git a/base/applications/mscutils/servman/start.c b/base/applications/mscutils/servman/start.c index dfdb4615af2..986437e0820 100644 --- a/base/applications/mscutils/servman/start.c +++ b/base/applications/mscutils/servman/start.c @@ -3,7 +3,7 @@ * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/mscutils/servman/start.c * PURPOSE: Start a service - * COPYRIGHT: Copyright 2005-2009 Ged Murphy + * COPYRIGHT: Copyright 2005-2010 Ged Murphy * */ @@ -11,7 +11,7 @@ static BOOL DoStartService(PMAIN_WND_INFO Info, - HWND hProgDlg) + HWND hProgress) { SC_HANDLE hSCManager; SC_HANDLE hService; @@ -25,72 +25,88 @@ DoStartService(PMAIN_WND_INFO Info, hSCManager = OpenSCManager(NULL, NULL, - SC_MANAGER_ALL_ACCESS); - if (!hSCManager) + SC_MANAGER_CONNECT); + if (hSCManager) { - return FALSE; - } - - hService = OpenService(hSCManager, - Info->pCurrentService->lpServiceName, - SERVICE_START | SERVICE_QUERY_STATUS); - if (hService) - { - bRet = StartService(hService, - 0, - NULL); - if (!bRet && GetLastError() == ERROR_SERVICE_ALREADY_RUNNING) - { - bRet = TRUE; - } - else if (bRet) + hService = OpenService(hSCManager, + Info->pCurrentService->lpServiceName, + SERVICE_START | SERVICE_QUERY_STATUS); + if (hService) { - bRet = FALSE; - - if (QueryServiceStatusEx(hService, - SC_STATUS_PROCESS_INFO, - (LPBYTE)&ServiceStatus, - sizeof(SERVICE_STATUS_PROCESS), - &BytesNeeded)) + if (hProgress) { - dwStartTickCount = GetTickCount(); - dwOldCheckPoint = ServiceStatus.dwCheckPoint; - dwMaxWait = 30000; // 30 secs + /* Increment the progress bar */ + IncrementProgressBar(hProgress, DEFAULT_STEP); + } - while (ServiceStatus.dwCurrentState != SERVICE_RUNNING) + /* Start the service */ + bRet = StartService(hService, + 0, + NULL); + if (!bRet && GetLastError() == ERROR_SERVICE_ALREADY_RUNNING) + { + /* If it's already running, just return TRUE */ + bRet = TRUE; + } + else if (bRet) + { + bRet = FALSE; + + /* Get the service status to check if it's running */ + if (QueryServiceStatusEx(hService, + SC_STATUS_PROCESS_INFO, + (LPBYTE)&ServiceStatus, + sizeof(SERVICE_STATUS_PROCESS), + &BytesNeeded)) { - dwWaitTime = ServiceStatus.dwWaitHint / 10; - - if (!QueryServiceStatusEx(hService, - SC_STATUS_PROCESS_INFO, - (LPBYTE)&ServiceStatus, - sizeof(SERVICE_STATUS_PROCESS), - &BytesNeeded)) - { - break; - } + /* We don't want to wait for more than 30 seconds */ + dwMaxWait = 30000; + dwStartTickCount = GetTickCount(); - if (ServiceStatus.dwCheckPoint > dwOldCheckPoint) + /* Loop until it's running */ + while (ServiceStatus.dwCurrentState != SERVICE_RUNNING) { - /* The service is making progress*/ - dwStartTickCount = GetTickCount(); dwOldCheckPoint = ServiceStatus.dwCheckPoint; - } - else - { - if (GetTickCount() >= dwStartTickCount + dwMaxWait) + dwWaitTime = ServiceStatus.dwWaitHint / 10; + + /* Get the latest status info */ + if (!QueryServiceStatusEx(hService, + SC_STATUS_PROCESS_INFO, + (LPBYTE)&ServiceStatus, + sizeof(SERVICE_STATUS_PROCESS), + &BytesNeeded)) { - /* We exceeded our max wait time, give up */ + /* Something went wrong... */ break; } - } - if (dwWaitTime < 200) - dwWaitTime = 200; - else if (dwWaitTime > 10000) - dwWaitTime = 10000; + /* Is the service making progress? */ + if (ServiceStatus.dwCheckPoint > dwOldCheckPoint) + { + /* It is, get the latest tickcount to reset the max wait time */ + dwStartTickCount = GetTickCount(); + dwOldCheckPoint = ServiceStatus.dwCheckPoint; + IncrementProgressBar(hProgress, DEFAULT_STEP); + } + else + { + /* It's not, make sure we haven't exceeded our wait time */ + if (GetTickCount() >= dwStartTickCount + dwMaxWait) + { + /* We have, give up */ + break; + } + } - Sleep(dwWaitTime); + /* Adjust the wait hint times */ + if (dwWaitTime < 200) + dwWaitTime = 200; + else if (dwWaitTime > 10000) + dwWaitTime = 10000; + + /* Wait before trying again */ + Sleep(dwWaitTime); + } } if (ServiceStatus.dwCurrentState == SERVICE_RUNNING) @@ -98,46 +114,35 @@ DoStartService(PMAIN_WND_INFO Info, bRet = TRUE; } } + + CloseServiceHandle(hService); } - CloseServiceHandle(hService); + CloseServiceHandle(hSCManager); } - CloseServiceHandle(hSCManager); - - return bRet; } BOOL DoStart(PMAIN_WND_INFO Info) { - HWND hProgDlg; + HWND hProgress; BOOL bRet = FALSE; - hProgDlg = CreateProgressDialog(Info->hMainWnd, - Info->pCurrentService->lpServiceName, - IDS_PROGRESS_INFO_START); - - if (hProgDlg) + /* Create a progress window to track the progress of the stopping service */ + hProgress = CreateProgressDialog(Info->hMainWnd, + IDS_PROGRESS_INFO_START); + if (hProgress) { - IncrementProgressBar(hProgDlg); + /* Set the service name and reset the progress bag */ + InitializeProgressDialog(hProgress, Info->pCurrentService->lpServiceName); - bRet = DoStartService(Info, - hProgDlg); - - if (bRet) - { - CompleteProgressBar(hProgDlg); - Sleep(500); - bRet = TRUE; - } - else - { - GetError(); - } + /* Start the requested service */ + bRet = DoStartService(Info, hProgress); - DestroyWindow(hProgDlg); + /* Complete and destroy the progress bar */ + DestroyProgressDialog(hProgress, bRet); } return bRet; diff --git a/base/applications/mscutils/servman/stop.c b/base/applications/mscutils/servman/stop.c index 22c018d74ed..da36ac536e1 100644 --- a/base/applications/mscutils/servman/stop.c +++ b/base/applications/mscutils/servman/stop.c @@ -3,7 +3,7 @@ * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/mscutils/servman/stop.c * PURPOSE: Stops running a service - * COPYRIGHT: Copyright 2006-2009 Ged Murphy + * COPYRIGHT: Copyright 2006-2010 Ged Murphy * */ @@ -11,101 +11,136 @@ static BOOL -StopService(PSTOP_INFO pStopInfo, - SC_HANDLE hService) +StopService(PMAIN_WND_INFO pInfo, + LPWSTR lpServiceName, + HWND hProgress OPTIONAL) { + SC_HANDLE hSCManager; + SC_HANDLE hService; SERVICE_STATUS_PROCESS ServiceStatus; DWORD dwBytesNeeded; DWORD dwStartTime; DWORD dwTimeout; - HWND hProgDlg; BOOL bRet = FALSE; - dwStartTime = GetTickCount(); - dwTimeout = 30000; // 30 secs - - hProgDlg = CreateProgressDialog(pStopInfo->pInfo->hMainWnd, - pStopInfo->pInfo->pCurrentService->lpServiceName, - IDS_PROGRESS_INFO_STOP); - if (hProgDlg) + if (hProgress) { - IncrementProgressBar(hProgDlg); + /* Set the service name and reset the progress bag */ + InitializeProgressDialog(hProgress, lpServiceName); + } - if (ControlService(hService, - SERVICE_CONTROL_STOP, - (LPSERVICE_STATUS)&ServiceStatus)) + hSCManager = OpenSCManager(NULL, + NULL, + SC_MANAGER_CONNECT); + if (hSCManager) + { + hService = OpenService(hSCManager, + lpServiceName, + SERVICE_STOP | SERVICE_QUERY_STATUS); + if (hService) { - while (ServiceStatus.dwCurrentState != SERVICE_STOPPED) + if (hProgress) + { + /* Increment the progress bar */ + IncrementProgressBar(hProgress, DEFAULT_STEP); + } + + /* Set the wait time to 30 secs */ + dwStartTime = GetTickCount(); + dwTimeout = 30000; + + /* Send the service the stop code */ + if (ControlService(hService, + SERVICE_CONTROL_STOP, + (LPSERVICE_STATUS)&ServiceStatus)) { - Sleep(ServiceStatus.dwWaitHint); + if (hProgress) + { + /* Increment the progress bar */ + IncrementProgressBar(hProgress, DEFAULT_STEP); + } - if (QueryServiceStatusEx(hService, - SC_STATUS_PROCESS_INFO, - (LPBYTE)&ServiceStatus, - sizeof(SERVICE_STATUS_PROCESS), - &dwBytesNeeded)) + while (ServiceStatus.dwCurrentState != SERVICE_STOPPED) { - if (GetTickCount() - dwStartTime > dwTimeout) + /* Don't sleep for more than 3 seconds */ + if (ServiceStatus.dwWaitHint > 3000) + ServiceStatus.dwWaitHint = 3000; + + Sleep(ServiceStatus.dwWaitHint); + + if (hProgress) + { + /* Increment the progress bar */ + IncrementProgressBar(hProgress, DEFAULT_STEP); + } + + if (QueryServiceStatusEx(hService, + SC_STATUS_PROCESS_INFO, + (LPBYTE)&ServiceStatus, + sizeof(SERVICE_STATUS_PROCESS), + &dwBytesNeeded)) { - /* We exceeded our max wait time, give up */ - break; + /* Have we exceeded our wait time? */ + if (GetTickCount() - dwStartTime > dwTimeout) + { + /* Yep, give up */ + break; + } } } - } - if (ServiceStatus.dwCurrentState == SERVICE_STOPPED) - { - bRet = TRUE; + /* If the service is stopped, return TRUE */ + if (ServiceStatus.dwCurrentState == SERVICE_STOPPED) + { + bRet = TRUE; + } } + + CloseServiceHandle(hService); } - CompleteProgressBar(hProgDlg); - Sleep(500); - DestroyWindow(hProgDlg); + CloseServiceHandle(hSCManager); } return bRet; } static BOOL -StopDependentServices(PSTOP_INFO pStopInfo, - SC_HANDLE hService) +StopDependantServices(PMAIN_WND_INFO pInfo, + LPWSTR lpServiceList, + HWND hProgress OPTIONAL) { - LPENUM_SERVICE_STATUS lpDependencies; - SC_HANDLE hDepService; - DWORD dwCount; + LPWSTR lpStr; BOOL bRet = FALSE; - lpDependencies = GetServiceDependents(hService, &dwCount); - if (lpDependencies) - { - LPENUM_SERVICE_STATUS lpEnumServiceStatus; - DWORD i; + lpStr = lpServiceList; - for (i = 0; i < dwCount; i++) + /* Loop through all the services in the list */ + while (TRUE) + { + /* Break when we hit the double null */ + if (*lpStr == L'\0' && *(lpStr + 1) == L'\0') + break; + + /* If this isn't our first time in the loop we'll + have been left on a null char */ + if (*lpStr == L'\0') + lpStr++; + + /* Stop the requested service */ + bRet = StopService(pInfo, + lpStr, + hProgress); + + /* Complete the progress bar if we succeeded */ + if (bRet) { - lpEnumServiceStatus = &lpDependencies[i]; - - hDepService = OpenService(pStopInfo->hSCManager, - lpEnumServiceStatus->lpServiceName, - SERVICE_STOP | SERVICE_QUERY_STATUS); - if (hDepService) - { - bRet = StopService(pStopInfo, hDepService); - - CloseServiceHandle(hDepService); - - if (!bRet) - { - GetError(); - break; - } - } + CompleteProgressBar(hProgress); } - HeapFree(GetProcessHeap(), - 0, - lpDependencies); + /* Move onto the next string */ + while (*lpStr != L'\0') + lpStr++; } return bRet; @@ -115,52 +150,76 @@ StopDependentServices(PSTOP_INFO pStopInfo, BOOL DoStop(PMAIN_WND_INFO pInfo) { - STOP_INFO stopInfo; - SC_HANDLE hSCManager; - SC_HANDLE hService; + HWND hProgress; + LPWSTR lpServiceList; BOOL bRet = FALSE; + BOOL bStopMainService = TRUE; if (pInfo) { - stopInfo.pInfo = pInfo; - - hSCManager = OpenSCManager(NULL, - NULL, - SC_MANAGER_ALL_ACCESS); - if (hSCManager) + /* Does the service have any dependent services which need stopping first */ + lpServiceList = GetListOfServicesToStop(pInfo->pCurrentService->lpServiceName); + if (lpServiceList) { - hService = OpenService(hSCManager, - pInfo->pCurrentService->lpServiceName, - SERVICE_STOP | SERVICE_QUERY_STATUS | SERVICE_ENUMERATE_DEPENDENTS); - if (hService) + /* Tag the service list to the main wnd info */ + pInfo->pTag = (PVOID)lpServiceList; + + /* List them and ask the user if they want to stop them */ + if (DialogBoxParamW(hInstance, + MAKEINTRESOURCEW(IDD_DLG_DEPEND_STOP), + pInfo->hMainWnd, + StopDependsDialogProc, + (LPARAM)pInfo) == IDOK) { - stopInfo.hSCManager = hSCManager; - stopInfo.hMainService = hService; + /* Create a progress window to track the progress of the stopping services */ + hProgress = CreateProgressDialog(pInfo->hMainWnd, + IDS_PROGRESS_INFO_STOP); - if (HasDependentServices(hService)) - { - INT ret = DialogBoxParam(hInstance, - MAKEINTRESOURCE(IDD_DLG_DEPEND_STOP), - pInfo->hMainWnd, - StopDependsDialogProc, - (LPARAM)&stopInfo); - if (ret == IDOK) - { - if (StopDependentServices(&stopInfo, hService)) - { - bRet = StopService(&stopInfo, hService); - } - } - } - else + /* Stop all the dependant services */ + StopDependantServices(pInfo, lpServiceList, hProgress); + + /* Now stop the requested one */ + bRet = StopService(pInfo, + pInfo->pCurrentService->lpServiceName, + hProgress); + + /* We've already stopped the main service, don't try to stop it again */ + bStopMainService = FALSE; + + if (hProgress) { - bRet = StopService(&stopInfo, hService); + /* Complete and destroy the progress bar */ + DestroyProgressDialog(hProgress, TRUE); } - - CloseServiceHandle(hService); + } + else + { + /* Don't stop the main service if the user selected not to */ + bStopMainService = FALSE; } - CloseServiceHandle(hSCManager); + HeapFree(GetProcessHeap(), + 0, + lpServiceList); + } + + /* If the service has no running dependents, then we stop it here */ + if (bStopMainService) + { + /* Create a progress window to track the progress of the stopping service */ + hProgress = CreateProgressDialog(pInfo->hMainWnd, + IDS_PROGRESS_INFO_STOP); + + /* Stop the requested service */ + bRet = StopService(pInfo, + pInfo->pCurrentService->lpServiceName, + hProgress); + + if (hProgress) + { + /* Complete and destroy the progress bar */ + DestroyProgressDialog(hProgress, TRUE); + } } } diff --git a/base/applications/mscutils/servman/stop_dependencies.c b/base/applications/mscutils/servman/stop_dependencies.c new file mode 100644 index 00000000000..a29d43cb4de --- /dev/null +++ b/base/applications/mscutils/servman/stop_dependencies.c @@ -0,0 +1,309 @@ +/* + * PROJECT: ReactOS Services + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/mscutils/servman/stop_dependencies.c + * PURPOSE: Routines related to stopping dependent services + * COPYRIGHT: Copyright 2006-2010 Ged Murphy + * + */ + +#include "precomp.h" + + +static LPWSTR +AddServiceToList(LPWSTR *lpServiceList, + LPWSTR lpServiceToAdd) +{ + LPWSTR lpNewList = NULL; + LPWSTR ptr; + DWORD dwToAddSize; + DWORD dwCurSize; + + dwToAddSize = wcslen(lpServiceToAdd) + 1; + + /* Is this is the first in the list? */ + if (!*lpServiceList) + { + /* Add another char for double null */ + dwToAddSize++; + + lpNewList = HeapAlloc(GetProcessHeap(), + 0, + dwToAddSize * sizeof(WCHAR)); + if (lpNewList) + { + /* Copy the service name */ + wcscpy_s(lpNewList, + dwToAddSize, + lpServiceToAdd); + + /* Add the double null char */ + lpNewList[dwToAddSize - 1] = L'\0'; + } + } + else + { + ptr = *lpServiceList; + dwCurSize = 0; + + /* Get the list size */ + while (TRUE) + { + /* Break when we hit the double null */ + if (*ptr == L'\0' && *(ptr + 1) == L'\0') + break; + + ptr++; + dwCurSize++; + } + dwCurSize++; + + /* Add another char for double null */ + dwCurSize++; + + /* Extend the list size */ + lpNewList = HeapReAlloc(GetProcessHeap(), + 0, + *lpServiceList, + (dwCurSize + dwToAddSize) * sizeof(WCHAR)); + if (lpNewList) + { + /* Copy the service name */ + wcscpy_s(&lpNewList[dwCurSize - 1], + dwToAddSize, + lpServiceToAdd); + + /* Add the double null char */ + lpNewList[dwCurSize + dwToAddSize - 1] = L'\0'; + } + } + + return lpNewList; +} + +static BOOL +BuildListOfServicesToStop(LPWSTR *lpServiceList, + LPWSTR lpServiceName) +{ + LPENUM_SERVICE_STATUS lpServiceStatus; + DWORD dwCount, i; + BOOL bRet = FALSE; + + /* Get a list of service dependents */ + lpServiceStatus = TV2_GetDependants(lpServiceName, &dwCount); + if (lpServiceStatus) + { + for (i = 0; i < dwCount; i++) + { + /* Does this service need stopping? */ + if (lpServiceStatus[i].ServiceStatus.dwCurrentState != SERVICE_STOPPED && + lpServiceStatus[i].ServiceStatus.dwCurrentState != SERVICE_STOP_PENDING) + { + /* Does this service have any dependents? */ + if (TV2_HasDependantServices(lpServiceStatus[i].lpServiceName)) + { + /* recall this function with the dependent */ + BuildListOfServicesToStop(lpServiceList, lpServiceStatus[i].lpServiceName); + } + + /* Add the service to the list */ + *lpServiceList = AddServiceToList(lpServiceList, lpServiceStatus[i].lpServiceName); + + /* We've got one */ + bRet = TRUE; + } + } + + HeapFree(GetProcessHeap(), + 0, + lpServiceStatus); + } + + return bRet; +} + +LPWSTR +GetListOfServicesToStop(LPWSTR lpServiceName) +{ + LPWSTR lpServiceList = NULL; + + /* Call recursive function to get our list */ + if (BuildListOfServicesToStop(&lpServiceList, lpServiceName)) + return lpServiceList; + else + return NULL; +} + + +static VOID +AddServiceNamesToStop(HWND hServiceListBox, + LPWSTR lpServiceList) +{ + LPQUERY_SERVICE_CONFIG lpServiceConfig; + LPWSTR lpStr; + + lpStr = lpServiceList; + + /* Loop through all the services in the list */ + while (TRUE) + { + /* Break when we hit the double null */ + if (*lpStr == L'\0' && *(lpStr + 1) == L'\0') + break; + + /* If this isn't our first time in the loop we'll + have been left on a null char */ + if (*lpStr == L'\0') + lpStr++; + + /* Get the service's display name */ + lpServiceConfig = GetServiceConfig(lpStr); + if (lpServiceConfig) + { + /* Add the service to the listbox */ + SendMessageW(hServiceListBox, + LB_ADDSTRING, + 0, + (LPARAM)lpServiceConfig->lpDisplayName); + } + + /* Move onto the next string */ + while (*lpStr != L'\0') + lpStr++; + } +} + +static BOOL +DoInitDependsDialog(PMAIN_WND_INFO pInfo, + HWND hDlg) +{ + HWND hServiceListBox; + LPWSTR lpPartialStr, lpStr; + DWORD fullLen; + HICON hIcon = NULL; + BOOL bRet = FALSE; + + if (pInfo) + { + /* Tag the info to the window */ + SetWindowLongPtrW(hDlg, + GWLP_USERDATA, + (LONG_PTR)pInfo); + + /* Load the icon for the window */ + hIcon = (HICON)LoadImageW(hInstance, + MAKEINTRESOURCE(IDI_SM_ICON), + IMAGE_ICON, + GetSystemMetrics(SM_CXSMICON), + GetSystemMetrics(SM_CXSMICON), + 0); + if (hIcon) + { + /* Set it */ + SendMessageW(hDlg, + WM_SETICON, + ICON_SMALL, + (LPARAM)hIcon); + DestroyIcon(hIcon); + } + + /* Load the stop depends note */ + if (AllocAndLoadString(&lpPartialStr, + hInstance, + IDS_STOP_DEPENDS)) + { + /* Get the length required */ + fullLen = wcslen(lpPartialStr) + wcslen(pInfo->pCurrentService->lpDisplayName) + 1; + + lpStr = HeapAlloc(ProcessHeap, + 0, + fullLen * sizeof(WCHAR)); + if (lpStr) + { + /* Add the service name to the depends note */ + _snwprintf(lpStr, + fullLen, + lpPartialStr, + pInfo->pCurrentService->lpDisplayName); + + /* Add the string to the dialog */ + SendDlgItemMessageW(hDlg, + IDC_STOP_DEPENDS, + WM_SETTEXT, + 0, + (LPARAM)lpStr); + + HeapFree(ProcessHeap, + 0, + lpStr); + + bRet = TRUE; + } + + HeapFree(ProcessHeap, + 0, + lpPartialStr); + } + + /* Display the list of services which need stopping */ + hServiceListBox = GetDlgItem(hDlg, + IDC_STOP_DEPENDS_LB); + if (hServiceListBox) + { + AddServiceNamesToStop(hServiceListBox, + (LPWSTR)pInfo->pTag); + } + } + + return bRet; +} + + +INT_PTR CALLBACK +StopDependsDialogProc(HWND hDlg, + UINT message, + WPARAM wParam, + LPARAM lParam) +{ + PMAIN_WND_INFO pInfo = NULL; + + /* Get the window context */ + pInfo = (PMAIN_WND_INFO)GetWindowLongPtrW(hDlg, + GWLP_USERDATA); + if (pInfo == NULL && message != WM_INITDIALOG) + { + return FALSE; + } + + switch (message) + { + case WM_INITDIALOG: + { + BOOL bRet = FALSE; + + pInfo = (PMAIN_WND_INFO)lParam; + if (pInfo != NULL) + { + bRet = DoInitDependsDialog(pInfo, hDlg); + } + + return bRet; + } + + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case IDOK: + case IDCANCEL: + { + EndDialog(hDlg, + LOWORD(wParam)); + return TRUE; + } + } + } + } + + return FALSE; +} diff --git a/base/applications/mstsc/lang/de-DE.rc b/base/applications/mstsc/lang/de-DE.rc index 15508777749..ebfae96f32e 100644 --- a/base/applications/mstsc/lang/de-DE.rc +++ b/base/applications/mstsc/lang/de-DE.rc @@ -15,18 +15,18 @@ BEGIN PUSHBUTTON "Speichern unter",IDC_SAVEAS,120,139,55,14 PUSHBUTTON "Öffnen...",IDC_OPEN,177,139,50,14 ICON "", IDC_CONNICON, 16,114,20,20 - LTEXT "Die derzeitigen Verbindungseinstellungen speichern oder vohandene Einstellungen laden.",IDC_STATIC,50,115,172,20 + LTEXT "Die derzeitigen Verbindungseinstellungen speichern oder vorhandene Einstellungen laden.",IDC_STATIC,50,115,172,20 END IDD_DISPLAY DIALOGEX 0, 0, 242, 175 STYLE DS_SHELLFONT | WS_CHILD FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN - GROUPBOX "Remotedesktop Größe",IDC_STATIC,7,7,228,68 + GROUPBOX "Remotedesktop-Größe",IDC_STATIC,7,7,228,68 GROUPBOX "Farben",IDC_STATIC,7,83,228,85 ICON "", IDC_REMICON, 15,19,20,20 ICON "", IDC_COLORSICON, 15,98,20,20 - LTEXT "Wählen Sie die Bildschirmgröße von Ihrem Remote- desktop. Stellen Sie den Regler für Vollbild nach rechts",IDC_STATIC,53,22,175,21 + LTEXT "Wählen Sie die Bildschirmgröße Ihres Remotedesktops. Stellen Sie den Regler für Vollbild nach rechts",IDC_STATIC,53,22,175,21 CONTROL "", IDC_GEOSLIDER, "msctls_trackbar32", TBS_AUTOTICKS | WS_TABSTOP, 56, 42, 124, 17 COMBOBOX IDC_BPPCOMBO,56,102,128,80, CBS_DROPDOWNLIST | CBS_AUTOHSCROLL | WS_VSCROLL | WS_TABSTOP CONTROL "",IDC_COLORIMAGE,"Static",SS_OWNERDRAW | SS_SUNKEN, 56,121,127,10 @@ -38,7 +38,7 @@ END IDD_CONNECTDIALOG DIALOGEX 0, 0, 260, 262 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Remotedesktop Verbindung" +CAPTION "Remotedesktop-Verbindung" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Verbinden",IDOK,147,245,50,14 @@ -58,6 +58,6 @@ BEGIN IDS_PIXEL "%lux%lu Pixel" IDS_FULLSCREEN "Vollbild" IDS_BROWSESERVER "" - IDS_HEADERTEXT1 "Remote Desktop" + IDS_HEADERTEXT1 "Remotedesktop" IDS_HEADERTEXT2 "Verbindung" END diff --git a/base/applications/mstsc/mstsc.rbuild b/base/applications/mstsc/mstsc.rbuild index 4d0f5f9eeac..e2000ef0951 100644 --- a/base/applications/mstsc/mstsc.rbuild +++ b/base/applications/mstsc/mstsc.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 gdi32 comctl32 diff --git a/base/applications/network/arp/arp.rbuild b/base/applications/network/arp/arp.rbuild index 855fa1459ea..ed2e096b15d 100644 --- a/base/applications/network/arp/arp.rbuild +++ b/base/applications/network/arp/arp.rbuild @@ -2,7 +2,6 @@ . - kernel32 iphlpapi ws2_32 shlwapi diff --git a/base/applications/network/dwnl/dwnl.rbuild b/base/applications/network/dwnl/dwnl.rbuild index 5201bd83291..36c30c0459c 100644 --- a/base/applications/network/dwnl/dwnl.rbuild +++ b/base/applications/network/dwnl/dwnl.rbuild @@ -2,7 +2,6 @@ . - kernel32 urlmon wininet uuid diff --git a/base/applications/network/finger/finger.rbuild b/base/applications/network/finger/finger.rbuild index 7e4dcbf5703..fd25abc54d0 100644 --- a/base/applications/network/finger/finger.rbuild +++ b/base/applications/network/finger/finger.rbuild @@ -3,7 +3,6 @@ . - kernel32 ws2_32 finger.c err.c diff --git a/base/applications/network/ftp/ftp.rbuild b/base/applications/network/ftp/ftp.rbuild index dd43d65f73b..193fa6e8ebd 100644 --- a/base/applications/network/ftp/ftp.rbuild +++ b/base/applications/network/ftp/ftp.rbuild @@ -15,7 +15,6 @@ _write _lseek - kernel32 ws2_32 iphlpapi cmds.c diff --git a/base/applications/network/ipconfig/ipconfig.c b/base/applications/network/ipconfig/ipconfig.c index 4d7bff7d603..8f6ca9a9e6b 100644 --- a/base/applications/network/ipconfig/ipconfig.c +++ b/base/applications/network/ipconfig/ipconfig.c @@ -693,7 +693,7 @@ int main(int argc, char *argv[]) ProcessHeap = GetProcessHeap(); /* Parse command line for options we have been given. */ - if ( (argc > 1)&&(argv[1][0]=='/') ) + if ( (argc > 1)&&(argv[1][0]=='/' || argv[1][0]=='-') ) { if( !_tcsicmp( &argv[1][1], _T("?") )) { diff --git a/base/applications/network/ipconfig/ipconfig.rbuild b/base/applications/network/ipconfig/ipconfig.rbuild index 3110817dd25..454bd37f5c7 100644 --- a/base/applications/network/ipconfig/ipconfig.rbuild +++ b/base/applications/network/ipconfig/ipconfig.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 iphlpapi advapi32 diff --git a/base/applications/network/ipconfig/lang/bg-BG.rc b/base/applications/network/ipconfig/lang/bg-BG.rc index 85a1effd414..9e48828a48b 100644 --- a/base/applications/network/ipconfig/lang/bg-BG.rc +++ b/base/applications/network/ipconfig/lang/bg-BG.rc @@ -32,7 +32,7 @@ BEGIN \n \ êúäåòî\n \ êàðòà Èìå íà ñâúðçâàíåòî\n \ - (ðàçðåøåíè ñà çàìåñòâàùè çíàöè * ?, âèæ ïðèìåðèòå)\n \ + (ðàçðåøåíè ñà çàìåñòâàùè çíàöè * ?, âèæòå ïðèìåðèòå)\n \ \n \ Âúçìîæíîñòè:\n \ /? Ïîêàçâà òîâà ïîìîùíî ñúîáùåíèå\n \ @@ -49,7 +49,7 @@ BEGIN ïîäðàáðàíèÿ ðàçïðåäåëèòåë (gateway) çà âñÿêà êàðòà, ðàáîòåùà ïî TCP/IP.\n \ \n \ Çà Release è Renew, àêî íå å óêàçàíî èìå íà êàðòàòà, ùå áúäàò îñâîáîäåíè èëè ïîäíîâåíè\n \ - ÈÏ àäððåñèòå íà âñè÷êè êàðòè, èçïîëçâàùè TCP/IP.\n \ + ÈÏ àäðåñèòå íà âñè÷êè êàðòè, èçïîëçâàùè TCP/IP.\n \ \n \ Çà èçáîðà Setclassid, àêî íå å óêàçàí ClassId, òî ClassId ñå ïðåìàõâà.\n \ \n \ @@ -60,6 +60,6 @@ BEGIN > ipconfig /renew EL* ... îáíîâÿâàâà âñè÷êè ñâúðçâàíèÿ, ÷èèòî èìåíà\n \ çàïî÷âàò ñ EL\n \ > ipconfig /release *Con* ... îñâîáîæäàâà âñè÷êè ñúâïàäàùè ñâúðçâàíèÿ,\n \ - íàïðèìåð ""Local Area Connection 1"" èëè\n \ - ""Local Area Connection 2""\n" + íàïðèìåð „Local Area Connection 1“ èëè\n \ + „Local Area Connection 2“\n" END diff --git a/base/applications/network/ipconfig/lang/de-DE.rc b/base/applications/network/ipconfig/lang/de-DE.rc index e6d934d9db2..89c23c1bc31 100644 --- a/base/applications/network/ipconfig/lang/de-DE.rc +++ b/base/applications/network/ipconfig/lang/de-DE.rc @@ -12,12 +12,12 @@ END STRINGTABLE DISCARDABLE BEGIN IDS_OTHER "Anderer Adapter" - IDS_ETH "Ethernet Adapter" - IDS_TOKEN "Token Ring Adapter" - IDS_FDDI "FDDI Adapter" - IDS_PPP "PPP Adapter" - IDS_LOOP "Loopback Adapter" - IDS_SLIP "SLIP Adapter" + IDS_ETH "Ethernet-Adapter" + IDS_TOKEN "Token-Ring-Adapter" + IDS_FDDI "FDDI-Adapter" + IDS_PPP "PPP-Adapter" + IDS_LOOP "Loopback-Adapter" + IDS_SLIP "SLIP-Adapter" END STRINGTABLE DISCARDABLE @@ -31,7 +31,7 @@ BEGIN \n \ wobei\n \ Adapter Verbindungsname\n \ - (wildcards * und ? sind möglich, siehe Beispiele)\n \ + (Wildcards * und ? sind möglich, siehe Beispiele)\n \ \n \ Optionen:\n \ /? Zeigt die Hilfe an.\n \ @@ -61,6 +61,6 @@ BEGIN > ipconfig /renew EL* ... Erneuert alle Verbindungen, deren Name\n \ mit EL beginnt.\n \ > ipconfig /release *Ver* ... Gibt alle passenden Verbindungen frei,\n \ - z.B. ""Lokale Vebindung 1"" oder\n \ - ""Lokale Vebindung 2""\n" + z.B. ""Lokale Verbindung 1"" oder\n \ + ""Lokale Verbindung 2""\n" END diff --git a/base/applications/network/net/net.rbuild b/base/applications/network/net/net.rbuild index 1b3595beed3..889e3a67571 100644 --- a/base/applications/network/net/net.rbuild +++ b/base/applications/network/net/net.rbuild @@ -3,7 +3,6 @@ . - kernel32 ws2_32 main.c cmdstart.c diff --git a/base/applications/network/netstat/netstat.rbuild b/base/applications/network/netstat/netstat.rbuild index 23b488ae568..b7d4c4c973c 100644 --- a/base/applications/network/netstat/netstat.rbuild +++ b/base/applications/network/netstat/netstat.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 ws2_32 snmpapi diff --git a/base/applications/network/nslookup/nslookup.rbuild b/base/applications/network/nslookup/nslookup.rbuild index b4d02f9f563..e483d4ab5f3 100644 --- a/base/applications/network/nslookup/nslookup.rbuild +++ b/base/applications/network/nslookup/nslookup.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 ws2_32 snmpapi diff --git a/base/applications/network/ping/ping.rbuild b/base/applications/network/ping/ping.rbuild index 20f401bdb7b..170129c08ed 100644 --- a/base/applications/network/ping/ping.rbuild +++ b/base/applications/network/ping/ping.rbuild @@ -3,7 +3,6 @@ . - kernel32 ws2_32 ping.c ping.rc diff --git a/base/applications/network/route/route.rbuild b/base/applications/network/route/route.rbuild index fbfc1eeeedf..eea7b8d76a3 100644 --- a/base/applications/network/route/route.rbuild +++ b/base/applications/network/route/route.rbuild @@ -2,7 +2,6 @@ . - kernel32 ws2_32 iphlpapi route.c diff --git a/base/applications/network/telnet/src/tnetwork.h b/base/applications/network/telnet/src/tnetwork.h index 64dfb1179a7..bcc78c7012f 100644 --- a/base/applications/network/telnet/src/tnetwork.h +++ b/base/applications/network/telnet/src/tnetwork.h @@ -24,7 +24,7 @@ public: TNetwork(SOCKET s = 0): socket(s), local_echo(1), line_mode(1), net_type(TN_NETSOCKET), naws_func((Naws_func_t)NULL), local_address((char *)NULL) {} - ~TNetwork() {if(local_address) delete local_address;} + ~TNetwork() {if(local_address) delete[] local_address;} void SetSocket(SOCKET s); SOCKET GetSocket() {return socket;} diff --git a/base/applications/network/telnet/src/tnmisc.cpp b/base/applications/network/telnet/src/tnmisc.cpp index e3fa27ede1e..25e319a81aa 100644 --- a/base/applications/network/telnet/src/tnmisc.cpp +++ b/base/applications/network/telnet/src/tnmisc.cpp @@ -1,6 +1,5 @@ #include -#include -#include +#include #include "tnmisc.h" @@ -139,10 +138,9 @@ bool SetIcon(HWND hConsoleWindow, HANDLE hIcon, LPARAM *pOldBIcon, LPARAM *pOldS // (Paul Brannan 12/17/98) #ifndef __BORLANDC__ // Ioannou Dec. 8, 1998 if(!hIcon) { - char filename[128]; // load from telnet.ico - strncpy(filename, icondir, sizeof(filename)); - strncat(filename, "telnet.ico", sizeof(filename)); - filename[sizeof(filename) - 1] = 0; + char filename[MAX_PATH]; // load from telnet.ico + _snprintf(filename, MAX_PATH - 1, "%s%s", icondir, "telnet.ico"); + filename[MAX_PATH - 1] = '\0'; // Note: loading the icon from a file doesn't work on NT // There is no LoadImage in Borland headers - only LoadIcon diff --git a/base/applications/network/telnet/telnet.rbuild b/base/applications/network/telnet/telnet.rbuild index 312eae39942..92e63337318 100644 --- a/base/applications/network/telnet/telnet.rbuild +++ b/base/applications/network/telnet/telnet.rbuild @@ -2,7 +2,6 @@ . - kernel32 ws2_32 user32 diff --git a/base/applications/network/tracert/tracert.rbuild b/base/applications/network/tracert/tracert.rbuild index 51d0b948959..f2f9a33b813 100644 --- a/base/applications/network/tracert/tracert.rbuild +++ b/base/applications/network/tracert/tracert.rbuild @@ -3,7 +3,6 @@ . - kernel32 ws2_32 tracert.c tracert.rc diff --git a/base/applications/network/whois/whois.rbuild b/base/applications/network/whois/whois.rbuild index 2376b957582..f208aa2d97c 100644 --- a/base/applications/network/whois/whois.rbuild +++ b/base/applications/network/whois/whois.rbuild @@ -2,7 +2,6 @@ . - kernel32 ws2_32 whois.c whois.rc diff --git a/base/applications/notepad/lang/de-DE.rc b/base/applications/notepad/lang/de-DE.rc index 2844639f8d9..eeb89058298 100644 --- a/base/applications/notepad/lang/de-DE.rc +++ b/base/applications/notepad/lang/de-DE.rc @@ -127,7 +127,7 @@ FONT 8, "MS Shell Dlg" CAPTION "Enkodierung" BEGIN COMBOBOX ID_ENCODING,54,0,156,80,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP -LTEXT "Enkodierung:",0x155,5,2,41,12 +LTEXT "Kodierung:",0x155,5,2,41,12 COMBOBOX ID_EOLN,54,18,156,80,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP LTEXT "Zeilenenden:",0x156,5,20,41,12 END @@ -161,7 +161,7 @@ END STRINGTABLE DISCARDABLE BEGIN - STRING_LICENSE, "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + STRING_LICENSE, "Dieses Programm ist kostenlos; Sie können es frei verteilen mit od. ohne Änderungen unter der GNU Lesser General Public License, wie es von der Free Software Foundation veröffentlicht wurde; entweder Version 2.1 der Lizenz, oder eine spätere Version (ihrer Wahl).\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE @@ -183,7 +183,7 @@ STRING_UNTITLED, "(unbenannt)" STRING_ALL_FILES, "Alle Dateien (*.*)" STRING_TEXT_FILES_TXT, "Textdateien (*.txt)" -STRING_TOOLARGE, "Die Datei '%s' ist zu groß für den Editor\n \ +STRING_TOOLARGE, "Die Datei '%s' ist zu groß für den Editor.\n \ Benutzen Sie bitte einen anderen Editor, um diese Datei zu bearbeiten." STRING_NOTEXT, "Sie haben keinen Text eingegeben, der \ gespeichert\n werden könnte. Geben Sie Text ein, und versuchen Sie es \ diff --git a/base/applications/notepad/lang/es-ES.rc b/base/applications/notepad/lang/es-ES.rc index 953e7d770a3..4d71548ca50 100644 --- a/base/applications/notepad/lang/es-ES.rc +++ b/base/applications/notepad/lang/es-ES.rc @@ -26,13 +26,13 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL ID_ACCEL ACCELERATORS BEGIN - "^A", CMD_SELECT_ALL + "^E", CMD_SELECT_ALL "^C", CMD_COPY - "^F", CMD_SEARCH - "^G", CMD_GOTO - "H", CMD_REPLACE, VIRTKEY, CONTROL + "^B", CMD_SEARCH + "^T", CMD_GOTO + "R", CMD_REPLACE, VIRTKEY, CONTROL "^N", CMD_NEW - "^O", CMD_OPEN + "^A", CMD_OPEN "^P", CMD_PRINT "^S", CMD_SAVE "^V", CMD_PASTE @@ -47,7 +47,7 @@ BEGIN POPUP "&Archivo" BEGIN MENUITEM "&Nuevo\tCtrl+N", CMD_NEW - MENUITEM "&Abrir\tCtrl+O", CMD_OPEN + MENUITEM "&Abrir\tCtrl+A", CMD_OPEN MENUITEM "&Guardar\tCtrl+S", CMD_SAVE MENUITEM "Guardar &como...", CMD_SAVE_AS MENUITEM SEPARATOR @@ -66,12 +66,12 @@ BEGIN MENUITEM "&Pegar\tCtrl+V", CMD_PASTE MENUITEM "&Eliminar\tDel", CMD_DELETE MENUITEM SEPARATOR - MENUITEM "&Buscar\tCtrl+F", CMD_SEARCH + MENUITEM "&Buscar\tCtrl+B", CMD_SEARCH MENUITEM "Buscar &siguiente\tF3", CMD_SEARCH_NEXT - MENUITEM "Reemplazar\tCtrl+H", CMD_REPLACE - MENUITEM "Ir a...\tCtrl+G", CMD_GOTO + MENUITEM "Reemplazar...\tCtrl+R", CMD_REPLACE + MENUITEM "Ir a...\tCtrl+T", CMD_GOTO MENUITEM SEPARATOR - MENUITEM "Seleccionar t&odo\tCtrl+A", CMD_SELECT_ALL + MENUITEM "Seleccionar t&odo\tCtrl+E", CMD_SELECT_ALL MENUITEM "&Hora y fecha\tF5", CMD_TIME_DATE END POPUP "F&ormato" @@ -101,16 +101,16 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU FONT 8, "MS Shell Dlg" CAPTION "Ajuste de página" BEGIN -LTEXT "&Cabecera:", 0x140, 10, 07, 40, 15 -EDITTEXT 0x141, 60, 05,110, 12, WS_BORDER | WS_TABSTOP -LTEXT "&Pie:", 0x142, 10, 24, 40, 15 -EDITTEXT 0x143, 60, 22,110, 12, WS_BORDER | WS_TABSTOP +LTEXT "&Encabezado:", 0x140, 10, 07, 40, 15 +EDITTEXT 0x141, 62, 05,108, 12, WS_BORDER | WS_TABSTOP +LTEXT "&Pie de página:", 0x142, 10, 24, 60, 15 +EDITTEXT 0x143, 62, 22,108, 12, WS_BORDER | WS_TABSTOP GROUPBOX "&Márgenes:", 0x144, 10, 43,160, 45 -LTEXT "&Izquierda:", 0x145, 20, 55, 30, 10, WS_CHILD -EDITTEXT /*STRING_PAGESETUP_LEFTVALUE,*/ 0x147, 50, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP -LTEXT "A&rriba:", 0x148, 20, 73, 30, 10, WS_CHILD -EDITTEXT /*STRING_PAGESETUP_TOPVALUE,*/ 0x14A, 50, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP +LTEXT "&Izquierda:", 0x145, 19, 55, 32, 10, WS_CHILD +EDITTEXT /*STRING_PAGESETUP_LEFTVALUE,*/ 0x147, 53, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP +LTEXT "A&rriba:", 0x148, 19, 73, 30, 10, WS_CHILD +EDITTEXT /*STRING_PAGESETUP_TOPVALUE,*/ 0x14A, 53, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP LTEXT "&Derecha:", 0x14B, 100, 55, 30, 10, WS_CHILD EDITTEXT /*STRING_PAGESETUP_RIGHTVALUE,*/ 0x14D, 130, 55, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP LTEXT "Aba&jo:", 0x14E,100, 73, 30, 10, WS_CHILD @@ -135,13 +135,13 @@ LTEXT "Fin de l END /* Dialog 'Go To' */ -DIALOG_GOTO DIALOGEX 0,0,165,50 +DIALOG_GOTO DIALOGEX 0,0,180,50 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_CAPTION | WS_SYSMENU FONT 8, "MS Shell Dlg" CAPTION "Ir a la línea" BEGIN -EDITTEXT ID_LINENUMBER,54,10,106,12,WS_CHILD | WS_BORDER | WS_TABSTOP -LTEXT "Número de línea:",0x155,5,12,41,12,WS_CHILD | WS_TABSTOP | ES_NUMBER +EDITTEXT ID_LINENUMBER,89,10,86,12,WS_CHILD | WS_BORDER | WS_TABSTOP +LTEXT "Número de línea:",0x155,5,12,56,12,WS_CHILD | WS_TABSTOP | ES_NUMBER DEFPUSHBUTTON "Aceptar", IDOK, 75, 30, 40, 15, WS_CHILD | WS_TABSTOP PUSHBUTTON "Cancelar", IDCANCEL, 120, 30, 40, 15, WS_CHILD | WS_TABSTOP END diff --git a/base/applications/notepad/lang/uk-UA.rc b/base/applications/notepad/lang/uk-UA.rc index 20a56ccae03..cd38ff5e3f1 100644 --- a/base/applications/notepad/lang/uk-UA.rc +++ b/base/applications/notepad/lang/uk-UA.rc @@ -44,7 +44,7 @@ BEGIN BEGIN MENUITEM "&Ñòâîðèòè\tCtrl+N", CMD_NEW MENUITEM "&³äêðèòè...\tCtrl+O", CMD_OPEN - MENUITEM "&Ç&áåðåãòè\tCtrl+S", CMD_SAVE + MENUITEM "&Çáåðåãòè\tCtrl+S", CMD_SAVE MENUITEM "Çáåðåãòè &ÿê...", CMD_SAVE_AS MENUITEM SEPARATOR MENUITEM "Ïàðà&ìåòðè ñòîð³íêè...", CMD_PAGE_SETUP @@ -53,40 +53,40 @@ BEGIN MENUITEM SEPARATOR MENUITEM "Â&èõ³ä", CMD_EXIT END - POPUP "&Ïðàâêà" + POPUP "Ïð&àâêà" BEGIN - MENUITEM "&Ñêàñóâàòè\tCtrl+Z", CMD_UNDO + MENUITEM "Ñ&êàñóâàòè\tCtrl+Z", CMD_UNDO MENUITEM SEPARATOR - MENUITEM "&Âèð³çàòè\tCtrl+X", CMD_CUT - MENUITEM "&Êîï³þâàòè\tCtrl+C", CMD_COPY - MENUITEM "Âñò&àâèòè\tCtrl+V", CMD_PASTE - MENUITEM "Â&èäàëèòè\tDel", CMD_DELETE + MENUITEM "Âèð&³çàòè\tCtrl+X", CMD_CUT + MENUITEM "Êîï³&þâàòè\tCtrl+C", CMD_COPY + MENUITEM "Âñ&òàâèòè\tCtrl+V", CMD_PASTE + MENUITEM "Âè&äàëèòè\tDel", CMD_DELETE MENUITEM SEPARATOR MENUITEM "Ç&íàéòè...\tCtrl+F", CMD_SEARCH MENUITEM "Çíà&éòè äàë³\tF3", CMD_SEARCH_NEXT - MENUITEM "&Çàì³íèòè\tCtrl+H", CMD_REPLACE - MENUITEM "Ïåðåé&òè...\tCtrl+G", CMD_GOTO + MENUITEM "Çàì&³íèòè\tCtrl+H", CMD_REPLACE + MENUITEM "Ï&åðåéòè...\tCtrl+G", CMD_GOTO MENUITEM SEPARATOR MENUITEM "Âèä³&ëèòè âñå\tCtrl+A", CMD_SELECT_ALL - MENUITEM "&Äàòà é ÷àñ\tF5", CMD_TIME_DATE + MENUITEM "Äàòà é &÷àñ\tF5", CMD_TIME_DATE END - POPUP "Ôîð&ìàò" + POPUP "Ô&îðìàò" BEGIN - MENUITEM "&Ïåðåíîñ ïî ñëîâàõ", CMD_WRAP + MENUITEM "Ïåðåíîñ ïî ñëîâà&õ", CMD_WRAP MENUITEM "&Øðèôò...", CMD_FONT END - POPUP "&Âèãëÿä" + POPUP "Âè&ãëÿä" BEGIN - MENUITEM "&Ðÿäîê ñòàíó", CMD_STATUSBAR + MENUITEM "Ðÿä&îê ñòàí&ó", CMD_STATUSBAR END - POPUP "&Äîâ³äêà" + POPUP "Äîâ&³äêà" BEGIN - MENUITEM "&Çì³ñò", CMD_HELP_CONTENTS - MENUITEM "&Ïîøóê...", CMD_HELP_SEARCH - MENUITEM "&Help on help", CMD_HELP_ON_HELP + MENUITEM "Çì³&ñò", CMD_HELP_CONTENTS + MENUITEM "Ïîø&óê...", CMD_HELP_SEARCH + MENUITEM "Âèêîðèñò&àííÿ äîâ³äêè", CMD_HELP_ON_HELP MENUITEM SEPARATOR MENUITEM "&Ïðî" CMD_ABOUT - MENUITEM "&Ïðî ïðîãðàìó", CMD_ABOUT_WINE + MENUITEM "Ïðî ïðîãðàì&ó", CMD_ABOUT_WINE END END @@ -112,8 +112,8 @@ EDITTEXT /*STRING_PAGESETUP_RIGHTVALUE,*/ 0x14D, 130, 55, 35, 11, WS_CHILD LTEXT "&Íèæíº:", 0x14E,100, 73, 30, 10, WS_CHILD EDITTEXT /*STRING_PAGESETUP_BOTTOMVALUE,*/ 0x150, 130, 73, 35, 11, WS_CHILD | WS_BORDER | WS_TABSTOP -DEFPUSHBUTTON "OK", IDOK, 180, 3, 40, 15, WS_TABSTOP -PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 180, 21, 40, 15, WS_TABSTOP +DEFPUSHBUTTON "Òàê", IDOK, 180, 3, 40, 15, WS_TABSTOP +PUSHBUTTON "ͳ", IDCANCEL, 180, 21, 40, 15, WS_TABSTOP PUSHBUTTON "&Äîâ³äêà", IDHELP, 180, 39, 40, 15, WS_TABSTOP END @@ -159,7 +159,7 @@ END STRINGTABLE DISCARDABLE BEGIN - STRING_LICENSE, "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." + STRING_LICENSE, "Öå â³ëüíå ïðîãðàìíå çàáåçïå÷åííÿ; Âè ìîæåòå ðîçïîâñþäæóâàòè ¿¿ òà çì³íþâàòè, äîòðèìóþ÷èñü óìîâè ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU, îïóáë³êîâàíî¿ Ôîíäîì â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ; àáî ðåäàêö³¿ 2 Óãîäè, àáî áóäü-ÿêî¿ ðåäàêö³¿, âèïóùåíî¿ ï³çí³øå.\r\n\r\nÖÿ ïðîãðàìà ðîçïîâñþäæóºòüñÿ â íà䳿 íà òå, ùî âîíà âèÿâèòüñÿ êîðèñíîþ, àëå ÁÅÇ ÁÓÄÜ-ßÊÈÕ ÃÀÐÀÍÒ²É, âêëþ÷àþ÷è ÓßÂÍÎÞ ÃÀÐÀÍÒ²ªÞ ßÊÎÑÒ² àáî ÏÐÈÄÀÒÍÎÑÒ² äëÿ ïåâíèõ ö³ëåé. Ïîäðîáèö³ ì³ñòÿòüñÿ ó ³äêðèò³é ë³öåíç³éí³é óãîä³ GNU.\r\n\r\nÐàçîì ç ö³ºþ ïðîãðàìîþ ïîâèíåí ïîøèðþâàòèñÿ ïðèì³ðíèê ³äêðèòî¿ ë³öåíç³éíî¿ óãîäè GNU. ßêùî â³í â³äñóòí³é, ïîâ³äîìòå ïðî öå â Ôîíä â³ëüíîãî ïðîãðàìíîãî çàáåçïå÷åííÿ (Free Software Foundation, Inc.), 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA." END STRINGTABLE DISCARDABLE @@ -200,5 +200,5 @@ STRING_UTF8, "UTF-8" STRING_CRLF, "Windows" STRING_LF, "Unix" STRING_CR, "Mac" -STRING_LINE_COLUMN, "Line %d, column %d" +STRING_LINE_COLUMN, "Ðÿäîê %d, ñòîâï÷èê %d" END diff --git a/base/applications/notepad/notepad.rbuild b/base/applications/notepad/notepad.rbuild index ef7800bf189..8a89a7e8e76 100644 --- a/base/applications/notepad/notepad.rbuild +++ b/base/applications/notepad/notepad.rbuild @@ -2,7 +2,6 @@ . - kernel32 user32 gdi32 comdlg32 diff --git a/base/applications/paint/globalvar.h b/base/applications/paint/globalvar.h index 964f28b71fa..ed73d4113de 100644 --- a/base/applications/paint/globalvar.h +++ b/base/applications/paint/globalvar.h @@ -43,6 +43,7 @@ extern int rectSel_dest[4]; extern HWND hSelection; extern HWND hImageArea; extern HBITMAP hSelBm; +extern HBITMAP hSelMask; extern int palColors[28]; @@ -53,6 +54,7 @@ extern HWND hStatusBar; extern HWND hScrollbox; extern HWND hMainWnd; extern HWND hPalWin; +extern HWND hToolBoxContainer; extern HWND hToolSettings; extern HWND hTrackbarZoom; extern CHOOSECOLOR choosecolor; diff --git a/base/applications/paint/lang/de-DE.rc b/base/applications/paint/lang/de-DE.rc index d4a31e475b1..7c56d03cb51 100644 --- a/base/applications/paint/lang/de-DE.rc +++ b/base/applications/paint/lang/de-DE.rc @@ -193,7 +193,7 @@ BEGIN IDS_TOOLTIP9, "Sprühdose" IDS_TOOLTIP10, "Text" IDS_TOOLTIP11, "Linie" - IDS_TOOLTIP12, "Bezier-Kurve" + IDS_TOOLTIP12, "Bézier-Kurve" IDS_TOOLTIP13, "Rechteck" IDS_TOOLTIP14, "Polygon" IDS_TOOLTIP15, "Ellipse" diff --git a/base/applications/paint/lang/en-GB.rc b/base/applications/paint/lang/en-GB.rc index 819f1848940..323848de9e6 100644 --- a/base/applications/paint/lang/en-GB.rc +++ b/base/applications/paint/lang/en-GB.rc @@ -65,7 +65,7 @@ BEGIN END MENUITEM "Full screen\tCtrl+F", IDM_VIEWFULLSCREEN END - + POPUP "&Image" BEGIN MENUITEM "Rotate/Mirror...\tCtrl+R", IDM_IMAGEROTATEMIRROR @@ -76,12 +76,12 @@ BEGIN MENUITEM "Delete image\tCtrl+Shft+N", IDM_IMAGEDELETEIMAGE MENUITEM "Draw opaque", IDM_IMAGEDRAWOPAQUE END - + POPUP "&Colours" BEGIN MENUITEM "Edit palette...", IDM_COLORSEDITPALETTE END - + POPUP "&?" BEGIN MENUITEM "Help topics", IDM_HELPHELPTOPICS diff --git a/base/applications/paint/lang/en-US.rc b/base/applications/paint/lang/en-US.rc index 8dbeae78873..5e326c70cf4 100644 --- a/base/applications/paint/lang/en-US.rc +++ b/base/applications/paint/lang/en-US.rc @@ -65,7 +65,7 @@ BEGIN END MENUITEM "Full screen\tCtrl+F", IDM_VIEWFULLSCREEN END - + POPUP "&Image" BEGIN MENUITEM "Rotate/Mirror...\tCtrl+R", IDM_IMAGEROTATEMIRROR @@ -76,12 +76,12 @@ BEGIN MENUITEM "Delete image\tCtrl+Shft+N", IDM_IMAGEDELETEIMAGE MENUITEM "Draw opaque", IDM_IMAGEDRAWOPAQUE END - + POPUP "&Colors" BEGIN MENUITEM "Edit palette...", IDM_COLORSEDITPALETTE END - + POPUP "&?" BEGIN MENUITEM "Help topics", IDM_HELPHELPTOPICS diff --git a/base/applications/paint/lang/es-ES.rc b/base/applications/paint/lang/es-ES.rc index 145361f6ffa..df4adce5b8d 100644 --- a/base/applications/paint/lang/es-ES.rc +++ b/base/applications/paint/lang/es-ES.rc @@ -202,5 +202,5 @@ BEGIN IDS_OPENFILTER, "Archivos de mapa de bits (*.bmp;*.dib)\1*.bmp;*.dib\1Todos los archivos (*.*)\1*.*\1" IDS_SAVEFILTER, "Mapa de bits de 24 bits (*.bmp;*.dib)\1*.bmp;*.dib\1" IDS_FILESIZE, "%d bytes" - IDS_PRINTRES, "%d x %d pixels per meter" + IDS_PRINTRES, "%d x %d pixels por metro" END diff --git a/base/applications/paint/lang/ja-JP.rc b/base/applications/paint/lang/ja-JP.rc index ece4d5d1dd8..c7eebe484d7 100644 --- a/base/applications/paint/lang/ja-JP.rc +++ b/base/applications/paint/lang/ja-JP.rc @@ -201,6 +201,6 @@ BEGIN IDS_TOOLTIP16, "ŠpŠÛŽlŠpŒ`" IDS_OPENFILTER, "ƒrƒbƒgƒ}ƒbƒv ƒtƒ@ƒCƒ‹ (*.bmp;*.dib)\1*.bmp;*.dib\1‚·‚ׂẴtƒ@ƒCƒ‹ (*.*)\1*.*\1" IDS_SAVEFILTER, "24 ƒrƒbƒg ƒrƒbƒgƒ}ƒbƒv (*.bmp;*.dib)\1*.bmp;*.dib\1" - IDS_FILESIZE, "%d bytes" - IDS_PRINTRES, "%d x %d pixels per meter" + IDS_FILESIZE, "%d ƒoƒCƒg" + IDS_PRINTRES, "%d x %d ƒsƒNƒZƒ‹/ƒ[ƒgƒ‹" END diff --git a/base/applications/paint/lang/sk-SK.rc b/base/applications/paint/lang/sk-SK.rc index 9fe7bd16cc7..34e0c111d80 100644 --- a/base/applications/paint/lang/sk-SK.rc +++ b/base/applications/paint/lang/sk-SK.rc @@ -4,6 +4,7 @@ * FILE: base/applications/paint/lang/sk-SK.rc * PURPOSE: Slovak Language resource file * TRANSLATORS: Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk) + * LastChanged: 21-10-2009 */ LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT @@ -201,6 +202,6 @@ BEGIN IDS_TOOLTIP16, "Zaoblený obdåžnik" IDS_OPENFILTER, "Súbory bitových máp (*.bmp;*.dib)\1*.bmp;*.dib\1Všetky súbory (*.*)\1*.*\1" IDS_SAVEFILTER, "24-bitová mapa (*.bmp;*.dib)\1*.bmp;*.dib\1" - IDS_FILESIZE, "%d bytes" - IDS_PRINTRES, "%d x %d pixels per meter" + IDS_FILESIZE, "%d bajtov" + IDS_PRINTRES, "%d x %d pixelov na meter" END diff --git a/base/applications/paint/lang/uk-UA.rc b/base/applications/paint/lang/uk-UA.rc index f50096b90bc..088da2949c9 100644 --- a/base/applications/paint/lang/uk-UA.rc +++ b/base/applications/paint/lang/uk-UA.rc @@ -200,6 +200,6 @@ BEGIN IDS_TOOLTIP16, "Ïðÿìîêóòíèê ç îêðóãëåíèìè êóòàìè" IDS_OPENFILTER, "Òî÷êîâ³ ðèñóíêè (*.bmp;*.dib)\1*.bmp;*.dib\1Óñ³ ôàéëè (*.*)\1*.*\1" IDS_SAVEFILTER, "24-ðîçðÿäíèé ðèñóíîê (*.bmp;*.dib)\1*.bmp;*.dib\1" - IDS_FILESIZE, "%d bytes" - IDS_PRINTRES, "%d x %d pixels per meter" + IDS_FILESIZE, "%d áàéò" + IDS_PRINTRES, "%d x %d ï³êñåë³â íà ìåòð" END diff --git a/base/applications/paint/main.c b/base/applications/paint/main.c index 790c498f0a6..98565f4b36c 100644 --- a/base/applications/paint/main.c +++ b/base/applications/paint/main.c @@ -60,6 +60,7 @@ int rectSel_dest[4]; HWND hSelection; HWND hImageArea; HBITMAP hSelBm; +HBITMAP hSelMask; /* initial palette colors; may be changed by the user during execution */ int palColors[28] = { 0x000000, 0x464646, 0x787878, 0x300099, 0x241ced, 0x0078ff, 0x0ec2ff, @@ -76,6 +77,7 @@ HWND hStatusBar; HWND hScrollbox; HWND hMainWnd; HWND hPalWin; +HWND hToolBoxContainer; HWND hToolSettings; HWND hTrackbarZoom; CHOOSECOLOR choosecolor; @@ -285,6 +287,9 @@ _tWinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPTSTR lpszArgument CreateWindowEx(0, _T("STATIC"), _T(""), WS_CHILD | WS_VISIBLE | SS_ETCHEDHORZ, 0, 0, 5000, 2, hwnd, NULL, hThisInstance, NULL); + hToolBoxContainer = + CreateWindowEx(0, _T("WindowsApp"), _T(""), WS_CHILD | WS_VISIBLE, 2, 2, 52, 350, hwnd, NULL, + hThisInstance, NULL); /* creating the 16 bitmap radio buttons and setting the bitmap */ @@ -295,7 +300,7 @@ _tWinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPTSTR lpszArgument hToolbar = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, WS_CHILD | WS_VISIBLE | CCS_NOPARENTALIGN | CCS_VERT | CCS_NORESIZE | TBSTYLE_TOOLTIPS, - 3, 3, 50, 205, hwnd, NULL, hThisInstance, NULL); + 1, 1, 50, 205, hToolBoxContainer, NULL, hThisInstance, NULL); hImageList = ImageList_Create(16, 16, ILC_COLOR24 | ILC_MASK, 16, 0); SendMessage(hToolbar, TB_SETIMAGELIST, 0, (LPARAM) hImageList); tempBm = LoadImage(hThisInstance, MAKEINTRESOURCE(IDB_TOOLBARICONS), IMAGE_BITMAP, 256, 16, 0); @@ -327,8 +332,8 @@ _tWinMain (HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPTSTR lpszArgument /* creating the tool settings child window */ hToolSettings = - CreateWindowEx(0, _T("ToolSettings"), _T(""), WS_CHILD | WS_VISIBLE, 7, 210, 42, 140, hwnd, NULL, - hThisInstance, NULL); + CreateWindowEx(0, _T("ToolSettings"), _T(""), WS_CHILD | WS_VISIBLE, 5, 208, 42, 140, + hToolBoxContainer, NULL, hThisInstance, NULL); hTrackbarZoom = CreateWindowEx(0, TRACKBAR_CLASS, _T(""), WS_CHILD | TBS_VERT | TBS_AUTOTICKS, 1, 1, 40, 64, hToolSettings, NULL, hThisInstance, NULL); diff --git a/base/applications/paint/mouse.c b/base/applications/paint/mouse.c index 87cee6c027a..4f5c13031fd 100644 --- a/base/applications/paint/mouse.c +++ b/base/applications/paint/mouse.c @@ -27,6 +27,8 @@ placeSelWin() POINT pointStack[256]; short pointSP; +POINT *ptStack = NULL; +int ptSP = 0; void startPaintingL(HDC hdc, short x, short y, int fg, int bg) @@ -38,15 +40,25 @@ startPaintingL(HDC hdc, short x, short y, int fg, int bg) switch (activeTool) { case 1: + ShowWindow(hSelection, SW_HIDE); + if (ptStack != NULL) + HeapFree(GetProcessHeap(), 0, ptStack); + ptStack = HeapAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS, sizeof(POINT) * 1024); + ptSP = 0; + ptStack[0].x = x; + ptStack[0].y = y; + break; case 10: case 11: case 13: case 15: case 16: newReversible(); + break; case 2: newReversible(); ShowWindow(hSelection, SW_HIDE); + rectSel_src[2] = rectSel_src[3] = 0; break; case 3: newReversible(); @@ -96,6 +108,17 @@ whilePaintingL(HDC hdc, short x, short y, int fg, int bg) { switch (activeTool) { + case 1: + if (ptSP == 0) + newReversible(); + ptSP++; + if (ptSP % 1024 == 0) + ptStack = HeapReAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS, ptStack, sizeof(POINT) * (ptSP + 1024)); + ptStack[ptSP].x = max(0, min(x, imgXRes)); + ptStack[ptSP].y = max(0, min(y, imgYRes)); + resetToU1(); + Poly(hdc, ptStack, ptSP + 1, 0, 0, 2, 0, FALSE); + break; case 2: { short tempX; @@ -174,15 +197,72 @@ endPaintingL(HDC hdc, short x, short y, int fg, int bg) { switch (activeTool) { + case 1: + { + POINT *ptStackCopy; + int i; + rectSel_src[0] = rectSel_src[1] = 0x7fffffff; + rectSel_src[2] = rectSel_src[3] = 0; + for (i = 0; i <= ptSP; i++) + { + if (ptStack[i].x < rectSel_src[0]) + rectSel_src[0] = ptStack[i].x; + if (ptStack[i].y < rectSel_src[1]) + rectSel_src[1] = ptStack[i].y; + if (ptStack[i].x > rectSel_src[2]) + rectSel_src[2] = ptStack[i].x; + if (ptStack[i].y > rectSel_src[3]) + rectSel_src[3] = ptStack[i].y; + } + rectSel_src[2] += 1 - rectSel_src[0]; + rectSel_src[3] += 1 - rectSel_src[1]; + rectSel_dest[0] = rectSel_src[0]; + rectSel_dest[1] = rectSel_src[1]; + rectSel_dest[2] = rectSel_src[2]; + rectSel_dest[3] = rectSel_src[3]; + if (ptSP != 0) + { + DeleteObject(hSelMask); + hSelMask = CreateBitmap(rectSel_src[2], rectSel_src[3], 1, 1, NULL); + DeleteObject(SelectObject(hSelDC, hSelMask)); + ptStackCopy = HeapAlloc(GetProcessHeap(), HEAP_GENERATE_EXCEPTIONS, sizeof(POINT) * (ptSP + 1)); + for (i = 0; i <= ptSP; i++) + { + ptStackCopy[i].x = ptStack[i].x - rectSel_src[0]; + ptStackCopy[i].y = ptStack[i].y - rectSel_src[1]; + } + Poly(hSelDC, ptStackCopy, ptSP + 1, 0x00ffffff, 0x00ffffff, 1, 2, TRUE); + HeapFree(GetProcessHeap(), 0, ptStackCopy); + SelectObject(hSelDC, hSelBm = CreateDIBWithProperties(rectSel_src[2], rectSel_src[3])); + resetToU1(); + MaskBlt(hSelDC, 0, 0, rectSel_src[2], rectSel_src[3], hDrawingDC, rectSel_src[0], + rectSel_src[1], hSelMask, 0, 0, MAKEROP4(SRCCOPY, WHITENESS)); + Poly(hdc, ptStack, ptSP + 1, bg, bg, 1, 2, TRUE); + newReversible(); + + placeSelWin(); + ShowWindow(hSelection, SW_SHOW); + } + HeapFree(GetProcessHeap(), 0, ptStack); + ptStack = NULL; + break; + } case 2: resetToU1(); if ((rectSel_src[2] != 0) && (rectSel_src[3] != 0)) { - DeleteObject(SelectObject - (hSelDC, hSelBm = - (HBITMAP) CreateDIBWithProperties(rectSel_src[2], rectSel_src[3]))); + DeleteObject(hSelMask); + hSelMask = CreateBitmap(rectSel_src[2], rectSel_src[3], 1, 1, NULL); + DeleteObject(SelectObject(hSelDC, hSelMask)); + Rect(hSelDC, 0, 0, rectSel_src[2], rectSel_src[3], 0x00ffffff, 0x00ffffff, 1, 2); + SelectObject(hSelDC, hSelBm = CreateDIBWithProperties(rectSel_src[2], rectSel_src[3])); + resetToU1(); BitBlt(hSelDC, 0, 0, rectSel_src[2], rectSel_src[3], hDrawingDC, rectSel_src[0], rectSel_src[1], SRCCOPY); + Rect(hdc, rectSel_src[0], rectSel_src[1], rectSel_src[0] + rectSel_src[2], + rectSel_src[1] + rectSel_src[3], bgColor, bgColor, 0, TRUE); + newReversible(); + placeSelWin(); ShowWindow(hSelection, SW_SHOW); } @@ -255,6 +335,7 @@ startPaintingR(HDC hdc, short x, short y, int fg, int bg) case 15: case 16: newReversible(); + break; case 3: newReversible(); Replace(hdc, x, y, x, y, fg, bg, rubberRadius); diff --git a/base/applications/paint/paint.rbuild b/base/applications/paint/paint.rbuild index 3087df43d49..f20fc0ac9ec 100644 --- a/base/applications/paint/paint.rbuild +++ b/base/applications/paint/paint.rbuild @@ -7,7 +7,6 @@ user32 gdi32 advapi32 - kernel32 comctl32 dialogs.c dib.c diff --git a/base/applications/paint/selection.c b/base/applications/paint/selection.c index f08b3b112f9..5028f9e66cf 100644 --- a/base/applications/paint/selection.c +++ b/base/applications/paint/selection.c @@ -13,12 +13,51 @@ #include "drawing.h" #include "history.h" #include "mouse.h" +#include "dib.h" /* FUNCTIONS ********************************************************/ +LPCTSTR cursors[9] = { IDC_SIZEALL, IDC_SIZENWSE, IDC_SIZENS, IDC_SIZENESW, + IDC_SIZEWE, IDC_SIZEWE, IDC_SIZENESW, IDC_SIZENS, IDC_SIZENWSE +}; + BOOL moving = FALSE; +int action = 0; short xPos; short yPos; +short xFrac; +short yFrac; + +int +identifyCorner(short x, short y, short w, short h) +{ + if (y < 3) + { + if (x < 3) + return 1; + if ((x < w / 2 + 2) && (x >= w / 2 - 1)) + return 2; + if (x >= w - 3) + return 3; + } + if ((y < h / 2 + 2) && (y >= h / 2 - 1)) + { + if (x < 3) + return 4; + if (x >= w - 3) + return 5; + } + if (y >= h - 3) + { + if (x < 3) + return 6; + if ((x < w / 2 + 2) && (x >= w / 2 - 1)) + return 7; + if (x >= w - 3) + return 8; + } + return 0; +} LRESULT CALLBACK SelectionWinProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) @@ -41,36 +80,140 @@ SelectionWinProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) xPos = LOWORD(lParam); yPos = HIWORD(lParam); SetCapture(hwnd); + if (action != 0) + SetCursor(LoadCursor(NULL, cursors[action])); moving = TRUE; break; case WM_MOUSEMOVE: if (moving) { + int xDelta; + int yDelta; resetToU1(); - rectSel_dest[0] += (short)LOWORD(lParam) - xPos; - rectSel_dest[1] += (short)HIWORD(lParam) - yPos; + xFrac += (short)LOWORD(lParam) - xPos; + yFrac += (short)HIWORD(lParam) - yPos; + if (zoom < 1000) + { + xDelta = xFrac * 1000 / zoom; + xFrac = 0; + yDelta = yFrac * 1000 / zoom; + yFrac = 0; + } + else + { + xDelta = xFrac * 1000 / zoom; + xFrac -= (xFrac * 1000 / zoom) * zoom / 1000; + yDelta = yFrac * 1000 / zoom; + yFrac -= (yFrac * 1000 / zoom) * zoom / 1000; + } + switch (action) + { + case 0: + rectSel_dest[0] += xDelta; + rectSel_dest[1] += yDelta; + break; + case 1: + rectSel_dest[0] += xDelta; + rectSel_dest[1] += yDelta; + rectSel_dest[2] -= xDelta; + rectSel_dest[3] -= yDelta; + break; + case 2: + rectSel_dest[1] += yDelta; + rectSel_dest[3] -= yDelta; + break; + case 3: + rectSel_dest[2] += xDelta; + rectSel_dest[1] += yDelta; + break; + case 4: + rectSel_dest[0] += xDelta; + rectSel_dest[2] -= xDelta; + break; + case 5: + rectSel_dest[2] += xDelta; + break; + case 6: + rectSel_dest[0] += xDelta; + rectSel_dest[2] -= xDelta; + rectSel_dest[3] += yDelta; + break; + case 7: + rectSel_dest[3] += yDelta; + break; + case 8: + rectSel_dest[2] += xDelta; + rectSel_dest[3] += yDelta; + break; + } - Rect(hDrawingDC, rectSel_src[0], rectSel_src[1], rectSel_src[0] + rectSel_src[2], - rectSel_src[1] + rectSel_src[3], bgColor, bgColor, 0, TRUE); + if (action != 0) + StretchBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], hSelDC, 0, 0, GetDIBWidth(hSelBm), GetDIBHeight(hSelBm), SRCCOPY); + else if (transpBg == 0) - BitBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], - hSelDC, 0, 0, SRCCOPY); + MaskBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], + hSelDC, 0, 0, hSelMask, 0, 0, MAKEROP4(SRCCOPY, SRCAND)); else - BitBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], - hSelDC, 0, 0, SRCAND); - //TransparentBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], - // hSelDC, 0, 0, rectSel_dest[2], rectSel_dest[3], bgColor); + { + HBITMAP tempMask; + HBRUSH oldBrush; + HDC tempDC; + tempMask = CreateBitmap(rectSel_dest[2], rectSel_dest[3], 1, 1, NULL); + oldBrush = SelectObject(hSelDC, CreateSolidBrush(bgColor)); + tempDC = CreateCompatibleDC(hSelDC); + SelectObject(tempDC, tempMask); + MaskBlt(tempDC, 0, 0, rectSel_dest[2], rectSel_dest[3], hSelDC, 0, 0, hSelMask, 0, 0, + MAKEROP4(NOTSRCCOPY, BLACKNESS)); + DeleteDC(tempDC); + DeleteObject(SelectObject(hSelDC, oldBrush)); + + MaskBlt(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2], rectSel_dest[3], + hSelDC, 0, 0, tempMask, 0, 0, MAKEROP4(SRCCOPY, SRCAND)); + DeleteObject(tempMask); + } SendMessage(hImageArea, WM_PAINT, 0, 0); xPos = LOWORD(lParam); yPos = HIWORD(lParam); //SendMessage(hwnd, WM_PAINT, 0, 0); } + else + { + int w = rectSel_dest[2] * zoom / 1000 + 6; + int h = rectSel_dest[3] * zoom / 1000 + 6; + xPos = LOWORD(lParam); + yPos = HIWORD(lParam); + action = identifyCorner(xPos, yPos, w, h); + if (action != 0) + SetCursor(LoadCursor(NULL, cursors[action])); + } break; case WM_LBUTTONUP: if (moving) { moving = FALSE; ReleaseCapture(); + if (action != 0) + { + HDC hTempDC; + HBITMAP hTempBm; + hTempDC = CreateCompatibleDC(hSelDC); + hTempBm = CreateDIBWithProperties(rectSel_dest[2], rectSel_dest[3]); + SelectObject(hTempDC, hTempBm); + SelectObject(hSelDC, hSelBm); + StretchBlt(hTempDC, 0, 0, rectSel_dest[2], rectSel_dest[3], hSelDC, 0, 0, + GetDIBWidth(hSelBm), GetDIBHeight(hSelBm), SRCCOPY); + DeleteObject(hSelBm); + hSelBm = hTempBm; + hTempBm = CreateBitmap(rectSel_dest[2], rectSel_dest[3], 1, 1, NULL); + SelectObject(hTempDC, hTempBm); + SelectObject(hSelDC, hSelMask); + StretchBlt(hTempDC, 0, 0, rectSel_dest[2], rectSel_dest[3], hSelDC, 0, 0, + GetDIBWidth(hSelMask), GetDIBHeight(hSelMask), SRCCOPY); + DeleteObject(hSelMask); + hSelMask = hTempBm; + SelectObject(hSelDC, hSelBm); + DeleteDC(hTempDC); + } placeSelWin(); ShowWindow(hSelection, SW_HIDE); ShowWindow(hSelection, SW_SHOW); diff --git a/base/applications/paint/winproc.c b/base/applications/paint/winproc.c index ee02068998c..464b62c9842 100644 --- a/base/applications/paint/winproc.c +++ b/base/applications/paint/winproc.c @@ -112,6 +112,38 @@ drawZoomFrame(int mouseX, int mouseY) ReleaseDC(hImageArea, hdc); } +void +alignChildrenToMainWindow() +{ + int x, y, w, h; + RECT clientRect; + GetClientRect(hMainWnd, &clientRect); + + if (IsWindowVisible(hToolBoxContainer)) + { + x = 56; + w = clientRect.right - 56; + } + else + { + x = 0; + w = clientRect.right; + } + if (IsWindowVisible(hPalWin)) + { + y = 49; + h = clientRect.bottom - 49; + } + else + { + y = 3; + h = clientRect.bottom - 3; + } + + MoveWindow(hScrollbox, x, y, w, IsWindowVisible(hStatusBar) ? h - 23 : h, TRUE); + MoveWindow(hPalWin, x, 9, 255, 32, TRUE); +} + BOOL drawing; LRESULT CALLBACK @@ -179,14 +211,10 @@ WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) } break; case 1: - if (undoSteps > 0) - EnableMenuItem(GetMenu(hMainWnd), IDM_EDITUNDO, MF_ENABLED | MF_BYCOMMAND); - else - EnableMenuItem(GetMenu(hMainWnd), IDM_EDITUNDO, MF_GRAYED | MF_BYCOMMAND); - if (redoSteps > 0) - EnableMenuItem(GetMenu(hMainWnd), IDM_EDITREDO, MF_ENABLED | MF_BYCOMMAND); - else - EnableMenuItem(GetMenu(hMainWnd), IDM_EDITREDO, MF_GRAYED | MF_BYCOMMAND); + EnableMenuItem(GetMenu(hMainWnd), IDM_EDITUNDO, + (undoSteps > 0) ? (MF_ENABLED | MF_BYCOMMAND) : (MF_GRAYED | MF_BYCOMMAND)); + EnableMenuItem(GetMenu(hMainWnd), IDM_EDITREDO, + (redoSteps > 0) ? (MF_ENABLED | MF_BYCOMMAND) : (MF_GRAYED | MF_BYCOMMAND)); if (IsWindowVisible(hSelection)) { EnableMenuItem(GetMenu(hMainWnd), IDM_EDITCUT, MF_ENABLED | MF_BYCOMMAND); @@ -219,10 +247,15 @@ WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND)); break; } - if (IsWindowVisible(hStatusBar)) - CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWSTATUSBAR, MF_CHECKED | MF_BYCOMMAND); - else - CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWSTATUSBAR, MF_UNCHECKED | MF_BYCOMMAND); + CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWTOOLBOX, + IsWindowVisible(hToolBoxContainer) ? + (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND)); + CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWCOLORPALETTE, + IsWindowVisible(hPalWin) ? + (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND)); + CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWSTATUSBAR, + IsWindowVisible(hStatusBar) ? + (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND)); CheckMenuItem(GetMenu(hMainWnd), IDM_VIEWSHOWGRID, showGrid ? (MF_CHECKED | MF_BYCOMMAND) : (MF_UNCHECKED | MF_BYCOMMAND)); @@ -251,9 +284,8 @@ WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { int test[] = { LOWORD(lParam) - 260, LOWORD(lParam) - 140, LOWORD(lParam) - 20 }; SendMessage(hStatusBar, WM_SIZE, wParam, lParam); - SendMessage(hStatusBar, SB_SETPARTS, 3, (int)&test); - MoveWindow(hScrollbox, 56, 49, LOWORD(lParam) - 56, HIWORD(lParam) - 72, TRUE); - //InvalidateRect(hwnd, NULL, TRUE); + SendMessage(hStatusBar, SB_SETPARTS, 3, (LPARAM)&test); + alignChildrenToMainWindow(); } if (hwnd == hImageArea) { @@ -711,8 +743,18 @@ WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) CloseClipboard(); break; case IDM_EDITDELETESELECTION: - ShowWindow(hSelection, SW_HIDE); + { + /* remove selection window and already painted content using undo(), + paint Rect for rectangular selections and nothing for freeform selections */ + undo(); + if (activeTool == 2) + { + newReversible(); + Rect(hDrawingDC, rectSel_dest[0], rectSel_dest[1], rectSel_dest[2] + rectSel_dest[0], + rectSel_dest[3] + rectSel_dest[1], bgColor, bgColor, 0, TRUE); + } break; + } case IDM_EDITSELECTALL: if (activeTool == 2) { @@ -800,8 +842,17 @@ WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) updateCanvasAndScrollbars(); break; + case IDM_VIEWTOOLBOX: + ShowWindow(hToolBoxContainer, IsWindowVisible(hToolBoxContainer) ? SW_HIDE : SW_SHOW); + alignChildrenToMainWindow(); + break; + case IDM_VIEWCOLORPALETTE: + ShowWindow(hPalWin, IsWindowVisible(hPalWin) ? SW_HIDE : SW_SHOW); + alignChildrenToMainWindow(); + break; case IDM_VIEWSTATUSBAR: ShowWindow(hStatusBar, IsWindowVisible(hStatusBar) ? SW_HIDE : SW_SHOW); + alignChildrenToMainWindow(); break; case IDM_VIEWSHOWGRID: diff --git a/base/applications/rapps/lang/bg-BG.rc b/base/applications/rapps/lang/bg-BG.rc index b3775c63cc8..d90af82ec44 100644 --- a/base/applications/rapps/lang/bg-BG.rc +++ b/base/applications/rapps/lang/bg-BG.rc @@ -14,7 +14,7 @@ BEGIN MENUITEM "&Ìàõàíå",ID_UNINSTALL MENUITEM "&Ïðîìÿíà", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Ïðå&ìàõâàíå îò ðåãèñòúðà", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "Î&ïðåñíÿâàíå", ID_REFRESH END @@ -42,45 +42,45 @@ BEGIN MENUITEM "&Ìàõàíå", ID_UNINSTALL MENUITEM "&Ïðîìÿíà", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Ïðå&ìàõâàíå îò ðåãèñòúðà", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "Î&ïðåñíÿâàíå", ID_REFRESH END END -IDD_SETTINGS_DIALOG DIALOGEX DISCARDABLE 0, 0, 250, 144 +IDD_SETTINGS_DIALOG DIALOGEX DISCARDABLE 0, 0, 254, 144 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Settings" +CAPTION "Íàñòðîéêè" FONT 8, "MS Shell Dlg" BEGIN - GROUPBOX "General", -1, 4, 2, 240, 61 - AUTOCHECKBOX "&Save window position", IDC_SAVE_WINDOW_POS, 15, 12, 219, 12 - AUTOCHECKBOX "&Update the list of accessible programs at start", IDC_UPDATE_AVLIST, 15, 29, 219, 12 - AUTOCHECKBOX "&Log of installation and removal of programs", IDC_LOG_ENABLED, 15, 46, 219, 12 + GROUPBOX "Îáùè", -1, 4, 2, 244, 61 + AUTOCHECKBOX "&Ñúõðàíÿâàíå ðàçïîëîæåíèåòî íà ïðîçîðåöà", IDC_SAVE_WINDOW_POS, 15, 12, 223, 12 + AUTOCHECKBOX "Îá&íîâÿâàíå íà ñïèñúêà ñ äîñòúïíèòå ïðèëîæåíèÿ ïðè ïóñêàíå", IDC_UPDATE_AVLIST, 15, 29, 227, 12 + AUTOCHECKBOX "&Âïèñâàíå íà ñëàãàíèÿòà è ìàõàíèÿòà íà ïðèëîæåíèÿ", IDC_LOG_ENABLED, 15, 46, 223, 12 - GROUPBOX "Downloading", -1, 4, 65, 240, 51 - LTEXT "Folder for downloadings:", -1, 16, 75, 100, 9 + GROUPBOX "Ñâàëÿíå", -1, 4, 65, 244, 51 + LTEXT "Ïàïêà çà ñâàëåíèòå ôàéëîâå", -1, 16, 75, 100, 9 EDITTEXT IDC_DOWNLOAD_DIR_EDIT, 15, 86, 166, 12, WS_CHILD | WS_VISIBLE | WS_GROUP - PUSHBUTTON "&Choose", IDC_CHOOSE, 187, 85, 50, 14 - AUTOCHECKBOX "&Delete installers of programs after installation", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 + PUSHBUTTON "Èç&áîð", IDC_CHOOSE, 187, 85, 50, 14 + AUTOCHECKBOX "Ñëåä ñëàãàíå, èçïîëçâàíèòå ôàéëîâå äà ñå èçòðèâàò", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 - PUSHBUTTON "Default", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 - PUSHBUTTON "OK", IDOK, 116, 124, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 181, 124, 60, 14 + PUSHBUTTON "Ïîäðàçáèðàíî", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 + PUSHBUTTON "Äîáðå", IDOK, 116, 124, 60, 14 + PUSHBUTTON "Îòêàç", IDCANCEL, 181, 124, 60, 14 END IDD_INSTALL_DIALOG DIALOGEX DISCARDABLE 0, 0, 216, 97 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Program installation" +CAPTION "Ñëàãàíå íà ïðèëîæåíèå" FONT 8, "MS Shell Dlg" BEGIN LTEXT "...", IDC_INSTALL_TEXT, 4, 5, 209, 35 - AUTORADIOBUTTON "&Install from a disk (CD or DVD)", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP - AUTORADIOBUTTON "&Download and install", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Ñëàãàíå îò îïòè÷åí íîñèòåë", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP + AUTORADIOBUTTON "&Ñâàëÿíå è ñëàãàíå", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP - PUSHBUTTON "OK", IDOK, 86, 78, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 150, 78, 60, 14 + PUSHBUTTON "Äîáðå", IDOK, 86, 78, 60, 14 + PUSHBUTTON "Îòêàç", IDCANCEL, 150, 78, 60, 14 END IDD_DOWNLOAD_DIALOG DIALOGEX LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76 @@ -98,7 +98,7 @@ STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME CAPTION "Çà" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "Óïðàâèòåëÿò çà ïðèëîæåíèÿ íà ÐåàêòÎÑ\nÂúçïðîèçâîäñòâåíè ïðàâà (C) 2009\nÄìèòðèé ×àïúéøåâ (dmitry@reactos.org)", IDC_STATIC, 48, 7, 150, 39 + LTEXT "Óïðàâèòåëÿò çà ïðèëîæîæåíèÿ íà ÐåàêòÎÑ\nÂúçïðîèçâîäñòâåíè ïðàâà (C) 2009\nÄìèòðèé ×àïúéøåâ (dmitry@reactos.org)", IDC_STATIC, 48, 7, 150, 39 PUSHBUTTON "Çàòâàðÿíå", IDOK, 133, 46, 50, 14 ICON IDI_MAIN, IDC_STATIC, 10, 10, 7, 30 END @@ -159,7 +159,7 @@ BEGIN IDS_CAT_ENGINEER "Èíæåíåðñòâî" IDS_CAT_FINANCE "Ôèíàíñè" IDS_CAT_GAMES "Èãðè è çàáàâëåíèÿ" - IDS_CAT_GRAPHICS "Ãðàôèêà" + IDS_CAT_GRAPHICS "ãðàôèêà" IDS_CAT_INTERNET "Èíòåðíåò è ìðåæà" IDS_CAT_LIBS "Áèáëèîòåêè" IDS_CAT_OFFICE "Ñëóæåáíè" @@ -177,17 +177,17 @@ BEGIN IDS_UNINSTALL "Ìàõàíå" IDS_MODIFY "Ïðîìÿíà" IDS_APPS_COUNT "Áðîé ïðèëîæåíèÿ: %d" - IDS_WELCOME_TITLE "Óïðàâèòåëÿò çà ïðèëîæåíèÿ íà ÐåàêòÎÑ âè ïðèâåòñòâà!\n\n" + IDS_WELCOME_TITLE "Óïðàâèòåëÿò íà ïðèëîæåíèÿòà íà ÐåàêòÎÑ âè ïðèâåòñòâà" IDS_WELCOME_TEXT "Èçáåðåòå ðàçäåë îò ëÿâàòà ñòðàíà, ñëåä êîåòî èçáåðåòå ïðèëîæåíèå çà ñëàãàíå èëè ïðåìàõâàíå.\nÑòðàíèöàòà íà ÐåàêòÎÑ: " IDS_WELCOME_URL "http://www.reactos.org" - IDS_INSTALLED "Ñëîæåíè" + IDS_INSTALLED "Ñëîæåíî" IDS_AVAILABLEFORINST "Íàëè÷íî çà ñëàãàíå" IDS_UPDATES "Îáíîâëåíèÿ" IDS_APPLICATIONS "Ïðèëîæåíèÿ" - IDS_CHOOSE_FOLDER_TEXT "Choose a folder which will be used for downloading of programs:" - IDS_CHOOSE_FOLDER_ERROR "You have specified a nonexistent folder!" - IDS_USER_NOT_ADMIN "You should be administrator for start ""ReactOS Applications Manager""!" - IDS_APP_REG_REMOVE "Are you sure you want to delete the data on the installed program from the registry?" - IDS_INFORMATION "Information" - IDS_UNABLE_TO_REMOVE "Unable to remove data on the program from the registry!" + IDS_CHOOSE_FOLDER_TEXT "Èçáåðåòå ïàïêà, â êîÿòî äà ñå ñâàëÿò ïðèëîæåíèÿòà:" + IDS_CHOOSE_FOLDER_ERROR "Óêàçàëè ñòå íåñúñøåñòâóâàùà ïàïêà!" + IDS_USER_NOT_ADMIN "You should be administrator for start ""Óïðàâèòåëÿò çà ïðèëîæåíèÿ íà ÐåàêòÎÑ""!" + IDS_APP_REG_REMOVE "Óâåðåí ëè ñòå, ÷å èñêàòå äà èçòðèåòå äàííèòå çà ñëîæåíîòî ïðèëîæåíèå îò ðåãèñòúðà?" + IDS_INFORMATION "Ñâåäåíèÿ" + IDS_UNABLE_TO_REMOVE "Ïðåìàõâàíåòî íà äàííèòå çà ïðèëîæåíèåòî îò ðåãèñòúðà å íåâúçìîæíî!" END diff --git a/base/applications/rapps/lang/de-DE.rc b/base/applications/rapps/lang/de-DE.rc index 8a1db9cae58..b48f0ea2229 100644 --- a/base/applications/rapps/lang/de-DE.rc +++ b/base/applications/rapps/lang/de-DE.rc @@ -14,7 +14,7 @@ BEGIN MENUITEM "&Deinstallieren",ID_UNINSTALL MENUITEM "&Ändern", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Aus &Registry entfernen", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "&Aktualisieren", ID_REFRESH END @@ -42,7 +42,7 @@ BEGIN MENUITEM "&Deinstallieren", ID_UNINSTALL MENUITEM "&Ändern", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Aus &Registry entfernen", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "&Aktualisieren", ID_REFRESH END @@ -50,37 +50,37 @@ END IDD_SETTINGS_DIALOG DIALOGEX DISCARDABLE 0, 0, 250, 144 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Settings" +CAPTION "Einstellungen" FONT 8, "MS Shell Dlg" BEGIN - GROUPBOX "General", -1, 4, 2, 240, 61 - AUTOCHECKBOX "&Save window position", IDC_SAVE_WINDOW_POS, 15, 12, 219, 12 - AUTOCHECKBOX "&Update the list of accessible programs at start", IDC_UPDATE_AVLIST, 15, 29, 219, 12 - AUTOCHECKBOX "&Log of installation and removal of programs", IDC_LOG_ENABLED, 15, 46, 219, 12 + GROUPBOX "Allgemein", -1, 4, 2, 240, 61 + AUTOCHECKBOX "Fensterposition &speichern", IDC_SAVE_WINDOW_POS, 15, 12, 219, 12 + AUTOCHECKBOX "Beim Start Liste der verfügbaren Programme &aktualisieren", IDC_UPDATE_AVLIST, 15, 29, 219, 12 + AUTOCHECKBOX "Hinzufügen und Entfernen von Programmen mit&loggen", IDC_LOG_ENABLED, 15, 46, 219, 12 - GROUPBOX "Downloading", -1, 4, 65, 240, 51 - LTEXT "Folder for downloadings:", -1, 16, 75, 100, 9 + GROUPBOX "Download", -1, 4, 65, 240, 51 + LTEXT "Ordner für Downloads:", -1, 16, 75, 100, 9 EDITTEXT IDC_DOWNLOAD_DIR_EDIT, 15, 86, 166, 12, WS_CHILD | WS_VISIBLE | WS_GROUP - PUSHBUTTON "&Choose", IDC_CHOOSE, 187, 85, 50, 14 - AUTOCHECKBOX "&Delete installers of programs after installation", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 + PUSHBUTTON "&Wählen", IDC_CHOOSE, 187, 85, 50, 14 + AUTOCHECKBOX "&Installer nach Programminstallation löschen", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 - PUSHBUTTON "Default", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 + PUSHBUTTON "Vorgabe", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 PUSHBUTTON "OK", IDOK, 116, 124, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 181, 124, 60, 14 + PUSHBUTTON "Abbrechen", IDCANCEL, 181, 124, 60, 14 END IDD_INSTALL_DIALOG DIALOGEX DISCARDABLE 0, 0, 216, 97 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Program installation" +CAPTION "Programminstallation" FONT 8, "MS Shell Dlg" BEGIN LTEXT "...", IDC_INSTALL_TEXT, 4, 5, 209, 35 - AUTORADIOBUTTON "&Install from a disk (CD or DVD)", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP - AUTORADIOBUTTON "&Download and install", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "&Installation von einem Datenträger (CD oder DVD)", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP + AUTORADIOBUTTON "Herunterla&den und installieren", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP PUSHBUTTON "OK", IDOK, 86, 78, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 150, 78, 60, 14 + PUSHBUTTON "Abbrechen", IDCANCEL, 150, 78, 60, 14 END IDD_DOWNLOAD_DIALOG DIALOGEX LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76 @@ -98,7 +98,7 @@ STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME CAPTION "Über" FONT 8, "MS Shell Dlg" BEGIN - LTEXT "ReactOS Anwendungsmanager\nCopyright (C) 2009\nby Dmitry Chapyshev (dmitry@reactos.org)", IDC_STATIC, 48, 7, 130, 39 + LTEXT "ReactOS-Anwendungsmanager\nCopyright (C) 2009\nby Dmitry Chapyshev (dmitry@reactos.org)", IDC_STATIC, 48, 7, 130, 39 PUSHBUTTON "Schließen", IDOK, 133, 46, 50, 14 ICON IDI_MAIN, IDC_STATIC, 10, 10, 7, 30 END @@ -124,14 +124,14 @@ STRINGTABLE DISCARDABLE BEGIN IDS_INFO_VERSION "\nVersion: " IDS_INFO_DESCRIPTION "\nBeschreibung: " - IDS_INFO_PUBLISHER "\nPublisher: " + IDS_INFO_PUBLISHER "\nVertrieb: " IDS_INFO_HELPLINK "\nHilfe-Link: " IDS_INFO_HELPPHONE "\nHilfe-Telefonnr.: " IDS_INFO_README "\nReadme: " IDS_INFO_REGOWNER "\nregistrierter Eigentümer: " IDS_INFO_PRODUCTID "\nProdukt-ID: " - IDS_INFO_CONTACT "\nKontaktt: " - IDS_INFO_UPDATEINFO "\nUpdate Information: " + IDS_INFO_CONTACT "\nKontakt: " + IDS_INFO_UPDATEINFO "\nUpdate-Informationen: " IDS_INFO_INFOABOUT "\nInformation über: " IDS_INFO_COMMENTS "\nKommentare: " IDS_INFO_INSTLOCATION "\nInstallationsort: " @@ -171,23 +171,23 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_APPTITLE "ReactOS Anwendungsmanager" + IDS_APPTITLE "ReactOS-Anwendungsmanager" IDS_SEARCH_TEXT "Suche..." IDS_INSTALL "Installieren" IDS_UNINSTALL "Deinstallieren" IDS_MODIFY "Ändern" IDS_APPS_COUNT "Anzahl der Anwendungen: %d" - IDS_WELCOME_TITLE "Willkommen im ReactOS Anwendungsmanager!\n\n" - IDS_WELCOME_TEXT "Wählen Sie links eine Kategorie und dann eine Anwendung um sie zu installieren oder zu deinstallieren.\nReactOS Webseite: " + IDS_WELCOME_TITLE "Willkommen im ReactOS-Anwendungsmanager!\n\n" + IDS_WELCOME_TEXT "Wählen Sie links eine Kategorie und dann eine Anwendung um sie zu installieren oder zu deinstallieren.\nReactOS-Webseite: " IDS_WELCOME_URL "http://www.reactos.org" IDS_INSTALLED "Installiert" IDS_AVAILABLEFORINST "Zur Installation verfügbar" - IDS_UPDATES "Updates" + IDS_UPDATES "Aktualisierungen" IDS_APPLICATIONS "Anwendungen" - IDS_CHOOSE_FOLDER_TEXT "Choose a folder which will be used for downloading of programs:" - IDS_CHOOSE_FOLDER_ERROR "You have specified a nonexistent folder!" - IDS_USER_NOT_ADMIN "You should be administrator for start ""ReactOS Applications Manager""!" - IDS_APP_REG_REMOVE "Are you sure you want to delete the data on the installed program from the registry?" - IDS_INFORMATION "Information" - IDS_UNABLE_TO_REMOVE "Unable to remove data on the program from the registry!" + IDS_CHOOSE_FOLDER_TEXT "Wählen Sie ein Verzeichnis aus, das zum Herunterladen verwendet werden soll:" + IDS_CHOOSE_FOLDER_ERROR "Sie haben ein nicht existentes Verzeichnis angegeben!" + IDS_USER_NOT_ADMIN "Sie müssen als Administrator angemeldet sein, um den Anwendungsmanager zu starten!" + IDS_APP_REG_REMOVE "Sind Sie sich sicher, dass Sie die Daten dieses Programms aus der Registry entfernen möchten?" + IDS_INFORMATION "Informationen" + IDS_UNABLE_TO_REMOVE "Konnte die Daten nicht aus der Registry löschen!" END diff --git a/base/applications/rapps/lang/en-US.rc b/base/applications/rapps/lang/en-US.rc index 39ca7b47a26..f8d018923dc 100644 --- a/base/applications/rapps/lang/en-US.rc +++ b/base/applications/rapps/lang/en-US.rc @@ -59,10 +59,10 @@ BEGIN AUTOCHECKBOX "&Log of installation and removal of programs", IDC_LOG_ENABLED, 15, 46, 219, 12 GROUPBOX "Downloading", -1, 4, 65, 240, 51 - LTEXT "Folder for downloadings:", -1, 16, 75, 100, 9 + LTEXT "Downloads folder:", -1, 16, 75, 100, 9 EDITTEXT IDC_DOWNLOAD_DIR_EDIT, 15, 86, 166, 12, WS_CHILD | WS_VISIBLE | WS_GROUP PUSHBUTTON "&Choose", IDC_CHOOSE, 187, 85, 50, 14 - AUTOCHECKBOX "&Delete installers of programs after installation", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 + AUTOCHECKBOX "&Delete program installer after installation", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 PUSHBUTTON "Default", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 PUSHBUTTON "OK", IDOK, 116, 124, 60, 14 @@ -184,9 +184,9 @@ BEGIN IDS_AVAILABLEFORINST "Available for installation" IDS_UPDATES "Updates" IDS_APPLICATIONS "Applications" - IDS_CHOOSE_FOLDER_TEXT "Choose a folder which will be used for downloading of programs:" - IDS_CHOOSE_FOLDER_ERROR "You have specified a nonexistent folder!" - IDS_USER_NOT_ADMIN "You should be administrator for start ""ReactOS Applications Manager""!" + IDS_CHOOSE_FOLDER_TEXT "Choose a folder which will store Downloads:" + IDS_CHOOSE_FOLDER_ERROR "The folder you have specified does not exist." + IDS_USER_NOT_ADMIN "You must be an administrator to start ""ReactOS Applications Manager""!" IDS_APP_REG_REMOVE "Are you sure you want to delete the data on the installed program from the registry?" IDS_INFORMATION "Information" IDS_UNABLE_TO_REMOVE "Unable to remove data on the program from the registry!" diff --git a/base/applications/rapps/lang/es-ES.rc b/base/applications/rapps/lang/es-ES.rc index c92ddd54d81..9776a77a290 100644 --- a/base/applications/rapps/lang/es-ES.rc +++ b/base/applications/rapps/lang/es-ES.rc @@ -161,7 +161,7 @@ BEGIN IDS_CAT_GAMES "Juegos y Entretenimiento" IDS_CAT_GRAPHICS "Gráficos" IDS_CAT_INTERNET "Internet & Redes" - IDS_CAT_LIBS "Librarias" + IDS_CAT_LIBS "Librerias" IDS_CAT_OFFICE "Oficina" IDS_CAT_OTHER "Otros" IDS_CAT_SCIENCE "Ciencia" diff --git a/base/applications/rapps/lang/ja-JP.rc b/base/applications/rapps/lang/ja-JP.rc index 1f27145180c..ff8cf3443b1 100644 --- a/base/applications/rapps/lang/ja-JP.rc +++ b/base/applications/rapps/lang/ja-JP.rc @@ -98,7 +98,7 @@ STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME CAPTION "ƒo[ƒWƒ‡ƒ“î•ñ" FONT 9, "MS UI Gothic" BEGIN - LTEXT "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ[\nCopyright (C) 2009\nby Dmitry Chapyshev (dmitry@reactos.org)", IDC_STATIC, 48, 7, 130, 39 + LTEXT "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ\nCopyright (C) 2009\nby Dmitry Chapyshev (dmitry@reactos.org)", IDC_STATIC, 48, 7, 130, 39 PUSHBUTTON "•Â‚¶‚é", IDOK, 133, 46, 50, 14 ICON IDI_MAIN, IDC_STATIC, 10, 10, 7, 30 END @@ -171,13 +171,13 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_APPTITLE "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ[" + IDS_APPTITLE "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ" IDS_SEARCH_TEXT "ŒŸõ..." IDS_INSTALL "ƒCƒ“ƒXƒg[ƒ‹" IDS_UNINSTALL "ƒAƒ“ƒCƒ“ƒXƒg[ƒ‹" IDS_MODIFY "•ÏX" IDS_APPS_COUNT "ƒAƒvƒŠƒP[ƒVƒ‡ƒ“”: %d" - IDS_WELCOME_TITLE "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ[‚ւ悤‚±‚»!\n\n" + IDS_WELCOME_TITLE "ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ‚ւ悤‚±‚»!\n\n" IDS_WELCOME_TEXT "¶‘¤‚©‚çƒJƒeƒSƒŠ‚ð‘I‘ð‚µAƒCƒ“ƒXƒg[ƒ‹–”‚̓Aƒ“ƒCƒ“ƒXƒg[ƒ‹‚·‚éƒAƒvƒŠƒP[ƒVƒ‡ƒ“‚ð‘I‚ñ‚Å‚­‚¾‚³‚¢B\nReactOS ƒEƒFƒu ƒTƒCƒg: " IDS_WELCOME_URL "http://www.reactos.org" IDS_INSTALLED "ƒCƒ“ƒXƒg[ƒ‹Ï‚Ý" @@ -186,7 +186,7 @@ BEGIN IDS_APPLICATIONS "ƒAƒvƒŠƒP[ƒVƒ‡ƒ“" IDS_CHOOSE_FOLDER_TEXT "ƒvƒƒOƒ‰ƒ€‚̃_ƒEƒ“ƒ[ƒh‚ÉŽg—p‚·‚éƒtƒHƒ‹ƒ_‚ð‘I‘ð‚µ‚Ä‚­‚¾‚³‚¢:" IDS_CHOOSE_FOLDER_ERROR "Žw’肳‚ꂽƒtƒHƒ‹ƒ_‚Í‘¶Ý‚µ‚Ü‚¹‚ñ!" - IDS_USER_NOT_ADMIN """ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ["" ‚ð‹N“®‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚Å‚ ‚é•K—v‚ª‚ ‚è‚Ü‚·!" + IDS_USER_NOT_ADMIN """ReactOS ƒAƒvƒŠƒP[ƒVƒ‡ƒ“ ƒ}ƒl[ƒWƒƒ"" ‚ð‹N“®‚·‚é‚É‚ÍŠÇ—ŽÒŒ ŒÀ‚Å‚ ‚é•K—v‚ª‚ ‚è‚Ü‚·!" IDS_APP_REG_REMOVE "ƒŒƒWƒXƒgƒŠ‚©‚çƒCƒ“ƒXƒg[ƒ‹‚³‚ꂽƒvƒƒOƒ‰ƒ€‚ÉŠÖ‚·‚éƒf[ƒ^‚ðíœ‚µ‚Ä‚à‚æ‚낵‚¢‚Å‚·‚©?" IDS_INFORMATION "î•ñ" IDS_UNABLE_TO_REMOVE "ƒŒƒWƒXƒgƒŠ‚©‚炱‚̃vƒƒOƒ‰ƒ€‚ÉŠÖ‚·‚éƒf[ƒ^‚ðíœ‚Å‚«‚Ü‚¹‚ñ!" diff --git a/base/applications/rapps/lang/uk-UA.rc b/base/applications/rapps/lang/uk-UA.rc index 27c47a786a4..95e4056dba5 100644 --- a/base/applications/rapps/lang/uk-UA.rc +++ b/base/applications/rapps/lang/uk-UA.rc @@ -19,17 +19,17 @@ BEGIN POPUP "&Ïðîãðàìè" BEGIN MENUITEM "&Âñòàíîâèòè", ID_INSTALL - MENUITEM "&Âèäàëèòè",ID_UNINSTALL + MENUITEM "Âèä&àëèòè",ID_UNINSTALL MENUITEM "&Çì³íèòè", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Âèäà&ëèòè ç ðåºñòðó", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "&Îíîâèòè", ID_REFRESH END - POPUP "Äîâ³äêà" + POPUP "&Äîâ³äêà" BEGIN - MENUITEM "Äîâ³äêà", ID_HELP, GRAYED - MENUITEM "Ïðî ïðîãðàìó...", ID_ABOUT + MENUITEM "Äîâ&³äêà", ID_HELP, GRAYED + MENUITEM "Ïðî ïðî&ãðàìó...", ID_ABOUT END END @@ -47,10 +47,10 @@ BEGIN POPUP "popup" BEGIN MENUITEM "&Âñòàíîâèòè", ID_INSTALL - MENUITEM "&Âèäàëèòè", ID_UNINSTALL + MENUITEM "Â&èäàëèòè", ID_UNINSTALL MENUITEM "&Çì³íèòè", ID_MODIFY MENUITEM SEPARATOR - MENUITEM "&Remove from Registry", ID_REGREMOVE + MENUITEM "Âèä&àëèòè ç ðåºñòðó", ID_REGREMOVE MENUITEM SEPARATOR MENUITEM "&Îíîâèòè", ID_REFRESH END @@ -58,37 +58,37 @@ END IDD_SETTINGS_DIALOG DIALOGEX DISCARDABLE 0, 0, 250, 144 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Settings" +CAPTION "Íàëàøòóâàííÿ" FONT 8, "MS Shell Dlg" BEGIN - GROUPBOX "General", -1, 4, 2, 240, 61 - AUTOCHECKBOX "&Save window position", IDC_SAVE_WINDOW_POS, 15, 12, 219, 12 - AUTOCHECKBOX "&Update the list of accessible programs at start", IDC_UPDATE_AVLIST, 15, 29, 219, 12 - AUTOCHECKBOX "&Log of installation and removal of programs", IDC_LOG_ENABLED, 15, 46, 219, 12 + GROUPBOX "Çàãàëüí³", -1, 4, 2, 240, 61 + AUTOCHECKBOX "&Çáåð³ãàòè ïîëîæåííÿ â³êíà", IDC_SAVE_WINDOW_POS, 15, 12, 219, 12 + AUTOCHECKBOX "&Îíîâëþâàòè ñïèñîê íàÿâíèõ ïðîãðàì ïðè çàïóñêó", IDC_UPDATE_AVLIST, 15, 29, 219, 12 + AUTOCHECKBOX "&Âåñòè ëîã âñòàíîâëåííÿ/âèäàëåííÿ ïðîãðàì", IDC_LOG_ENABLED, 15, 46, 219, 12 - GROUPBOX "Downloading", -1, 4, 65, 240, 51 - LTEXT "Folder for downloadings:", -1, 16, 75, 100, 9 + GROUPBOX "Çàâàíòàæåííÿ", -1, 4, 65, 240, 51 + LTEXT "Òåêà äëÿ çàâàíòàæåíü:", -1, 16, 75, 100, 9 EDITTEXT IDC_DOWNLOAD_DIR_EDIT, 15, 86, 166, 12, WS_CHILD | WS_VISIBLE | WS_GROUP - PUSHBUTTON "&Choose", IDC_CHOOSE, 187, 85, 50, 14 - AUTOCHECKBOX "&Delete installers of programs after installation", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 + PUSHBUTTON "&Îáðàòè", IDC_CHOOSE, 187, 85, 50, 14 + AUTOCHECKBOX "&Âèäàëÿòè ³íñòàëÿòîðè ïðîãðàì ï³ñëÿ âñòàíîâëåííÿ", IDC_DEL_AFTER_INSTALL, 16, 100, 218, 12 - PUSHBUTTON "Default", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 + PUSHBUTTON "Çà çàìîâ÷óâàííÿì", IDC_DEFAULT_SETTINGS, 8, 124, 60, 14 PUSHBUTTON "OK", IDOK, 116, 124, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 181, 124, 60, 14 + PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 181, 124, 60, 14 END IDD_INSTALL_DIALOG DIALOGEX DISCARDABLE 0, 0, 216, 97 STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "Program installation" +CAPTION "Âñòàíîâëåííÿ ïðîãðàìè" FONT 8, "MS Shell Dlg" BEGIN LTEXT "...", IDC_INSTALL_TEXT, 4, 5, 209, 35 - AUTORADIOBUTTON "&Install from a disk (CD or DVD)", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP - AUTORADIOBUTTON "&Download and install", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "&Âñòàíîâèòè ç äèñêó", IDC_CD_INSTALL, 10, 46, 197, 11, WS_GROUP + AUTORADIOBUTTON "&Çàâàíòàæèòè òà âñòàíîâèòè", IDC_DOWNLOAD_INSTALL, 10, 59, 197, 11, NOT WS_TABSTOP PUSHBUTTON "OK", IDOK, 86, 78, 60, 14 - PUSHBUTTON "Cancel", IDCANCEL, 150, 78, 60, 14 + PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 150, 78, 60, 14 END IDD_DOWNLOAD_DIALOG DIALOGEX LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76 @@ -192,10 +192,10 @@ BEGIN IDS_AVAILABLEFORINST "Äîñòóïí³ äëÿ âñòàíîâëåííÿ" IDS_UPDATES "Îíîâëåííÿ" IDS_APPLICATIONS "Äîäàòêè" - IDS_CHOOSE_FOLDER_TEXT "Choose a folder which will be used for downloading of programs:" - IDS_CHOOSE_FOLDER_ERROR "You have specified a nonexistent folder!" - IDS_USER_NOT_ADMIN "You should be administrator for start ""ReactOS Applications Manager""!" - IDS_APP_REG_REMOVE "Are you sure you want to delete the data on the installed program from the registry?" - IDS_INFORMATION "Information" - IDS_UNABLE_TO_REMOVE "Unable to remove data on the program from the registry!" + IDS_CHOOSE_FOLDER_TEXT "Îáåð³òü òåêó, ÿêà áóäå âèêîðèñòîâóâàòèñÿ äëÿ çàâàíòàæåííÿ ïðîãðàì:" + IDS_CHOOSE_FOLDER_ERROR "Âè âêàçàëè íå³ñíóþ÷ó òåêó!" + IDS_USER_NOT_ADMIN "Âè ïîâèíí³ áóòè àäì³í³ñòðàòîðîì äëÿ çàïóñêó ""Ìåíåäæåðà ïðîãðàì ReactOS""!" + IDS_APP_REG_REMOVE "Âè ä³éñíî õî÷åòå âèäàëèòè äàí³ ïðî âñòàíîâëåíó ïðîãðàìó ç ðåºñòðó?" + IDS_INFORMATION "²íôîðìàö³ÿ" + IDS_UNABLE_TO_REMOVE "Íå âäàëîñÿ âèäàëèòè äàí³ ïðî ïðîãðàìó ç ðåºñòðó!" END diff --git a/base/applications/rapps/rapps.rbuild b/base/applications/rapps/rapps.rbuild index e74c31ff248..066b3ba7a9b 100644 --- a/base/applications/rapps/rapps.rbuild +++ b/base/applications/rapps/rapps.rbuild @@ -6,7 +6,6 @@ advapi32 comctl32 - kernel32 gdi32 urlmon user32 diff --git a/base/applications/rapps/rapps/7zip.txt b/base/applications/rapps/rapps/7zip.txt index cf43f5c78b7..40499b19307 100644 --- a/base/applications/rapps/rapps/7zip.txt +++ b/base/applications/rapps/rapps/7zip.txt @@ -13,3 +13,6 @@ CDPath = none [Section.0407] Description = Tool zum Erstellen und Öffnen von 7zip, zip, tar, rar und andrern Archiven. + +[Section.040a] +Description = Utilidad para crear y abrir 7zip, zip, tar, rar y otros archivos comprimidos. diff --git a/base/applications/rapps/rapps/abiword.txt b/base/applications/rapps/rapps/abiword.txt index c6da039bead..bdba833d811 100644 --- a/base/applications/rapps/rapps/abiword.txt +++ b/base/applications/rapps/rapps/abiword.txt @@ -5,17 +5,17 @@ Name = AbiWord Version = 2.6.8 Licence = GPL Description = Word processor. -Size = 5.6MB +Size = 5.6MB Category = 6 URLSite = http://www.abisource.com/ URLDownload = http://www.abisource.com/downloads/abiword/2.6.8/Windows/abiword-setup-2.6.8.exe CDPath = none [Section.0407] -Description = Textverarbeitung - -[Section.0415] -Description = Edytor tekstu +Description = Textverarbeitung. [Section.040a] -Description = Procesador de texto +Description = Procesador de textos. + +[Section.0415] +Description = Edytor tekstu. diff --git a/base/applications/rapps/rapps/abyss.txt b/base/applications/rapps/rapps/abyss.txt index e84cad1d5bf..0369bf5ca89 100644 --- a/base/applications/rapps/rapps/abyss.txt +++ b/base/applications/rapps/rapps/abyss.txt @@ -1,10 +1,10 @@ -; UTF-8 +; UTF-8 [Section] Name = Abyss Web server X1 Version = 2.6 Licence = Freeware -Description = Abyss Web Server enables you to host your Web sites on your computer. It supports secure SSL/TLS connections (HTTPS) as well as a wide range of Web technologies. It can also run advanced PHP, Perl, Python, ASP, ASP.NET, and Ruby on Rails Web applications, which can be backed by databases such as MySQL, SQLite, MS SQL Server, MS Access, or Oracle +Description = Abyss Web Server enables you to host your Web sites on your computer. It supports secure SSL/TLS connections (HTTPS) as well as a wide range of Web technologies. It can also run advanced PHP, Perl, Python, ASP, ASP.NET, and Ruby on Rails Web applications, which can be backed by databases such as MySQL, SQLite, MS SQL Server, MS Access, or Oracle. Size = 0.8M Category = 5 URLSite = http://www.aprelium.com/ @@ -12,4 +12,4 @@ URLDownload = http://www.aprelium.com/data/abwsx1.exe CDPath = none [Section.0407] -Description = Abyss Web Server ermöglicht es Webseiten auf Ihrem Computer zu hosten. Er unterstützt sichere SSL/TLS Verbindungen (HTTPS) sowie eine Vielfalt an Web Technologien. Er kann ebenfalls PHP, Perl, Python, ASP, ASP.NET, und Ruby on Rails Web Anwendungen ausführen, welche von Datenbanken, wie MySQL, SQLite, MS SQL Server, MS Access, oder Oracle unterstützt werden können. +Description = Abyss Web Server ermöglicht es Webseiten auf Ihrem Computer zu hosten. Er unterstützt sichere SSL/TLS Verbindungen (HTTPS) sowie eine Vielfalt an Web Technologien. Er kann ebenfalls PHP, Perl, Python, ASP, ASP.NET, und Ruby on Rails Web Anwendungen ausführen, welche von Datenbanken, wie MySQL, SQLite, MS SQL Server, MS Access, oder Oracle unterstützt werden können. diff --git a/base/applications/rapps/rapps/ac97forvirtualbox.txt b/base/applications/rapps/rapps/ac97forvirtualbox.txt index ab01b2d0ee8..3fde45eb479 100644 --- a/base/applications/rapps/rapps/ac97forvirtualbox.txt +++ b/base/applications/rapps/rapps/ac97forvirtualbox.txt @@ -11,15 +11,26 @@ URLSite = Unknown URLDownload = http://svn.reactos.org/packages/ac97_vbox.exe CDPath = none - [Section.0407] Name = AC97 Treiber für VirtualBox Licence = Unbekannt Description = Entpacken in das "ReactOS"-Verzeichnis und ReactOS zweimal neustarten. URLSite = Unbekannt +[Section.040a] +Name = Driver AC97 para VirtualBox +Licence = Desconocida +Description = Descomprimir en la carpeta "Reactos" y reiniciar Reactos dos veces. +URLSite = Desconocida + [Section.0415] Name = Sterownik AC97 dla VirtualBox Licence = Nieznana Description = Rozpakuj zawartość w folderze "ReactOS" i dwukrotnie zrestartuj system. URLSite = Nieznana + +[Section.0419] +Name = Драйвер AC97 для VirtualBox +Licence = Не указано +Description = Разархивируйте содержимое в папку "ReactOS", затем дважды перезагрузите систему. +URLSite = Не указано diff --git a/base/applications/rapps/rapps/audiograbber.txt b/base/applications/rapps/rapps/audiograbber.txt index 69713ee3997..9640b961ae8 100644 --- a/base/applications/rapps/rapps/audiograbber.txt +++ b/base/applications/rapps/rapps/audiograbber.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Audio Grabber @@ -7,13 +7,15 @@ Licence = Freeware Description = A very good CD Ripper/Audio File Converter. Size = 1.6MB Category = 1 -URLSite = http://www.audiograbber.com-us.net/ +URLSite = http://www.audiograbber.de/ URLDownload = http://www.audiograbber.de/files/4898276276/agsetup183se.exe CDPath = none - [Section.0407] Description = Ein sehr guter CD-Ripper/Audio-Datei-Konverter. +[Section.040a] +Description = Un buen CD Ripper/ conversor de archivos de audio. + [Section.0415] -Description = Bardzo dobry CD Ripper/konwerter plików audio. +Description = Bardzo dobry CD Ripper/konwerter plików audio. diff --git a/base/applications/rapps/rapps/diablo2.txt b/base/applications/rapps/rapps/diablo2.txt index 89e3e2d8e0d..cb985244cd2 100644 --- a/base/applications/rapps/rapps/diablo2.txt +++ b/base/applications/rapps/rapps/diablo2.txt @@ -4,16 +4,18 @@ Name = Diablo II Version = 1.4 Licence = Shareware -Description = Diablo 2 Shareware. zeckensack's glide wrapper is req. to run it. +Description = Diablo 2 Shareware. zeckensack's glide wrapper is required to run it. Size = 132MB Category = 4 -URLSite = http://www.blizzard.com/diablo2 -URLDownload = http://ftp.freenet.de./pub/filepilot/windows/spiele/diabloiidemo.exe +URLSite = http://www.blizzard.com/diablo2/ +URLDownload = http://ftp.freenet.de/pub/filepilot/windows/spiele/diabloiidemo.exe CDPath = none - [Section.0407] Description = Diablo 2 Shareware. zeckensacks glide wrapper wird zum Ausführen benötigt. +[Section.040a] +Description = Diablo 2 Shareware. zeckensack's glide wrapper es necesario para su ejecución. + [Section.0415] Description = Diablo 2 Shareware. Do poprawnego działania wymagany jest zainstalowany zeckensacks glide wrapper. diff --git a/base/applications/rapps/rapps/dosblaster.txt b/base/applications/rapps/rapps/dosblaster.txt new file mode 100644 index 00000000000..8a8f478f874 --- /dev/null +++ b/base/applications/rapps/rapps/dosblaster.txt @@ -0,0 +1,18 @@ +; UTF-8 + +[Section] +Name = DosBlaster +Version = 2.5 +Licence = GPL +Description = DosBlaster is a Shell extension which makes it possible to open any DOS executabe in DOSBox via right click. This version contains DOSBox 0.70, but can be simply updated by installing a newer DOSBox into the DosBlaster folders. +Size = 2.1MB +Category = 15 +URLSite = http://dosblaster.sourceforge.net/ +URLDownload = http://surfnet.dl.sourceforge.net/project/dosblaster/DosBlaster%202.5%20%28x86%29/Downloads/DosbasterSetup_2_5.exe +CDPath = none + +[Section.0407] +Description = DosBlaster ist eine Shell Extension, die es ermöglicht jede DOS Anwendung via Rechtsklick in DOSBox zu öffnen. Diese Version beinhaltet DOSBox 0.70, kann aber sehr einfach aktualisiert werden, indem man ein neueres DOSBox in die DosBlaster Ordner installiert. + +[Section.040a] +Description = DosBlaster en una extensión Shell que permite abrir cualquier ejecutable DOS en DOSBox desde el botón derecho del ratón. Esta versión contiene DOSBox 0.70, pero puede ser actualizado facilmente instalando una nueva versión de DOSBox en la carpeta de DosBlaster. diff --git a/base/applications/rapps/rapps/dosbox.txt b/base/applications/rapps/rapps/dosbox.txt index 504989e93e7..783779deeed 100644 --- a/base/applications/rapps/rapps/dosbox.txt +++ b/base/applications/rapps/rapps/dosbox.txt @@ -7,13 +7,15 @@ Licence = GPL Description = DOSBox is a DOS emulator. Size = 1.4MB Category = 15 -URLSite = http://www.dosbox.com +URLSite = http://www.dosbox.com/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/dosbox/DOSBox0.73-win32-installer.exe CDPath = none - [Section.0407] Description = DOSBox ist ein DOS Emulator. +[Section.040a] +Description = DOSBox es un emulador de DOS. + [Section.0415] Description = DOSBox - emulator DOSa. diff --git a/base/applications/rapps/rapps/firefox2.txt b/base/applications/rapps/rapps/firefox2.txt index 08ecb5136c6..0c6379485c7 100644 --- a/base/applications/rapps/rapps/firefox2.txt +++ b/base/applications/rapps/rapps/firefox2.txt @@ -8,30 +8,35 @@ Description = The most popular and one of the best free Web Browsers out there. Size = 5.8M Category = 5 URLSite = http://www.mozilla.com/en-US/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/2.0.0.20/win32/en-US/Firefox%20Setup%202.0.0.20.exe +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/en-US/Firefox%20Setup%202.0.0.20.exe CDPath = none -[Section.0419] -Description = Один из самых популярных и лучших бесплатных браузеров. -Size = 6.4M -URLSite = http://www.mozilla-europe.org/ru/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/2.0.0.20/win32/ru/Firefox%20Setup%202.0.0.20.exe - - [Section.0407] Description = Der populärste und einer der besten freien Webbrowser. Size = 5.5M URLSite = http://www.mozilla-europe.org/de/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/2.0.0.20/win32/de/Firefox%20Setup%202.0.0.20.exe +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/de/Firefox%20Setup%202.0.0.20.exe -[Section.0405] -Description = Mest populære og best ogsÃ¥ gratis nettleserene der ute. +[Section.040a] +Description = El más popular y uno de los mejores navegadores web gratuitos que hay. +Size = 5.6M +URLSite = http://www.mozilla-europe.org/es/ +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/es-ES/Firefox%20Setup%202.0.0.20.exe + +[Section.0414] +Description = Mest populære og best ogsÃ¥ gratis nettleserene der ute. Size = 5.6M URLSite = http://www.mozilla-europe.org/no/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/2.0.0.20/win32/nb-NO/Firefox%20Setup%202.0.0.20.exe +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/nb-NO/Firefox%20Setup%202.0.0.20.exe [Section.0415] Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych. Size = 6.3M URLSite = http://www.mozilla-europe.org/pl/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/2.0.0.20/win32/pl/Firefox%20Setup%202.0.0.20.exe +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/pl/Firefox%20Setup%202.0.0.20.exe + +[Section.0419] +Description = Один из самых популярных и лучших бесплатных браузеров. +Size = 6.4M +URLSite = http://www.mozilla-europe.org/ru/ +URLDownload = http://mozilla.mirrors.easynews.com/mozilla/firefox/releases/2.0.0.20/win32/ru/Firefox%20Setup%202.0.0.20.exe diff --git a/base/applications/rapps/rapps/firefox3.txt b/base/applications/rapps/rapps/firefox3.txt index a59c07c038b..d4d2272179a 100644 --- a/base/applications/rapps/rapps/firefox3.txt +++ b/base/applications/rapps/rapps/firefox3.txt @@ -2,36 +2,41 @@ [Section] Name = Mozilla Firefox 3.0 -Version = 3.0.15 +Version = 3.0.17 Licence = MPL/GPL/LGPL Description = The most popular and one of the best free Web Browsers out there. Size = 7.1M Category = 5 URLSite = http://www.mozilla.com/en-US/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.15/win32/en-US/Firefox%20Setup%203.0.15.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/en-US/Firefox%20Setup%203.0.17.exe CDPath = none -[Section.0419] -Description = Один из самых популярных и лучших бесплатных браузеров. -Size = 7.4M -URLSite = http://www.mozilla-europe.org/ru/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.15/win32/ru/Firefox%20Setup%203.0.15.exe - - [Section.0407] Description = Der populärste und einer der besten freien Webbrowser. Size = 6.9M URLSite = http://www.mozilla-europe.org/de/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.15/win32/de/Firefox%20Setup%203.0.15.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/de/Firefox%20Setup%203.0.17.exe -[Section.0405] -Description = Mest populære og best ogsÃ¥ gratis nettleserene der ute. +[Section.040a] +Description = El más popular y uno de los mejores navegadores web gratuitos que hay. +Size = 7.0M +URLSite = http://www.mozilla-europe.org/es/ +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/es-ES/Firefox%20Setup%203.0.17.exe + +[Section.0414] +Description = Mest populære og best ogsÃ¥ gratis nettleserene der ute. Size = 6.9M URLSite = http://www.mozilla-europe.org/no/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.15/win32/nb-NO/Firefox%20Setup%203.0.15.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/nb-NO/Firefox%20Setup%203.0.17.exe [Section.0415] Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych. Size = 7.8M URLSite = http://www.mozilla-europe.org/pl/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.15/win32/pl/Firefox%20Setup%203.0.15.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/pl/Firefox%20Setup%203.0.17.exe + +[Section.0419] +Description = Один из самых популярных и лучших бесплатных браузеров. +Size = 7.4M +URLSite = http://www.mozilla-europe.org/ru/ +URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest-3.0/win32/ru/Firefox%20Setup%203.0.17.exe diff --git a/base/applications/rapps/rapps/freebasic.txt b/base/applications/rapps/rapps/freebasic.txt index 11c12b41550..fdd00f996a7 100644 --- a/base/applications/rapps/rapps/freebasic.txt +++ b/base/applications/rapps/rapps/freebasic.txt @@ -11,9 +11,11 @@ URLSite = http://www.freebasic.net/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/fbc/FreeBASIC-v0.20.0b-win32.exe CDPath = none - [Section.0407] -Description = Open Source BASIC Compiler. Die BASIC Syntax ist kompatibel zu QBASIC. +Description = Open Source BASIC Compiler. Die BASIC Syntax ist kompatibel zu QBASIC. + +[Section.040a] +Description = Compilador BASIC de código abierto. El lenguaje BASIC es compatible con QBASIC. [Section.0415] -Description = Otwarty kompilator BASIC, ze składnią kompatybilną z QBASIC. +Description = Otwarty kompilator BASIC, ze składnią kompatybilną z QBASIC. diff --git a/base/applications/rapps/rapps/glidewrapzbag.txt b/base/applications/rapps/rapps/glidewrapzbag.txt index 80dc8790b2a..d474471c2ce 100644 --- a/base/applications/rapps/rapps/glidewrapzbag.txt +++ b/base/applications/rapps/rapps/glidewrapzbag.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = GlidewrapZbag @@ -14,5 +14,8 @@ CDPath = none [Section.0407] Description = glidewrapper ist erforderlich um Diablo2 in ReactOS auszuführen. +[Section.040a] +Description = glidewrapper es necesario para ejecutar Diablo 2 en ReactOS. + [Section.0415] Description = glidewrapper jest potrzebny do uruchomienia Diablo2 w ReactOS-ie. diff --git a/base/applications/rapps/rapps/irfanview.txt b/base/applications/rapps/rapps/irfanview.txt index ae64396c052..9f1d5743f68 100644 --- a/base/applications/rapps/rapps/irfanview.txt +++ b/base/applications/rapps/rapps/irfanview.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = IrfanView @@ -7,16 +7,18 @@ Licence = Freeware (for personal use) Description = Viewer for all kinds of graphics/audio files/video files. Size = 1.3MB Category = 3 -URLSite = http://www.irfanview.com +URLSite = http://www.irfanview.com/ URLDownload = http://irfanview.tuwien.ac.at/iview425_setup.exe CDPath = none - [Section.0407] Licence = Freeware für nichtkommerzielle Nutzung Description = Anzeigeprogramm für alle Arten von Grafik-/Audio- oder Video-Dateien. +[Section.040a] +Licence = Gratuito (para uso personal) +Description = Visor para toda clase de archivos de imagen,audio y video. + [Section.0415] Licence = Freeware (dla użytku domowego) Description = Przeglądarka dla bardzo wielu typów obrazów, plików audio oraz wideo. - diff --git a/base/applications/rapps/rapps/irfanviewplugins.txt b/base/applications/rapps/rapps/irfanviewplugins.txt index 8a7c7e99bc1..9d36ab8faa8 100644 --- a/base/applications/rapps/rapps/irfanviewplugins.txt +++ b/base/applications/rapps/rapps/irfanviewplugins.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = IrfanView Plugins @@ -7,15 +7,18 @@ Licence = Freeware (for personal use) Description = Additional Plugins for supporting more file types. Size = 7.7MB Category = 3 -URLSite = http://www.irfanview.com +URLSite = http://www.irfanview.com/ URLDownload = http://irfanview.tuwien.ac.at/plugins/irfanview_plugins_425_setup.exe CDPath = none - [Section.0407] Licence = Freeware für nichtkommerzielle Nutzung Description = Zusätzlich Plugins zur Unterstützung von weiteren Dateitypen. -[Section.0407] +[Section.040a] +Licence = Gratuito (para uso personal) +Description = Complementos adicionales para soportar más formatos. + +[Section.0415] Licence = Freeware (dla użytku domowego) Description = Wtyczki otwierające dodatkowe typy plików w Irfanview. diff --git a/base/applications/rapps/rapps/lbreakout2.txt b/base/applications/rapps/rapps/lbreakout2.txt index fe755f385e8..403a3f9913a 100644 --- a/base/applications/rapps/rapps/lbreakout2.txt +++ b/base/applications/rapps/rapps/lbreakout2.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = LBreakout2 @@ -11,9 +11,11 @@ URLSite = http://lgames.sourceforge.net/index.php?project=LBreakout2 URLDownload = http://ovh.dl.sourceforge.net/sourceforge/lgames/lbreakout2-2.4.1-win32.exe CDPath = none - [Section.0407] Description = Breakout-Klon verwendet SDL Bibliothek. +[Section.040a] +Description = Clon de Breakout usando las librerias SDL. + [Section.0415] -Description = Klon Breakouta/Arkanoida napisany przy u¿yciu biblioteki SDL. +Description = Klon Breakouta/Arkanoida napisany przy użyciu biblioteki SDL. diff --git a/base/applications/rapps/rapps/lgeneral.txt b/base/applications/rapps/rapps/lgeneral.txt index d5d09977397..48bda818632 100644 --- a/base/applications/rapps/rapps/lgeneral.txt +++ b/base/applications/rapps/rapps/lgeneral.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = LGeneral @@ -14,5 +14,8 @@ CDPath = none [Section.0407] Description = Panzer-General-Klon verwendet SDL Bibliotheken. +[Section.040a] +Description = Clon de Panzer General usando las librerias SDL. + [Section.0415] -Description = Klon gry Panzer General napisany przy u¿yciu biblioteki SDL. \ No newline at end of file +Description = Klon gry Panzer General napisany przy użyciu biblioteki SDL. diff --git a/base/applications/rapps/rapps/lmarbles.txt b/base/applications/rapps/rapps/lmarbles.txt index 583c24fe354..45a5fb5f770 100644 --- a/base/applications/rapps/rapps/lmarbles.txt +++ b/base/applications/rapps/rapps/lmarbles.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = LMarbles @@ -11,9 +11,11 @@ URLSite = http://lgames.sourceforge.net/index.php?project=LMarbles URLDownload = http://ovh.dl.sourceforge.net/sourceforge/lgames/lmarbles-1.0.6-win32.exe CDPath = none - [Section.0407] Description = Atomix-Klon verwendet SDL Bibliotheken. +[Section.040a] +Description = Clon de Atomix usando las librerias SDL. + [Section.0415] -Description = Klon gry Atomix, u¿ywaj¹cy biblioteki SDL. +Description = Klon gry Atomix, używający biblioteki SDL. diff --git a/base/applications/rapps/rapps/mfc40.txt b/base/applications/rapps/rapps/mfc40.txt index ac094f3f216..f361ccf1532 100644 --- a/base/applications/rapps/rapps/mfc40.txt +++ b/base/applications/rapps/rapps/mfc40.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = OLE Viewer and Microsoft Foundation Classes version 4 @@ -7,16 +7,20 @@ Licence = Unknown Description = MFC 4 is needed by some applications. Size = 865kB Category = 14 -URLSite = http://support.microsoft.com/kb/122244 +URLSite = http://support.microsoft.com/kb/122244/ URLDownload = http://download.microsoft.com/download/ole/ole2v/3.5/w351/en-us/ole2v.exe CDPath = none - [Section.0407] Name = OLE Anzeige und Microsoft Foundation Classes Version 4 Licence = Unbekannt Description = MFC 4 wird von einigen Anwendungen benötigt. +[Section.040a] +Name = Visor OLE y Microsoft Foundation Classes Version 4 +Licence = Desconocida +Description = MFC 4 es necesario para varias aplicaciones. + [Section.0415] Name = Przeglądarka OLE oraz MFC (Microsoft Foundation Classes) wersja 4 Licence = Nieznana diff --git a/base/applications/rapps/rapps/mingw.txt b/base/applications/rapps/rapps/mingw.txt index 109c99bc61d..89a70b229fe 100644 --- a/base/applications/rapps/rapps/mingw.txt +++ b/base/applications/rapps/rapps/mingw.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = MinGW @@ -11,9 +11,11 @@ URLSite = http://mingw.org/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.6.exe CDPath = none - [Section.0407] Description = Eine Portierung der GNU Werkzeugkette mit GCC, GDB, GNU make usw. +[Section.040a] +Description = Es una cadena de herramientas GNU con GCC, GDB, GNU make, etc. + [Section.0415] -Description = Kompilator GCC dla platformy Windows wraz z dodatkowymi narzêdziami (GDB, make, itd.). +Description = Kompilator GCC dla platformy Windows wraz z dodatkowymi narzędziami (GDB, make, itd.). diff --git a/base/applications/rapps/rapps/mirandaim.txt b/base/applications/rapps/rapps/mirandaim.txt index cfa1f1b164c..a447fcecab9 100644 --- a/base/applications/rapps/rapps/mirandaim.txt +++ b/base/applications/rapps/rapps/mirandaim.txt @@ -2,18 +2,20 @@ [Section] Name = Miranda IM -Version = 0.8.10 +Version = 0.8.12 Licence = GPL Description = Open source multiprotocol instant messaging application - May not work completely. Size = 1.6MB Category = 5 URLSite = http://www.miranda-im.org/ -URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.8.10-unicode.exe +URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.8.12-unicode.exe CDPath = none - [Section.0407] Description = Open source Multiprotocol Instant Messaging Anwendung - funktioniert möglicherweise nicht vollständig. +[Section.040a] +Description = Aplicación de mensajería instantánea multiprotocolo de código abierto - Puede no funcionar en su totalidad. + [Section.0415] Description = Otwarty komunikator internetowy, obsługujący wiele różnych protokołów (m.in. GG, Tlen, Jabber, ICQ, IRC) - może nie działać prawidłowo. diff --git a/base/applications/rapps/rapps/mirc.txt b/base/applications/rapps/rapps/mirc.txt index 1d6f6ce4745..2290ea2c59e 100644 --- a/base/applications/rapps/rapps/mirc.txt +++ b/base/applications/rapps/rapps/mirc.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = mIRC @@ -7,13 +7,15 @@ Licence = Shareware Description = The most popular client for the Internet Relay Chat (IRC). Size = 1.66M Category = 5 -URLSite = http://www.mirc.com +URLSite = http://www.mirc.com/ URLDownload = http://mirc.bigchief.dk/mirc635.exe CDPath = none - [Section.0407] Description = Der populärste Client für Internet Relay Chat (IRC). +[Section.040a] +Description = El más popular cliente para Internet Relay Chat (IRC). + [Section.0415] Description = Najpopularniejszy klient IRC (Internet Relay Chat). diff --git a/base/applications/rapps/rapps/msxml3.txt b/base/applications/rapps/rapps/msxml3.txt index ff7dd8a1e10..2a5360fa4ff 100644 --- a/base/applications/rapps/rapps/msxml3.txt +++ b/base/applications/rapps/rapps/msxml3.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Microsoft XML 3 @@ -11,11 +11,14 @@ URLSite = http://www.microsoft.com/downloads/details.aspx?FamilyID=28494391-052B URLDownload = http://download.microsoft.com/download/8/8/8/888f34b7-4f54-4f06-8dac-fa29b19f33dd/msxml3.msi CDPath = none - [Section.0407] Licence = Unbekannt Description = MSXML3 wird von einige MSI Installern benötigt. +[Section.040a] +Licence = Desconocida +Description = MSXML3 para varios instaladores MSI. + [Section.0415] Licence = Nieznana Description = Niektóre spośród plików instalacyjnych MSI potrzebują parsera MSXML3. diff --git a/base/applications/rapps/rapps/offbyone.txt b/base/applications/rapps/rapps/offbyone.txt index 7ced41d965d..3ded431ded0 100644 --- a/base/applications/rapps/rapps/offbyone.txt +++ b/base/applications/rapps/rapps/offbyone.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Off By One Browser @@ -7,13 +7,15 @@ Licence = Freeware Description = The Off By One Browser is a very small and fast web browser with full HTML 3.2 support. Size = 0.98M Category = 5 -URLSite = http://offbyone.com +URLSite = http://offbyone.com/ URLDownload = http://offbyone.com/offbyone/images/OffByOneSetup.exe CDPath = none - [Section.0407] Description = Der Off-By-One-Browser ist ein sehr kleiner und schneller Webbrowser mit voller HTML 3.2 Unterstützung. +[Section.040a] +Description = Es un pequeño y rápido navegador web con completo soporte HTML 3.2. + [Section.0415] Description = Bardzo mała i szybka przeglądarka internetowa z pełną obsługą HTML 3.2. diff --git a/base/applications/rapps/rapps/openoffice2.4.txt b/base/applications/rapps/rapps/openoffice2.4.txt index 6d9f8e9249a..81cae28edf9 100644 --- a/base/applications/rapps/rapps/openoffice2.4.txt +++ b/base/applications/rapps/rapps/openoffice2.4.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = OpenOffice 2.4 @@ -7,19 +7,24 @@ Licence = LGPL Description = THE Open Source Office Suite. Size = 127MB Category = 6 -URLSite = http://www.openoffice.org +URLSite = http://www.openoffice.org/ URLDownload = http://ftp.plusline.de/OpenOffice/stable/2.4.3/OOo_2.4.3_Win32Intel_install_en-US.exe CDPath = none - [Section.0407] -Description = DIE Open Source Office Suite -URLSite = http://de.openoffice.org +Description = DIE Open Source Office Suite. +URLSite = http://de.openoffice.org/ Size = 114.2MB URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/de/2.4.3/OOo_2.4.3_Win32Intel_install_de.exe +[Section.040a] +Description = La suite de ofimática de código abierto. +URLSite = http://es.openoffice.org/ +Size = 113.9MB +URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/es/2.4.3/OOo_2.4.3_Win32Intel_install_es.exe + [Section.0415] URLSite = http://pl.openoffice.org/ -Description = Otwarty pakiet biurowy -URLDownload = http://www.mirrorservice.org/sites/download.openoffice.org/localized/pl/2.4.2/OOo_2.4.2_Win32Intel_install_wJRE_pl.exe -Size = 128.0M \ No newline at end of file +Description = Otwarty pakiet biurowy. +URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/pl/2.4.2/OOo_2.4.2_Win32Intel_install_pl.exe +Size = 113.9M diff --git a/base/applications/rapps/rapps/openoffice3.0.txt b/base/applications/rapps/rapps/openoffice3.0.txt index 90227685b1a..ebfc63ede1c 100644 --- a/base/applications/rapps/rapps/openoffice3.0.txt +++ b/base/applications/rapps/rapps/openoffice3.0.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = OpenOffice 3.0 @@ -7,20 +7,25 @@ Licence = LGPL Description = THE Open Source Office Suite. Size = 134.3MB Category = 6 -URLSite = http://www.openoffice.org +URLSite = http://www.openoffice.org/ URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/stable/3.1.1/OOo_3.1.1_Win32Intel_install_en-US.exe CDPath = none - [Section.0407] -Description = DIE Open Source Office Suite -URLSite = http://de.openoffice.org -Size = 156.8MB -Version = 3.1.1 -URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/de/3.1.1/OOo_3.1.1_Win32Intel_install_wJRE_de.exe +Description = DIE Open Source Office Suite. +URLSite = http://de.openoffice.org/ +Size = 142.9MB +URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/de/3.1.1/OOo_3.1.1_Win32Intel_install_de.exe + +[Section.040a] +Description = La suite de ofimática de código abierto. +URLSite = http://es.openoffice.org/ +Version = 3.1.0 +Size = 130.0MB +URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/es/3.1.0/OOo_3.1.0_Win32Intel_install_es.exe [Section.0415] -Description = Otwarty pakiet biurowy -URLSite = http://pl.openoffice.org +Description = Otwarty pakiet biurowy. +URLSite = http://pl.openoffice.org/ Size = 147.1MB URLDownload = http://ftp.tu-chemnitz.de/pub/openoffice/localized/pl/3.1.1/OOo_3.1.1_Win32Intel_install_pl.exe diff --git a/base/applications/rapps/rapps/openttd.txt b/base/applications/rapps/rapps/openttd.txt index bfb2cffea78..6220e8ada93 100644 --- a/base/applications/rapps/rapps/openttd.txt +++ b/base/applications/rapps/rapps/openttd.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = OpenTTD @@ -7,13 +7,15 @@ Licence = GPL v2 Description = Open Source clone of the "Transport Tycoon Deluxe" game engine. You need a copy of Transport Tycoon. Size = 2.9MB Category = 4 -URLSite = http://www.openttd.org +URLSite = http://www.openttd.org/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/openttd/openttd-0.7.3-windows-win32.exe CDPath = none - [Section.0407] Description = Open Source Klon der "Transport Tycoon Deluxe" Spiel-Engine. Sie benötigen eine Kopie von Transport Tycoon. +[Section.040a] +Description = Clon del motor de juegos "Transport Tycoon Deluxe" de código abierto. Es necesaria una copia de Transport Tycoon. + [Section.0415] Description = Otwarty klon silnika gry "Transport Tycoon Deluxe". Do poprawnego działania potrzebna jest kopia gry Transport Tycoon. diff --git a/base/applications/rapps/rapps/opera.txt b/base/applications/rapps/rapps/opera.txt index 3590f668f52..148e79bc9e4 100644 --- a/base/applications/rapps/rapps/opera.txt +++ b/base/applications/rapps/rapps/opera.txt @@ -11,11 +11,14 @@ URLSite = http://www.opera.com/ URLDownload = http://ftp.opera.com/pub/opera/win/1010/int/Opera_1010_in_Setup.exe CDPath = none -[Section.0419] -Description = Популярный браузер со многими дополнительными возможностями, включающий почтовый и BitTorrent клиент. - [Section.0407] Description = Der populäre Opera Browser mit vielen fortschrittlichen Eigenschaften, enthält einen Mail und BitTorrent Client. +[Section.040a] +Description = Popular navegador web con muchas características avanzadas e incluye un cliente de correo y BitTorrent. + [Section.0415] Description = Popularna przeglądarka internetowa z wieloma zaawansowanymi funkcjami, zawierająca klientów: poczty oraz BitTorrent. + +[Section.0419] +Description = Популярный браузер со многими дополнительными возможностями, включающий клиентов почты и BitTorrent. diff --git a/base/applications/rapps/rapps/putty.txt b/base/applications/rapps/rapps/putty.txt index c250ef60727..5566db28e65 100644 --- a/base/applications/rapps/rapps/putty.txt +++ b/base/applications/rapps/rapps/putty.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = PuTTY @@ -11,9 +11,11 @@ URLSite = http://www.chiark.greenend.org.uk/~sgtatham/putty/ URLDownload = http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.60-installer.exe CDPath = none - [Section.0407] -Description = Ein freier SSH-, Telnet-, rlogin- und TCP-Client +Description = Ein freier SSH-, Telnet-, rlogin- und TCP-Client. + +[Section.040a] +Description = Un ciente SSH, Telnet, rlogin y TCP gratuito. [Section.0415] -Description = Darmowy klient obs³uguj¹cy protoko³y SSH, Telnet, rlogin oraz bezpoœrednie TCP. \ No newline at end of file +Description = Darmowy klient obsługujący protokoły SSH, Telnet, rlogin oraz bezpośrednie TCP. diff --git a/base/applications/rapps/rapps/remood.txt b/base/applications/rapps/rapps/remood.txt new file mode 100644 index 00000000000..2f16295b78c --- /dev/null +++ b/base/applications/rapps/rapps/remood.txt @@ -0,0 +1,15 @@ +; UTF-8 + +[Section] +Name = ReMooD +Version = 0.8a +Licence = GPL +Description = ReMooD is a source port of Doom Legacy. It aims to provide the classic Legacy Experience with new features and more stability. This supports Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x and higher; and Linux (x86 and x86_64). +Size = 1.2M +Category = 4 +URLSite = http://remood.sourceforge.net/ +URLDownload = http://ovh.dl.sourceforge.net/sourceforge/remood/remoodsetup-win32_08a.exe +CDPath = none + +[Section.0407] +Description = ReMooD ist ein Port des Doom Legacy Sources. Es versucht das klassische Legacy Erfahrung zusammen mit neuen Features und mehr Stabilität zu bieten. Unterstützt werden Windows 98/98SE/ME/NT/2000/XP/2003/ Vista/2008/7/XP 64-bit/2003 64-bit/Vista 64-bit/2008 64-bit/7 64-bit; ReactOS 0.3.x und höher; und Linux (x86 und x86_64). diff --git a/base/applications/rapps/rapps/rosbe.txt b/base/applications/rapps/rapps/rosbe.txt index 8acd7567393..843f75df7e6 100644 --- a/base/applications/rapps/rapps/rosbe.txt +++ b/base/applications/rapps/rapps/rosbe.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = ReactOS Build Environment @@ -7,13 +7,15 @@ Licence = GPL Description = Allows you to build the ReactOS Source. For more instructions see ReactOS wiki. Size = 14.9MB Category = 7 -URLSite = http://reactos.org/wiki/Build_Environment +URLSite = http://reactos.org/wiki/Build_Environment/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/reactos/RosBE-1.4.5.exe CDPath = none - [Section.0407] Description = Erlaubt es Ihnen ReactOS aus den Quellen zu bauen. Im ReactOS-Wiki finden Sie dazu nähere Anweisungen. +[Section.040a] +Description = Te permite compilar el código de ReactOS. Para más instrucciones consulta la wiki de ReactOS. + [Section.0415] -Description = Pozwala zbudować obraz płyty ReactOS ze źródeł. Więcej informacji na Wiki ReactOS. \ No newline at end of file +Description = Pozwala zbudować obraz płyty ReactOS ze źródeł. Więcej informacji na Wiki ReactOS. diff --git a/base/applications/rapps/rapps/sambatng.txt b/base/applications/rapps/rapps/sambatng.txt index af61bcae3c5..4377863c7ac 100644 --- a/base/applications/rapps/rapps/sambatng.txt +++ b/base/applications/rapps/rapps/sambatng.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Samba TNG @@ -7,13 +7,15 @@ Licence = GPL Description = This tool allows you to access your Windows shared folders/printers with ReactOS. Size = 1MB Category = 5 -URLSite = http://samba-tng.org +URLSite = http://samba-tng.org/ URLDownload = http://svn.reactos.org/packages/samba-tng.exe CDPath = none - [Section.0407] Description = Dieses Werkzeug erlaubt den Zugriff auf Windows' gemeinsame Verzeichnisse und Drucker aus ReactOS heraus. +[Section.040a] +Description = Esta utilidad le permite acceder a sus carpetas e impresoras compartidas en Windows con ReactOS. + [Section.0415] -Description = Narzêdzie pozwalaj¹ce na dostêp z poziomu ReactOSa do wspó³dzielonych folderów/drukarek Windows. \ No newline at end of file +Description = Narzędzie pozwalające na dostęp z poziomu ReactOSa do współdzielonych folderów/drukarek Windows. diff --git a/base/applications/rapps/rapps/scite.txt b/base/applications/rapps/rapps/scite.txt index 682e95fe9e7..0ec430fe396 100644 --- a/base/applications/rapps/rapps/scite.txt +++ b/base/applications/rapps/rapps/scite.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = SciTE @@ -12,4 +12,7 @@ URLDownload = http://fastbull.dl.sourceforge.net/sourceforge/scintilla/Sc201.exe CDPath = none [Section.0407] -Description = SciTE ist ein SCIntilla basierter Text Editor. Ursprünglich wurde er erstellt, um Scintilla vorzuführen, wuchs aber zu einem nützlichen Editor mit der Fähigkeit Programme zu erstellen und auszuführen. +Description = SciTE ist ein SCIntilla basierter Text Editor. Ursprünglich wurde er erstellt, um Scintilla vorzuführen, wuchs aber zu einem nützlichen Editor mit der Fähigkeit Programme zu erstellen und auszuführen. + +[Section.040a] +Description = Editor de texto basado en SCIntilla. Originalmente creado para demostrar Scintilla, a crecido para ser un gran editor con capacidad para crear y ejecutar programas. diff --git a/base/applications/rapps/rapps/scummvm.txt b/base/applications/rapps/rapps/scummvm.txt index 8c201eae424..6365b1c1b63 100644 --- a/base/applications/rapps/rapps/scummvm.txt +++ b/base/applications/rapps/rapps/scummvm.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = ScummVM @@ -11,9 +11,11 @@ URLSite = http://scummvm.org/ URLDownload = http://dfn.dl.sourceforge.net/project/scummvm/scummvm/1.0.0/scummvm-1.0.0-win32.exe CDPath = none - [Section.0407] -Description = Sam and Max, Day of the Tentacle usw in ReactOS +Description = Sam and Max, Day of the Tentacle usw in ReactOS. + +[Section.040a] +Description = Sam and Max, Day of the Tentacle en ReactOS. [Section.0415] -Description = Program pozwalaj¹cy uruchomiæ stare gry przygodowe (Sam and Max, Day of the Tentacle, Monkey Island) w ReactOS +Description = Program pozwalający uruchomić stare gry przygodowe (Sam and Max, Day of the Tentacle, Monkey Island) w ReactOS. diff --git a/base/applications/rapps/rapps/sdl_mixer.txt b/base/applications/rapps/rapps/sdl_mixer.txt index eaa3c51ec24..c9ebfce2c04 100644 --- a/base/applications/rapps/rapps/sdl_mixer.txt +++ b/base/applications/rapps/rapps/sdl_mixer.txt @@ -11,9 +11,11 @@ URLSite = http://www.libsdl.org/projects/SDL_mixer/ URLDownload = http://www.libsdl.org/projects/SDL_mixer/release/SDL_mixer-1.2.11-win32.zip CDPath = none - [Section.0407] Description = Erforderlich um einige Open Source Spiele auszuführen. Sie brauchen 7-Zip oder einen ähnlichen Entpacker um es zu entpacken. +[Section.040a] +Description = Necesario para ejecutar varios juegos de código abierto. Necesita 7-Zip o una utilidad similar para extraerlo. + [Section.0415] Description = Biblioteka wymagana przez niektóre gry (zwłaszcza te o otwartym źródle). Do jej rozpakowania potrzebny jest 7-Zip lub podobny program. diff --git a/base/applications/rapps/rapps/sdl_runtime.txt b/base/applications/rapps/rapps/sdl_runtime.txt index dc18114b1a2..919746363ec 100644 --- a/base/applications/rapps/rapps/sdl_runtime.txt +++ b/base/applications/rapps/rapps/sdl_runtime.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Simple Direct Media Layer (SDL) Runtime @@ -15,6 +15,10 @@ CDPath = none Name = Simple Direct Media Layer (SDL) Laufzeitsystem Description = Erforderlich um einige Open Source Spiele auszuführen. Sie brauchen 7-Zip oder einen ähnlichen Entpacker um es zu entpacken. +[Section.040a] +Name = Libería Simple Direct Media Layer (SDL) +Description = Necesario para ejecutar varios juegos de código abierto. Necesita 7-Zip o una utilidad similar para extraerlo. + [Section.0415] Name = Biblioteka uruchomieniowa Simple Direct Media Layer (SDL) -Description = Wymagana przez wiele gier (głównie o otwartym źródle). Do jej rozpakowania potrzebny jest program 7-Zip lub podobny. \ No newline at end of file +Description = Wymagana przez wiele gier (głównie o otwartym źródle). Do jej rozpakowania potrzebny jest program 7-Zip lub podobny. diff --git a/base/applications/rapps/rapps/seamonkey.txt b/base/applications/rapps/rapps/seamonkey.txt index c79f31f3b7c..69a43d51e90 100644 --- a/base/applications/rapps/rapps/seamonkey.txt +++ b/base/applications/rapps/rapps/seamonkey.txt @@ -2,26 +2,31 @@ [Section] Name = Mozilla SeaMonkey -Version = 2.0 +Version = 2.0.2 Licence = MPL/GPL/LGPL Description = Mozilla Suite is alive. This is the one and only Browser, Mail, Chat, and Composer bundle you will ever need. -Size = 10.0MB +Size = 10.1MB Category = 5 URLSite = http://www.seamonkey-project.org/ -URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0/win32/en-US/SeaMonkey%20Setup%202.0.exe +URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0.2/win32/en-US/SeaMonkey%20Setup%202.0.2.exe CDPath = none -[Section.0419] -Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор. -Size = 10.4MB -URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0/win32/ru/SeaMonkey%20Setup%202.0.exe - [Section.0407] Description = Mozilla Suite lebt. Dies ist das einzige Browser-, Mail-, Chat- and Composerwerkzeug-Bundle welches Sie benötigen. Size = 10.0MB -URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0/win32/de/SeaMonkey%20Setup%202.0.exe +URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0.2/win32/de/SeaMonkey%20Setup%202.0.2.exe + +[Section.040a] +Description = La suite de Mozilla está viva. Es el primero y único navegador web, gestor de correo, lector de noticias, Chat y editor HTML que necesitarás. +Size = 10.0MB +URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0.2/win32/es-ES/SeaMonkey%20Setup%202.0.2.exe [Section.0415] Description = Pakiet Mozilla żyje. W zestawie: przeglądarka, klient poczty, IRC oraz Edytor HTML - wszystko, czego potrzebujesz. Size = 10.8MB -URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0/win32/pl/SeaMonkey%20Setup%202.0.exe +URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0.2/win32/pl/SeaMonkey%20Setup%202.0.2.exe + +[Section.0419] +Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор. +Size = 10.4MB +URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.0.2/win32/ru/SeaMonkey%20Setup%202.0.2.exe diff --git a/base/applications/rapps/rapps/smplayer.txt b/base/applications/rapps/rapps/smplayer.txt index 3cc1b173474..b3071703a1e 100644 --- a/base/applications/rapps/rapps/smplayer.txt +++ b/base/applications/rapps/rapps/smplayer.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = SMPlayer @@ -11,10 +11,13 @@ URLSite = http://smplayer.sourceforge.net/ URLDownload = http://downloads.sourceforge.net/project/smplayer/SMPlayer/0.6.8/smplayer-0.6.8-win32.exe CDPath = none - [Section.0407] URLSite = http://smplayer.sourceforge.net/index.php?tr_lang=de +[Section.040a] +URLSite = http://smplayer.sourceforge.net/index.php?tr_lang=es +Description = Interfaz gráfico para Mplayer (reproductor multimedia). + [Section.0415] URLSite = http://smplayer.sourceforge.net/index.php?tr_lang=pl -Description = Graficzna nak³adka na MPlayer, otwarty odtwarzacz filmów. +Description = Graficzna nakładka na MPlayer, otwarty odtwarzacz filmów. diff --git a/base/applications/rapps/rapps/thunderbird.txt b/base/applications/rapps/rapps/thunderbird.txt index 4f4be60d120..fa47d4bc1bc 100644 --- a/base/applications/rapps/rapps/thunderbird.txt +++ b/base/applications/rapps/rapps/thunderbird.txt @@ -1,30 +1,36 @@ ; UTF-8 [Section] -Name = Mozilla Thunderbird 2.0 -Version = 2.0.0.23 +Name = Mozilla Thunderbird +Version = 3.0 Licence = MPL/GPL/LGPL Description = The most popular and one of the best free Mail Clients out there. -Size = 6.2M +Size = 8.6M Category = 5 URLSite = http://www.mozilla-europe.org/en/products/thunderbird/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/win32/en-US/Thunderbird%20Setup%202.0.0.23.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/latest-3.0/win32/en-US/Thunderbird%20Setup%203.0.exe CDPath = none -[Section.0419] -Description = Один из самых популярных и лучших бесплатных почтовых клиентов. -Size = 7.1M -URLSite = http://www.mozilla-europe.org/ru/products/thunderbird/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/win32/ru/Thunderbird%20Setup%202.0.0.23.exe - [Section.0407] Description = Der populärste und einer der besten freien Mail-Clients. -Size = 6.4M +Size = 8.4M URLSite = http://www.mozilla-europe.org/de/products/thunderbird/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/win32/de/Thunderbird%20Setup%202.0.0.23.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/latest-3.0/win32/de/Thunderbird%20Setup%203.0.exe + +[Section.040a] +Description = El más popular y uno de los mejores clientes mail que hay. +Size = 8.4M +URLSite = http://www.mozilla-europe.org/es/products/thunderbird/ +URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/latest-3.0/win32/es-ES/Thunderbird%20Setup%203.0.exe [Section.0415] Description = Najpopularniejszy i jeden z najlepszych darmowych klientów poczty. -Size = 7.2M +Size = 9.2M URLSite = http://www.mozilla-europe.org/pl/products/thunderbird/ -URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/2.0.0.23/win32/pl/Thunderbird%20Setup%202.0.0.23.exe +URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/latest-3.0/win32/pl/Thunderbird%20Setup%203.0.exe + +[Section.0419] +Description = Один из самых популярных и лучших бесплатных почтовых клиентов. +Size = 8.8M +URLSite = http://www.mozilla-europe.org/ru/products/thunderbird/ +URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/latest-3.0/win32/ru/Thunderbird%20Setup%203.0.exe diff --git a/base/applications/rapps/rapps/tileworld.txt b/base/applications/rapps/rapps/tileworld.txt index f398c971757..8e7bb70f188 100644 --- a/base/applications/rapps/rapps/tileworld.txt +++ b/base/applications/rapps/rapps/tileworld.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Tile World @@ -14,5 +14,8 @@ CDPath = none [Section.0407] Description = Schöner Klon von Chip's Challenge ursprünglich etnwickelt für Atari Lynx. Enthält CCLP2 Graphics Pack, deshalb wird das urheberrechtlich geschützte Original nicht benötigt. +[Section.040a] +Description = Clon de Chip's Challenge originalmente creado para Atari Lynx. Incluye el paquete gráfico gratuito CCLP2, así que no es necesario el original con copyright. + [Section.0415] -Description = Udany klon gry Chip's Challenge z Atari Lynx. Zawiera darmowy zestaw grafik CCLP2. \ No newline at end of file +Description = Udany klon gry Chip's Challenge z Atari Lynx. Zawiera darmowy zestaw grafik CCLP2. diff --git a/base/applications/rapps/rapps/tuxpaint.txt b/base/applications/rapps/rapps/tuxpaint.txt index 46212059707..c3de5966beb 100644 --- a/base/applications/rapps/rapps/tuxpaint.txt +++ b/base/applications/rapps/rapps/tuxpaint.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = TuxPaint @@ -7,12 +7,15 @@ Licence = GPL Description = An Open Source bitmap graphics editor geared towards young children. Size = 10MB Category = 3 -URLSite = http://tuxpaint.org +URLSite = http://tuxpaint.org/ URLDownload = http://ovh.dl.sourceforge.net/sourceforge/tuxpaint/tuxpaint-0.9.21-win32-installer.exe CDPath = none [Section.0407] Description = Ein Open Source Bitmap Zeichenprogramm für kleine Kinder. +[Section.040a] +Description = Editor gráfico de imágenes pensado para niños de código abierto. + [Section.0415] -Description = Otwarty program graficzny przeznaczony głównie dla dzieci. \ No newline at end of file +Description = Otwarty program graficzny przeznaczony głównie dla dzieci. diff --git a/base/applications/rapps/rapps/ultravnc.txt b/base/applications/rapps/rapps/ultravnc.txt index 90587d3b9cd..dcd365ec9a4 100644 --- a/base/applications/rapps/rapps/ultravnc.txt +++ b/base/applications/rapps/rapps/ultravnc.txt @@ -1,12 +1,15 @@ -; UTF-8 +; UTF-8 [Section] Name = UltraVNC -Version = 1.0.8.0 +Version = 1.0.8.2 Licence = GPL -Description = Open-source VNC client/server +Description = Open-source VNC client/server. Size = 1.9MB Category = 5 -URLSite = http://www.uvnc.com -URLDownload = http://support1.uvnc.com/download/1080/UltraVNC_1.0.8.0_Setup.exe +URLSite = http://www.uvnc.com/ +URLDownload = http://support1.uvnc.com/download/1082/UltraVNC_1.0.8.2_Setup.exe CDPath = none + +[Section.040a] +Description = Cliente/Servidor VNC de código abierto. diff --git a/base/applications/rapps/rapps/utorrent.txt b/base/applications/rapps/rapps/utorrent.txt index e36aecf4095..41a5f004f68 100644 --- a/base/applications/rapps/rapps/utorrent.txt +++ b/base/applications/rapps/rapps/utorrent.txt @@ -11,14 +11,19 @@ URLSite = http://www.utorrent.com/ URLDownload = http://download.utorrent.com/1.8.5/utorrent.exe CDPath = none -[Section.0419] -Licence = Бесплатная для не комерческого использования -Description = Маленький и быстрый BitTorrent клиент. [Section.0407] Licence = Freeware für nichtkommerzielle Nutzung Description = Kleiner und schneller BitTorrent Client. +[Section.040a] +Licence = Gratuito para uso no comercial +Description = Pequeño y rápido cliente BitTorrent. + [Section.0415] Licence = Freeware (do użytku domowego) Description = Mały i szybki klient BitTorrent. + +[Section.0419] +Licence = Бесплатная для некоммерческого использования +Description = Маленький и быстрый клиент BitTorrent. diff --git a/base/applications/rapps/rapps/vb5run.txt b/base/applications/rapps/rapps/vb5run.txt index 243670788a5..296fd7a12fd 100644 --- a/base/applications/rapps/rapps/vb5run.txt +++ b/base/applications/rapps/rapps/vb5run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Basic 5 Runtime @@ -7,14 +7,18 @@ Licence = Unknown Description = Visual Basic 5 Runtime. Size = 970kB Category = 14 -URLSite = http://support.microsoft.com/kb/180071 +URLSite = http://support.microsoft.com/kb/180071/ URLDownload = http://download.microsoft.com/download/vb50pro/utility/1/win98/en-us/msvbvm50.exe CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Basic 5 Laufzeitsystem +Description = Visual Basic 5 Laufzeitsystem. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Basic 5. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Basic 5 +Description = Biblioteki uruchomieniowe Visual Basic 5. diff --git a/base/applications/rapps/rapps/vb6run.txt b/base/applications/rapps/rapps/vb6run.txt index a6f6a84b995..fed333b5a20 100644 --- a/base/applications/rapps/rapps/vb6run.txt +++ b/base/applications/rapps/rapps/vb6run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Basic 6 Runtime @@ -7,14 +7,18 @@ Licence = Unknown Description = Visual Basic 6 Runtime. Size = 1.0MB Category = 14 -URLSite = http://support.microsoft.com/kb/192461 +URLSite = http://support.microsoft.com/kb/192461/ URLDownload = http://download.microsoft.com/download/vb60pro/install/6/win98me/en-us/vbrun60.exe CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Basic 6 Laufzeitsystem +Description = Visual Basic 6 Laufzeitsystem. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Basic 6. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Basic 6 \ No newline at end of file +Description = Biblioteki uruchomieniowe Visual Basic 6. diff --git a/base/applications/rapps/rapps/vc2005run.txt b/base/applications/rapps/rapps/vc2005run.txt index f13d84b9f43..c5ef0cae69b 100644 --- a/base/applications/rapps/rapps/vc2005run.txt +++ b/base/applications/rapps/rapps/vc2005run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Studio 2005 Runtime @@ -13,8 +13,12 @@ CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Studio 2005 Laufzeitsystem +Description = Visual Studio 2005 Laufzeitsystem. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Studio 2005. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Studio 2005 \ No newline at end of file +Description = Biblioteki uruchomieniowe Visual Studio 2005. diff --git a/base/applications/rapps/rapps/vc2005sp1run.txt b/base/applications/rapps/rapps/vc2005sp1run.txt index 78cf07dfea1..b32df0d5e02 100644 --- a/base/applications/rapps/rapps/vc2005sp1run.txt +++ b/base/applications/rapps/rapps/vc2005sp1run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Studio 2005 Runtime SP1 @@ -13,8 +13,12 @@ CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Studio 2005 Laufzeitsystem SP1 +Description = Visual Studio 2005 Laufzeitsystem SP1. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Studio 2005 SP1. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Studio 2005 SP1 +Description = Biblioteki uruchomieniowe Visual Studio 2005 SP1. diff --git a/base/applications/rapps/rapps/vc2008run.txt b/base/applications/rapps/rapps/vc2008run.txt index 83173830510..bb36b6010db 100644 --- a/base/applications/rapps/rapps/vc2008run.txt +++ b/base/applications/rapps/rapps/vc2008run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Studio 2008 Runtime @@ -13,8 +13,12 @@ CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Studio 2008 Laufzeitsystem +Description = Visual Studio 2008 Laufzeitsystem. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Studio 2008. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Studio 2008 \ No newline at end of file +Description = Biblioteki uruchomieniowe Visual Studio 2008. diff --git a/base/applications/rapps/rapps/vc6run.txt b/base/applications/rapps/rapps/vc6run.txt index 78efbe578f1..a93058e2942 100644 --- a/base/applications/rapps/rapps/vc6run.txt +++ b/base/applications/rapps/rapps/vc6run.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = Visual Studio 6 Runtime @@ -7,14 +7,18 @@ Licence = Unknown Description = Visual Studio 6 Runtime. Size = 1.7MB Category = 14 -URLSite = http://support.microsoft.com/kb/259403 +URLSite = http://support.microsoft.com/kb/259403/ URLDownload = http://download.microsoft.com/download/vc60pro/update/1/w9xnt4/en-us/vc6redistsetup_enu.exe CDPath = none [Section.0407] Licence = Unbekannt -Description = Visual Studio 6 Laufzeitsystem +Description = Visual Studio 6 Laufzeitsystem. + +[Section.040a] +Licence = Desconocida +Description = Librerias Visual Studio 2006. [Section.0415] Licence = Nieznana -Description = Biblioteki uruchomieniowe Visual Studio 6 \ No newline at end of file +Description = Biblioteki uruchomieniowe Visual Studio 6. diff --git a/base/applications/rapps/rapps/vlc.txt b/base/applications/rapps/rapps/vlc.txt index 57e89bd17d1..3a0d4e69777 100644 --- a/base/applications/rapps/rapps/vlc.txt +++ b/base/applications/rapps/rapps/vlc.txt @@ -1,12 +1,21 @@ -; UTF-8 +; UTF-8 [Section] Name = VLC media player Version = 1.0.3 Licence = GPL Description = A media player. -Size = 17.2MB +Size = 17.2MB Category = 1 URLSite = http://www.videolan.org/vlc/ URLDownload = http://mirror.services.wisc.edu/mirrors/videolan/vlc/1.0.3/win32/vlc-1.0.3-win32.exe CDPath = none + +[Section.0407] +Description = Ein Medienplayer. + +[Section.040a] +Description = Reproductor multimedia. + +[Section.0419] +Description = Мультимедийный проигрыватель. diff --git a/base/applications/rapps/rapps/winboard.txt b/base/applications/rapps/rapps/winboard.txt index 41af52803b1..bc8c6044390 100644 --- a/base/applications/rapps/rapps/winboard.txt +++ b/base/applications/rapps/rapps/winboard.txt @@ -1,4 +1,4 @@ -; UTF-8 +; UTF-8 [Section] Name = WinBoard @@ -14,5 +14,8 @@ CDPath = none [Section.0407] Description = WinBoard ist ein grafisches Schachbrett für Windows/ReactOS welches als Nutzerinterface für GNU Chess, Crafty oder andere Schachprogramme, für Internet Schachserver und für Briefschach dient. +[Section.040a] +Description = Tablero de ajedrez para Windows/ReactOS que puede ser utilizado como interfaz para GNU Chess, Crafty, y otros motores de ajedrez, para servidores de ajedrez en internet, y para partidas por correo electrónico. + [Section.0415] Description = Graficzna szachownica dla systemu Windows/ReactOS, która może służyć jako graficzna nakładka dla GNU Chess, Crafty, lub innych programów szachowych(w tym internetowych serwerów szachowych) lub szachów korespondencyjnych. diff --git a/base/applications/rapps/toolbar.c b/base/applications/rapps/toolbar.c index d7e88a7a3f8..31ce6032673 100644 --- a/base/applications/rapps/toolbar.c +++ b/base/applications/rapps/toolbar.c @@ -20,9 +20,9 @@ static WCHAR szModifyBtn[MAX_STR_LEN]; /* Toolbar buttons */ static const TBBUTTON Buttons[] = { /* iBitmap, idCommand, fsState, fsStyle, bReserved[2], dwData, iString */ - { 0, ID_INSTALL, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (int) szInstallBtn}, - { 1, ID_UNINSTALL, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (int) szUninstallBtn}, - { 2, ID_MODIFY, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (int) szModifyBtn}, + { 0, ID_INSTALL, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (INT_PTR)szInstallBtn}, + { 1, ID_UNINSTALL, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (INT_PTR)szUninstallBtn}, + { 2, ID_MODIFY, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, (INT_PTR)szModifyBtn}, { 5, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, { 3, ID_REFRESH, TBSTATE_ENABLED, BTNS_BUTTON | BTNS_AUTOSIZE, {0}, 0, 0}, { 5, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, diff --git a/base/applications/regedit/childwnd.c b/base/applications/regedit/childwnd.c index 9206c43e55e..ced601a23c0 100644 --- a/base/applications/regedit/childwnd.c +++ b/base/applications/regedit/childwnd.c @@ -87,10 +87,9 @@ static void OnPaint(HWND hWnd) { PAINTSTRUCT ps; RECT rt; - HDC hdc; GetClientRect(hWnd, &rt); - hdc = BeginPaint(hWnd, &ps); + BeginPaint(hWnd, &ps); FillRect(ps.hdc, &rt, GetSysColorBrush(COLOR_BTNFACE)); EndPaint(hWnd, &ps); } diff --git a/base/applications/regedit/clb/clb.rbuild b/base/applications/regedit/clb/clb.rbuild index be34cbf85ab..aad50816d78 100644 --- a/base/applications/regedit/clb/clb.rbuild +++ b/base/applications/regedit/clb/clb.rbuild @@ -4,7 +4,6 @@ . ntdll - kernel32 user32 gdi32 comctl32 diff --git a/base/applications/regedit/hexedit.c b/base/applications/regedit/hexedit.c index 09ddc5b6f01..066ee4e156b 100644 --- a/base/applications/regedit/hexedit.c +++ b/base/applications/regedit/hexedit.c @@ -768,16 +768,11 @@ static BOOL HEXEDIT_WM_KEYDOWN(PHEXEDIT_DATA hed, INT VkCode) { size_t bufsize; - BOOL shift, control; - if(GetKeyState(VK_MENU) & 0x8000) { return FALSE; } - shift = GetKeyState(VK_SHIFT) & 0x8000; - control = GetKeyState(VK_CONTROL) & 0x8000; - bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0); switch(VkCode) diff --git a/base/applications/regedit/lang/de-DE.rc b/base/applications/regedit/lang/de-DE.rc index 6e456a541ba..2b0a22cd2af 100644 --- a/base/applications/regedit/lang/de-DE.rc +++ b/base/applications/regedit/lang/de-DE.rc @@ -54,8 +54,8 @@ BEGIN MENUITEM "&Exportieren...", ID_REGISTRY_EXPORTREGISTRYFILE MENUITEM SEPARATOR - MENUITEM "Hive laden...", ID_REGISTRY_LOADHIVE, GRAYED - MENUITEM "Hive entladen...", ID_REGISTRY_UNLOADHIVE, GRAYED + MENUITEM "Zweig laden...", ID_REGISTRY_LOADHIVE, GRAYED + MENUITEM "Zweig entladen...", ID_REGISTRY_UNLOADHIVE, GRAYED MENUITEM SEPARATOR MENUITEM "&Mit Netzwerkregistrierung verbinden...", ID_REGISTRY_CONNECTNETWORKREGISTRY @@ -78,7 +78,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "&Zeichenkette", ID_EDIT_NEW_STRINGVALUE MENUITEM "&Binärwert", ID_EDIT_NEW_BINARYVALUE - MENUITEM "&DWORD Wert", ID_EDIT_NEW_DWORDVALUE + MENUITEM "&DWORD-Wert", ID_EDIT_NEW_DWORDVALUE MENUITEM "&Mehrteilige Zeichenkette", ID_EDIT_NEW_MULTISTRINGVALUE MENUITEM "&Erweiterbare Zeichenkette", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END @@ -134,14 +134,14 @@ BEGIN MENUITEM SEPARATOR MENUITEM "&Zeichenkette", ID_EDIT_NEW_STRINGVALUE MENUITEM "&Binärwert", ID_EDIT_NEW_BINARYVALUE - MENUITEM "&DWORD Wert", ID_EDIT_NEW_DWORDVALUE + MENUITEM "&DWORD-Wert", ID_EDIT_NEW_DWORDVALUE MENUITEM "&Mehrteilige Zeichenkette", ID_EDIT_NEW_MULTISTRINGVALUE MENUITEM "&Erweiterbare Zeichenkette", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END END POPUP "" BEGIN - MENUITEM "Expandieren/Schliessen", ID_TREE_EXPANDBRANCH + MENUITEM "Erweitern/Schließen", ID_TREE_EXPANDBRANCH POPUP "&Neu" BEGIN MENUITEM "&Schlüssel", ID_EDIT_NEW_KEY @@ -160,7 +160,7 @@ BEGIN MENUITEM "&Exportieren", ID_TREE_EXPORT MENUITEM "&Berechtigungen...", ID_TREE_PERMISSIONS, GRAYED MENUITEM SEPARATOR - MENUITEM "S&chlüsselname kopieren", ID_EDIT_COPYKEYNAME + MENUITEM "S&chlüsselnamen kopieren", ID_EDIT_COPYKEYNAME END END @@ -215,7 +215,7 @@ END IDD_EDIT_DWORD DIALOGEX 32, 24, 252, 104 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU -CAPTION "DWORD Wert editieren" +CAPTION "DWORD-Wert editieren" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Name:",IDC_STATIC,6,6,134,8 @@ -242,7 +242,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_APP_TITLE "Registry Editor" + IDS_APP_TITLE "Registry-Editor" IDC_REGEDIT "REGEDIT" IDC_REGEDIT_FRAME "REGEDIT_FRAME" END @@ -253,7 +253,7 @@ BEGIN ID_EDIT_MENU "Enthält Befehle für das Ändern von Schlüsseln oder Werten" ID_VIEW_MENU "Enthält Befehle für das Anpassen des Registry Editor Fensters" ID_FAVOURITES_MENU "Enthält Befehle um auf oft genutzte Schlüssel zuzugreifen" - ID_HELP_MENU "Enthält Befehle um Hilfe und Informationen über den Registry Editor anzuzeigen" + ID_HELP_MENU "Enthält Befehle um Hilfe und Informationen über den Registry-Editor anzuzeigen" ID_EDIT_NEW_MENU "Enthält Befehle für das Erstellen von neuen Schlüsseln oder Werten" END @@ -263,7 +263,7 @@ BEGIN ID_EDIT_NEW_KEY "Fügt einen neuen Schlüssel hinzu" ID_EDIT_NEW_STRINGVALUE "Fügt eine neue Zeichenkette hinzu " ID_EDIT_NEW_BINARYVALUE "Fügt einen neuen Binärwärt hinzu" - ID_EDIT_NEW_DWORDVALUE "Fügt einen neuen DWORD Wert hinzu" + ID_EDIT_NEW_DWORDVALUE "Fügt einen neuen DWORD-Wert hinzu" ID_REGISTRY_IMPORTREGISTRYFILE "Importiert eine Textddatei in die Registry" ID_REGISTRY_EXPORTREGISTRYFILE "Exportiert Teile oder die ganze Registry in eine Textdatei" @@ -278,7 +278,7 @@ END STRINGTABLE DISCARDABLE BEGIN - ID_REGISTRY_EXIT "Beendet den Registry Editor" + ID_REGISTRY_EXIT "Beendet den Registry-Editor" ID_FAVOURITES_ADDTOFAVOURITES "Fügt Schlüssel zu den Favoriten hinzu" ID_FAVOURITES_REMOVEFAVOURITE "Löscht Schlüssel aus den Favoriten" ID_VIEW_STATUSBAR "Zeigt oder versteckt die Statusleiste" @@ -297,7 +297,7 @@ BEGIN IDS_WARNING "Warnung" IDS_BAD_KEY "Kann den Schlüssel '%s' nicht lesen" IDS_BAD_VALUE "Kann den Wert '%s' nicht lesen" - IDS_UNSUPPORTED_TYPE "Kann den Schlüssel des Typen (%ld) nicht ändern" + IDS_UNSUPPORTED_TYPE "Kann den Schlüssel des Typs (%ld) nicht ändern" IDS_TOO_BIG_VALUE "Der Wert (%ld) ist zu groß" IDS_MULTI_SZ_EMPTY_STRING "Daten vom Typ REG_MULTI_SZ können keine leere Zeichenkette enthalten.\nDie leere Zeichenkette wurde aus der Liste gelöscht." IDS_QUERY_DELETE_KEY_ONE "Diesen Schlüssel wirklich löschen?" @@ -323,7 +323,7 @@ BEGIN IDS_MY_COMPUTER "Arbeitsplatz" IDS_IMPORT_REG_FILE "Registry importieren" IDS_EXPORT_REG_FILE "Registry exportieren" - IDS_INVALID_DWORD "(ungültiger DWORD Wert)" + IDS_INVALID_DWORD "(ungültiger DWORD-Wert)" END STRINGTABLE DISCARDABLE @@ -331,7 +331,7 @@ BEGIN IDS_FLT_REGFILE "Registrierungsdatei" IDS_FLT_REGFILES "Registrierungsdateien" IDS_FLT_REGFILES_FLT "*.reg" - IDS_FLT_REGEDIT4 "Win9x/NT4 Registrierungsdateien (REGEDIT4)" + IDS_FLT_REGEDIT4 "Win9x/NT4-Registrierungsdateien (REGEDIT4)" IDS_FLT_REGEDIT4_FLT "*.reg" IDS_FLT_ALLFILES "Alle Dateien (*.*)" IDS_FLT_ALLFILES_FLT "*.*" diff --git a/base/applications/regedit/lang/uk-UA.rc b/base/applications/regedit/lang/uk-UA.rc index 5fd845524b0..ff7d13965e4 100644 --- a/base/applications/regedit/lang/uk-UA.rc +++ b/base/applications/regedit/lang/uk-UA.rc @@ -41,13 +41,13 @@ BEGIN END POPUP "&Äîâ³äêà" BEGIN - MENUITEM "&Ïðî ïðîãðàìó", ID_HELP_ABOUT + MENUITEM "Ïð&î ïðîãðàìó", ID_HELP_ABOUT END END IDR_REGEDIT_MENU MENU DISCARDABLE BEGIN - POPUP "&Ôàéë" + POPUP "Ôà&éë" BEGIN MENUITEM "&²ìïîðò...", ID_REGISTRY_IMPORTREGISTRYFILE @@ -68,7 +68,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "Â&èõ³ä", ID_REGISTRY_EXIT END - POPUP "&Ïðàâêà" + POPUP "Ïðà&âêà" BEGIN MENUITEM "&Çì³íèòè", ID_EDIT_MODIFY MENUITEM SEPARATOR @@ -83,7 +83,7 @@ BEGIN MENUITEM "Ðîç&øèðþâàíå ñòðîêîâå çíà÷åííÿ", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END MENUITEM SEPARATOR - MENUITEM "&Äîçâîëè...", ID_EDIT_PERMISSIONS + MENUITEM "Äîçâ&îëè...", ID_EDIT_PERMISSIONS MENUITEM SEPARATOR MENUITEM "Â&èäàëèòè\tDel", ID_EDIT_DELETE MENUITEM "Ïåðåé&ìåíóâàòè", ID_EDIT_RENAME @@ -101,7 +101,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "&Îíîâèòè\tF5", ID_VIEW_REFRESH END - POPUP "&Îáðàíå" + POPUP "Îáð&àíå" BEGIN MENUITEM "&Äîäàòè â îáðàíå", ID_FAVOURITES_ADDTOFAVOURITES , GRAYED @@ -135,8 +135,8 @@ BEGIN MENUITEM "&Ðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_STRINGVALUE MENUITEM "&Äâ³éêîâå çíà÷åííÿ", ID_EDIT_NEW_BINARYVALUE MENUITEM "&DWORD çíà÷åííÿ", ID_EDIT_NEW_DWORDVALUE - MENUITEM "&Multi-String Value", ID_EDIT_NEW_MULTISTRINGVALUE - MENUITEM "&Expandable String Value", ID_EDIT_NEW_EXPANDABLESTRINGVALUE + MENUITEM "&Áàãàòîðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_MULTISTRINGVALUE + MENUITEM "&Ðîçøèðåíå ðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END END POPUP "" @@ -149,8 +149,8 @@ BEGIN MENUITEM "&Ðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_STRINGVALUE MENUITEM "&Äâ³éêîâå çíà÷åííÿ", ID_EDIT_NEW_BINARYVALUE MENUITEM "&DWORD çíà÷åííÿ", ID_EDIT_NEW_DWORDVALUE - MENUITEM "&Multi-String Value", ID_EDIT_NEW_MULTISTRINGVALUE - MENUITEM "&Expandable String Value", ID_EDIT_NEW_EXPANDABLESTRINGVALUE + MENUITEM "&Áàãàòîðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_MULTISTRINGVALUE + MENUITEM "&Ðîçøèðåíå ðÿäêîâå çíà÷åííÿ", ID_EDIT_NEW_EXPANDABLESTRINGVALUE END MENUITEM "Ç&íàéòè", ID_EDIT_FIND MENUITEM SEPARATOR @@ -328,7 +328,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_FLT_REGFILE "Registration File" + IDS_FLT_REGFILE "Ôàéë ðåºñòðó" IDS_FLT_REGFILES "Ôàéëè ðåºñòðó" IDS_FLT_REGFILES_FLT "*.reg" IDS_FLT_REGEDIT4 "Ôàéëè ðåºñòðó Win9x/NT4 (REGEDIT4)" @@ -339,7 +339,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_ACCESS_FULLCONTROL "Full Control" + IDS_ACCESS_FULLCONTROL "Ïîâíèé êîíòðîëü" IDS_ACCESS_READ "×èòàííÿ" IDS_ACCESS_QUERYVALUE "Çàïèò çíà÷åííÿ" IDS_ACCESS_SETVALUE "Óñòàíîâëåííÿ çíà÷åííÿ" @@ -350,7 +350,7 @@ BEGIN IDS_ACCESS_DELETE "Âèäàëåííÿ" IDS_ACCESS_WRITEDAC "Çàïèñ DAC" IDS_ACCESS_WRITEOWNER "Çàïèñ âëàñíèêà" - IDS_ACCESS_READCONTROL "Read Control" + IDS_ACCESS_READCONTROL "×èòàííÿ äîçâîëó" END STRINGTABLE DISCARDABLE diff --git a/base/applications/regedit/main.c b/base/applications/regedit/main.c index b143aa77c02..fa58e20e1be 100644 --- a/base/applications/regedit/main.c +++ b/base/applications/regedit/main.c @@ -65,7 +65,6 @@ BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) WNDCLASSEX wcFrame; WNDCLASSEX wcChild; ATOM hFrameWndClass; - ATOM hChildWndClass; ZeroMemory(&wcFrame, sizeof(WNDCLASSEX)); wcFrame.cbSize = sizeof(WNDCLASSEX); @@ -93,7 +92,7 @@ BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) wcChild.hIconSm = (HICON)LoadImage(hInstance, MAKEINTRESOURCE(IDI_REGEDIT), IMAGE_ICON, GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), LR_SHARED); - hChildWndClass = RegisterClassEx(&wcChild); /* register child windows class */ + RegisterClassEx(&wcChild); /* register child windows class */ RegisterHexEditorClass(hInstance); diff --git a/base/applications/regedit/regedit.rbuild b/base/applications/regedit/regedit.rbuild index 63a39d719c6..0868114778a 100644 --- a/base/applications/regedit/regedit.rbuild +++ b/base/applications/regedit/regedit.rbuild @@ -6,7 +6,6 @@ uuid - kernel32 user32 gdi32 advapi32 diff --git a/base/applications/regedit/treeview.c b/base/applications/regedit/treeview.c index 9b947fc3ed2..cfbd401d009 100644 --- a/base/applications/regedit/treeview.c +++ b/base/applications/regedit/treeview.c @@ -544,7 +544,6 @@ BOOL CreateNewKey(HWND hwndTV, HTREEITEM hItem) HKEY hKey = NULL; HKEY hNewKey = NULL; BOOL bSuccess = FALSE; - LONG lResult; DWORD dwDisposition; HTREEITEM hNewItem; @@ -559,7 +558,7 @@ BOOL CreateNewKey(HWND hwndTV, HTREEITEM hItem) do { _sntprintf(szNewKey, sizeof(szNewKey) / sizeof(szNewKey[0]), szNewKeyFormat, iIndex++); - lResult = RegCreateKeyEx(hKey, szNewKey, 0, NULL, 0, KEY_ALL_ACCESS, NULL, &hNewKey, &dwDisposition); + RegCreateKeyEx(hKey, szNewKey, 0, NULL, 0, KEY_ALL_ACCESS, NULL, &hNewKey, &dwDisposition); if (hNewKey && (dwDisposition == REG_OPENED_EXISTING_KEY)) { RegCloseKey(hNewKey); diff --git a/base/applications/regedt32/regedt32.rbuild b/base/applications/regedt32/regedt32.rbuild index cf6d2d6e71c..6b0b03773e9 100644 --- a/base/applications/regedt32/regedt32.rbuild +++ b/base/applications/regedt32/regedt32.rbuild @@ -2,7 +2,6 @@ . - kernel32 shell32 shlwapi regedt32.c diff --git a/base/applications/sc/sc.rbuild b/base/applications/sc/sc.rbuild index ea0924c39ea..4bef374d021 100644 --- a/base/applications/sc/sc.rbuild +++ b/base/applications/sc/sc.rbuild @@ -2,7 +2,6 @@ - kernel32 advapi32 control.c create.c diff --git a/base/applications/screensavers/3dtext/3dtext.rbuild b/base/applications/screensavers/3dtext/3dtext.rbuild index 8ecece679f9..1a1e115b763 100644 --- a/base/applications/screensavers/3dtext/3dtext.rbuild +++ b/base/applications/screensavers/3dtext/3dtext.rbuild @@ -3,7 +3,6 @@ scrnsave chkstk - kernel32 user32 gdi32 opengl32 diff --git a/base/applications/screensavers/3dtext/lang/bg-BG.rc b/base/applications/screensavers/3dtext/lang/bg-BG.rc index 06f572d7b91..17666c900b4 100644 --- a/base/applications/screensavers/3dtext/lang/bg-BG.rc +++ b/base/applications/screensavers/3dtext/lang/bg-BG.rc @@ -2,7 +2,7 @@ LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178 STYLE DS_SHELLFONT | DS_MODALFRAME| DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Íàñòðîéêè íà åêðàííèÿ ïðåäïàçèòåë ""Òðèìåðåí òåêñò""." +CAPTION "Íàñòðîéêè íà åêðàííèÿ ïðåäïàçèòåë „Òðèìåðåí òåêñò“." FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "Äîáðå",IDOK,216,7,50,14 @@ -13,5 +13,5 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_DESCRIPTION "Åêðàíåí ïðåäïàçèòåë ""Òðèìåðåí òåêñò""." + IDS_DESCRIPTION "Åêðàíåí ïðåäïàçèòåë „Òðèìåðåí òåêñò“." END diff --git a/base/applications/screensavers/3dtext/lang/de-DE.rc b/base/applications/screensavers/3dtext/lang/de-DE.rc index d6df75d4ba7..0fb89e80ef2 100644 --- a/base/applications/screensavers/3dtext/lang/de-DE.rc +++ b/base/applications/screensavers/3dtext/lang/de-DE.rc @@ -2,7 +2,7 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL DLG_SCRNSAVECONFIGURE DIALOGEX 0, 0, 273, 178 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "3D-Text Bildschirmschoner-Einstellungen" +CAPTION "3D-Text-Bildschirmschoner-Einstellungen" FONT 8, "MS Shell Dlg", 400, 0, 0x1 BEGIN DEFPUSHBUTTON "OK",IDOK,216,7,50,14 @@ -13,5 +13,5 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_DESCRIPTION "3D Text Bildschirmschoner" + IDS_DESCRIPTION "3D-Text-Bildschirmschoner" END diff --git a/base/applications/screensavers/logon/lang/de-DE.rc b/base/applications/screensavers/logon/lang/de-DE.rc index 10fc8483229..b740bedea3e 100644 --- a/base/applications/screensavers/logon/lang/de-DE.rc +++ b/base/applications/screensavers/logon/lang/de-DE.rc @@ -2,6 +2,6 @@ LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL STRINGTABLE DISCARDABLE BEGIN - IDS_DESCRIPTION "Logon Bildschirmschoner" + IDS_DESCRIPTION "Logon-Bildschirmschoner" IDS_TEXT "Keinerlei Einstellungen notwendig." END diff --git a/base/applications/screensavers/logon/logon.rbuild b/base/applications/screensavers/logon/logon.rbuild index e4dc6d36193..562c62de9b1 100644 --- a/base/applications/screensavers/logon/logon.rbuild +++ b/base/applications/screensavers/logon/logon.rbuild @@ -3,7 +3,6 @@ . scrnsave - kernel32 user32 gdi32 diff --git a/base/applications/shutdown/lang/bg-BG.rc b/base/applications/shutdown/lang/bg-BG.rc index 3b1f5f89472..dce10c84e09 100644 --- a/base/applications/shutdown/lang/bg-BG.rc +++ b/base/applications/shutdown/lang/bg-BG.rc @@ -4,7 +4,7 @@ STRINGTABLE DISCARDABLE BEGIN IDS_USAGE, "Óïîòðåáà: shutdown [-?] [-l | -s | -r] [-f]\n\n\ - Áåç êëþ÷îâå èëè -?\tÏîêçàâà òîâà ñúîáùåíèå\n\ + Áåç êëþ÷îâå èëè -?\tÏîêàçâà òîâà ñúîáùåíèå\n\ -l\t\t\tÈçõîä\n\ -s\t\t\tÈçêëþ÷âàíå íà êîìïþòúðà\n\ -r\t\t\tÈçêëþ÷âàíå è ïðåçàïóñêàíå íà êîìïþòúðà\n\ diff --git a/base/applications/shutdown/lang/ja-JP.rc b/base/applications/shutdown/lang/ja-JP.rc new file mode 100644 index 00000000000..f06e59a51bb --- /dev/null +++ b/base/applications/shutdown/lang/ja-JP.rc @@ -0,0 +1,14 @@ +LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "Žg—p–@: shutdown [-?] [-l | -s | -r] [-f]\n\n\ + ˆø”‚È‚µ‚à‚µ‚­‚Í -?\t‚±‚̃ƒbƒZ[ƒW‚ð•\\Ž¦‚µ‚Ü‚·\n\ + -l\t\t\tƒƒOƒIƒt\n\ + -s\t\t\tƒRƒ“ƒsƒ…[ƒ^‚ðƒVƒƒƒbƒgƒ_ƒEƒ“‚µ‚Ü‚·\n\ + -r\t\t\tƒRƒ“ƒsƒ…[ƒ^‚ðƒVƒƒƒbƒgƒ_ƒEƒ“‚µ‚čċN“®‚µ‚Ü‚·\n\ + -f\t\t\tŽÀs’†‚̃AƒvƒŠƒP[ƒVƒ‡ƒ“‚ðŒx‚È‚µ‚ɕ‚¶‚Ü‚·\n\ + \t\t\t‘¼‚̃pƒ‰ƒ[ƒ^‚ðŽw’肵‚È‚¢ê‡AƒƒOƒIƒtn\n\ + \t\t\t‚µ‚Ü‚·" +END diff --git a/base/applications/shutdown/rsrc.rc b/base/applications/shutdown/rsrc.rc index 18fe21601e1..eda9b52beb0 100644 --- a/base/applications/shutdown/rsrc.rc +++ b/base/applications/shutdown/rsrc.rc @@ -7,6 +7,7 @@ #include "lang/en-US.rc" #include "lang/fr-FR.rc" #include "lang/it-IT.rc" +#include "lang/ja-JP.rc" #include "lang/ko-KR.rc" #include "lang/lt-LT.rc" #include "lang/nl-NL.rc" @@ -15,3 +16,4 @@ #include "lang/ru-RU.rc" #include "lang/sk-SK.rc" #include "lang/uk-UA.rc" + diff --git a/base/applications/shutdown/shutdown.rbuild b/base/applications/shutdown/shutdown.rbuild index d5dd0236afe..6260c0055ab 100644 --- a/base/applications/shutdown/shutdown.rbuild +++ b/base/applications/shutdown/shutdown.rbuild @@ -4,7 +4,6 @@ . advapi32 user32 - kernel32 misc.c shutdown.c shutdown.rc diff --git a/base/applications/sndrec32/audio_api.hpp b/base/applications/sndrec32/audio_api.hpp new file mode 100644 index 00000000000..bb20f3651a7 --- /dev/null +++ b/base/applications/sndrec32/audio_api.hpp @@ -0,0 +1,15 @@ +#ifndef __AUDIO_API__ +#define __AUDIO_API__ + +#include "audio_def.hpp" + +#include "audio_format.hpp" +#include "audio_membuffer.hpp" +#include "audio_producer.hpp" +#include "audio_receiver.hpp" +#include "audio_resampler_acm.hpp" +#include "audio_wavein.hpp" +#include "audio_waveout.hpp" + + +#endif diff --git a/base/applications/sndrec32/audio_def.hpp b/base/applications/sndrec32/audio_def.hpp index da57f3f4b64..95b6f43a1f9 100644 --- a/base/applications/sndrec32/audio_def.hpp +++ b/base/applications/sndrec32/audio_def.hpp @@ -1,27 +1,49 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_def.hpp + * PURPOSE: Winmm abstraction settings + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + #ifndef _AUDIO_DEF__H_ #define _AUDIO_DEF__H_ #include + + // // Defaults // + + #define _AUDIO_DEFAULT_FORMAT A44100_16BIT_STEREO -#define _AUDIO_DEFAULT_WAVEINBUFFERS 8 -#define _AUDIO_DEFAULT_WAVEINBUFSECS 0.1f -#define _AUDIO_DEFAULT_WAVEOUTBUFFERS 8 + +#define _AUDIO_DEFAULT_WAVEINBUFFERS 3 +#define _AUDIO_DEFAULT_WAVEINBUFSECS 0.5f + +#define _AUDIO_DEFAULT_WAVEOUTBUFFERS 3 #define _AUDIO_DEFAULT_WAVEOUTBUFSECS 0.1f + #define _AUDIO_DEFAULT_BUFSECS 1.0f + // // Namespace stuff // #define _AUDIO_NAMESPACE_START_ namespace snd { #define _AUDIO_NAMESPACE_END_ }; + + + + + // // Platform depend stuff // @@ -29,6 +51,20 @@ #include #include //Windows MultiMedia (WINMM) audio apis #include //codecs stuff -#include //codecs stuff +#include //codecs stuff + + + + + +//#pragma comment(lib, "winmm.lib") +//#pragma comment(lib, "msacm32.lib") + + + + + + + #endif //ifdef _AUDIO_DEF__H_ diff --git a/base/applications/sndrec32/audio_format.cpp b/base/applications/sndrec32/audio_format.cpp index 316f54bd8ad..be927bf1697 100644 --- a/base/applications/sndrec32/audio_format.cpp +++ b/base/applications/sndrec32/audio_format.cpp @@ -1,17 +1,23 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/sndrec32/audio_format.cpp - * PURPOSE: Audio Format - * PROGRAMMERS: Marco Pagliaricci + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ + + #include "stdafx.h" #include "audio_format.hpp" + + + _AUDIO_NAMESPACE_START_ + + // // Standard audio formats (declared as // externs in `audio_format.hpp') @@ -19,6 +25,11 @@ _AUDIO_NAMESPACE_START_ audio_format UNNKOWN_FORMAT( 0, 0, 0); audio_format A44100_16BIT_STEREO( 44100, 16, 2 ); +audio_format A44100_16BIT_MONO( 44100, 16, 1 ); + + -_AUDIO_NAMESPACE_END_ + + +_AUDIO_NAMESPACE_END_ diff --git a/base/applications/sndrec32/audio_format.hpp b/base/applications/sndrec32/audio_format.hpp index 1f620b2e3f2..947e34d082e 100644 --- a/base/applications/sndrec32/audio_format.hpp +++ b/base/applications/sndrec32/audio_format.hpp @@ -1,3 +1,12 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_format.hpp + * PURPOSE: Audio format abstraction + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + #ifndef _AUDIOFORMAT__H_ #define _AUDIOFORMAT__H_ @@ -18,62 +27,63 @@ _AUDIO_NAMESPACE_START_ class audio_format { - protected: - + protected: + + + unsigned int samples_psec; + unsigned short int bits_psample; + unsigned short int chan; - unsigned int samples_psec; - unsigned short int bits_psample; - unsigned short int chan; + public: + + + // + // Ctors + // - public: - - - // - // Ctors - // + audio_format( unsigned int samples_per_second, + unsigned short int bits_per_sample, unsigned short int channels ) - audio_format( unsigned int samples_per_second, - unsigned short int bits_per_sample, unsigned short int channels ) + : samples_psec( samples_per_second ), bits_psample( bits_per_sample ), + chan( channels ) - : samples_psec( samples_per_second ), bits_psample( bits_per_sample ), - chan( channels ) + { } - { } + // + // Dtor + // - // - // Dtor - // + virtual ~audio_format( void ) + { } - virtual ~audio_format( void ) - { } + // + // Operators + // - // - // Operators - // + bool operator==( audio_format & eq ) const + { + // + // The same audio format is when samples per second, + // bit per sample, and channels mono/stereo are equal. + // - bool operator==( audio_format & eq ) const - { - // - // The same audio format is when samples per second, - // bit per sample, and channels mono/stereo are equal. - // + return (( samples_psec == eq.samples_psec ) + && ( bits_psample == eq.bits_psample ) && ( chan == eq.chan )); + } - return (( samples_psec == eq.samples_psec ) - && ( bits_psample == eq.bits_psample ) && ( chan == eq.chan )); - } @@ -81,46 +91,52 @@ class audio_format + // + // Public Functions + // - // - // Public Functions - // + unsigned int sample_rate( void ) const + { return samples_psec; } - unsigned int sample_rate( void ) const - { return samples_psec; } + unsigned short int bits( void ) const + { return bits_psample; } - unsigned short int bits( void ) const - { return bits_psample; } + unsigned short int channels( void ) const + { return chan; } - unsigned short int channels( void ) const - { return chan; } + unsigned int byte_rate( void ) const + { return ( samples_psec * chan * ( bits_psample / 8 )); } - unsigned int byte_rate( void ) const - { return ( samples_psec * chan * ( bits_psample / 8 )); } + unsigned int block_align( void ) const + { return ( chan * ( bits_psample / 8 )); } - unsigned int block_align( void ) const - { return ( chan * ( bits_psample / 8 )); } + unsigned int samples_in_seconds( float seconds ) const + { - unsigned int samples_in_seconds( float seconds ) const - { + return ( unsigned int ) + ((( float )samples_psec * ( float ) chan ) * seconds ); - return ( unsigned int ) - ((( float )samples_psec * ( float ) chan ) * seconds ); + } - } + unsigned int samples_in_bytes ( unsigned int bytes ) const + { - unsigned int samples_in_bytes ( unsigned int bytes ) const - { + return ( bytes / (( bits_psample / 8 ) * chan )); - return ( bytes / (( bits_psample / 8 ) * chan )); + } - } + unsigned int bytes_in_samples( unsigned int samples ) const + { + + return ( samples * (( bits_psample / 8 ) * chan )); + + } }; @@ -129,7 +145,7 @@ class audio_format extern audio_format UNKNOWN_FORMAT; extern audio_format A44100_16BIT_STEREO; - +extern audio_format A44100_16BIT_MONO; diff --git a/base/applications/sndrec32/audio_membuffer.cpp b/base/applications/sndrec32/audio_membuffer.cpp index 0f6580e27d3..edad39a6137 100644 --- a/base/applications/sndrec32/audio_membuffer.cpp +++ b/base/applications/sndrec32/audio_membuffer.cpp @@ -1,19 +1,29 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/sndrec32/audio_membuffer.cpp - * PURPOSE: Audio MemBuffer - * PROGRAMMERS: Marco Pagliaricci + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ + + #include "stdafx.h" #include "audio_membuffer.hpp" + + _AUDIO_NAMESPACE_START_ + + +////////////////////////////////////// +/////// Protected Functions ///////// +////////////////////////////////////// + + void - audio_membuffer::alloc_mem_( unsigned int bytes ) +audio_membuffer::alloc_mem_( unsigned int bytes ) { // @@ -63,7 +73,7 @@ void void - audio_membuffer::free_mem_( void ) +audio_membuffer::free_mem_( void ) { if ( audio_data ) @@ -76,7 +86,7 @@ void void - audio_membuffer::resize_mem_( unsigned int new_size ) +audio_membuffer::resize_mem_( unsigned int new_size ) { @@ -100,7 +110,7 @@ void return; - + BYTE * new_mem; @@ -166,7 +176,7 @@ void void - audio_membuffer::truncate_( void ) +audio_membuffer::truncate_( void ) { // @@ -183,7 +193,7 @@ void if ( audio_data ) { - + // // Allocs a new buffer. // @@ -243,7 +253,7 @@ void void - audio_membuffer::clear( void ) +audio_membuffer::clear( void ) { free_mem_(); @@ -254,7 +264,7 @@ void void - audio_membuffer::reset( void ) +audio_membuffer::reset( void ) { @@ -278,7 +288,7 @@ void } void - audio_membuffer::alloc_bytes( unsigned int bytes ) +audio_membuffer::alloc_bytes( unsigned int bytes ) { alloc_mem_( bytes ); @@ -287,18 +297,18 @@ void - + void - audio_membuffer::alloc_seconds( unsigned int secs ) +audio_membuffer::alloc_seconds( unsigned int secs ) { - + alloc_mem_( aud_info.byte_rate() * secs ); } void - audio_membuffer::alloc_seconds( float secs ) +audio_membuffer::alloc_seconds( float secs ) { alloc_mem_(( unsigned int )(( float ) aud_info.byte_rate() * secs )); @@ -309,7 +319,7 @@ void void - audio_membuffer::resize_bytes( unsigned int bytes ) +audio_membuffer::resize_bytes( unsigned int bytes ) { resize_mem_( bytes ); @@ -317,9 +327,9 @@ void } - + void - audio_membuffer::resize_seconds( unsigned int secs ) +audio_membuffer::resize_seconds( unsigned int secs ) { resize_mem_( aud_info.byte_rate() * secs ); @@ -328,12 +338,12 @@ void void - audio_membuffer::resize_seconds( float secs ) +audio_membuffer::resize_seconds( float secs ) { resize_mem_(( unsigned int ) (( float )aud_info.byte_rate() * secs ) - ); + ); } @@ -341,7 +351,6 @@ void - /////////////////////////////////////// /////// Inherited Functions ///////// /////////////////////////////////////// @@ -353,10 +362,12 @@ void void - audio_membuffer::audio_receive - ( unsigned char * data, unsigned int size ) +audio_membuffer::audio_receive + ( unsigned char * data, unsigned int size ) { + + // // If there isn't a buffer, allocs memory for @@ -414,7 +425,7 @@ void resize_mem_( tot_mem ); } - + // // Now we have enough free space in the @@ -424,24 +435,25 @@ void memcpy( audio_data + bytes_received, data, size ); - - + + if ( audio_arrival ) audio_arrival( aud_info.samples_in_bytes( size )); - + } unsigned int - audio_membuffer::read( BYTE * out_buf, unsigned int bytes ) +audio_membuffer::read( BYTE * out_buf, unsigned int bytes ) { + // // Some checking // - + if ( !audio_data ) return 0; @@ -457,7 +469,7 @@ unsigned int unsigned int to_copy = bytes > to_play ? to_play : bytes; - + // // Copies the audio data out. @@ -473,13 +485,13 @@ unsigned int // `audio_producer' object). // - bytes_played_ += bytes; + bytes_played_ += to_copy; if ( audio_arrival ) - audio_arrival( aud_info.samples_in_bytes( bytes )); - + audio_arrival( aud_info.samples_in_bytes( to_copy )); + // // Returns the exact size of audio data // produced. @@ -490,7 +502,7 @@ unsigned int bool - audio_membuffer::finished( void ) +audio_membuffer::finished( void ) { if ( bytes_played_ < bytes_received ) return false; @@ -498,4 +510,5 @@ bool return true; } + _AUDIO_NAMESPACE_END_ diff --git a/base/applications/sndrec32/audio_membuffer.hpp b/base/applications/sndrec32/audio_membuffer.hpp index 4dd27212c57..342c26edb57 100644 --- a/base/applications/sndrec32/audio_membuffer.hpp +++ b/base/applications/sndrec32/audio_membuffer.hpp @@ -1,3 +1,11 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_membuffer.hpp + * PURPOSE: Allocs audio buffer + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + #ifndef _AUDIOMEMBUFFER__H_ #define _AUDIOMEMBUFFER__H_ @@ -19,160 +27,160 @@ class audio_membuffer : public audio_receiver, public audio_producer { - + - protected: + protected: - BYTE * audio_data; - audio_format aud_info; - unsigned int buf_size; - unsigned int init_size; + BYTE * audio_data; + audio_format aud_info; + unsigned int buf_size; + unsigned int init_size; - // - // Protected Functions - // + // + // Protected Functions + // - //allocs N bytes for the audio buffer. - void alloc_mem_( unsigned int ); + //allocs N bytes for the audio buffer. + void alloc_mem_( unsigned int ); - //frees memory - void free_mem_( void ); + //frees memory + void free_mem_( void ); - //resizes memory, and copies old - //audio data to new-size memory - void resize_mem_( unsigned int ); + //resizes memory, and copies old + //audio data to new-size memory + void resize_mem_( unsigned int ); - //truncates and discards unused memory. - //`buf_size' will be the same as `bytes_received'. - void truncate_( void ); + //truncates and discards unused memory. + //`buf_size' will be the same as `bytes_received'. + void truncate_( void ); - public: + public: - - void ( * audio_arrival )( unsigned int ); - void ( * buffer_resized ) ( unsigned int ); + + void ( * audio_arrival )( unsigned int ); + void ( * buffer_resized ) ( unsigned int ); - - // - // Ctors - // + + // + // Ctors + // - audio_membuffer( void ) - : audio_data( 0 ), aud_info( _AUDIO_DEFAULT_FORMAT ), - buf_size( 0 ), init_size( 0 ) - { - - // - // Allocs memory for at least 1 or some seconds - // of recording. - // - init_size = ( unsigned int ) - (( float )aud_info.byte_rate() * _AUDIO_DEFAULT_BUFSECS ); + audio_membuffer( void ) + : audio_data( 0 ), aud_info( _AUDIO_DEFAULT_FORMAT ), + buf_size( 0 ), init_size( 0 ) + { + + // + // Allocs memory for at least 1 or some seconds + // of recording. + // + init_size = ( unsigned int ) + (( float )aud_info.byte_rate() * _AUDIO_DEFAULT_BUFSECS ); - alloc_mem_( init_size ); + alloc_mem_( init_size ); - - } + + } - audio_membuffer( audio_format aud_fmt ) - : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), - init_size( 0 ) - { - - // - // Allocs memory for at least 1 or some seconds - // of recording. - // - init_size = ( unsigned int ) - (( float )aud_info.byte_rate() * _AUDIO_DEFAULT_BUFSECS ); + audio_membuffer( audio_format aud_fmt ) + : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), + init_size( 0 ) + { + + // + // Allocs memory for at least 1 or some seconds + // of recording. + // + init_size = ( unsigned int ) + (( float )aud_info.byte_rate() * _AUDIO_DEFAULT_BUFSECS ); - alloc_mem_( init_size ); - - } + alloc_mem_( init_size ); + + } - audio_membuffer( audio_format aud_fmt, unsigned int seconds ) - : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), - init_size( 0 ) - { - - // - // Allocs memory for audio recording - // the specified number of seconds. - // - init_size = aud_info.byte_rate() * seconds; - alloc_mem_( init_size ); - - } + audio_membuffer( audio_format aud_fmt, unsigned int seconds ) + : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), + init_size( 0 ) + { + + // + // Allocs memory for audio recording + // the specified number of seconds. + // + init_size = aud_info.byte_rate() * seconds; + alloc_mem_( init_size ); + + } - audio_membuffer( audio_format aud_fmt, float seconds ) - : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), - init_size( 0 ) - { - - // - // Allocs memory for audio recording - // the specified number of seconds. - // - init_size = ( unsigned int )(( float ) aud_info.byte_rate() * - seconds <= 0 ? 1 : seconds ); + audio_membuffer( audio_format aud_fmt, float seconds ) + : audio_data( 0 ), aud_info( aud_fmt ), buf_size( 0 ), + init_size( 0 ) + { + + // + // Allocs memory for audio recording + // the specified number of seconds. + // + init_size = ( unsigned int )(( float ) aud_info.byte_rate() * + seconds <= 0 ? 1 : seconds ); - alloc_mem_( init_size ); - - } + alloc_mem_( init_size ); + + } - audio_membuffer( unsigned int bytes ) - : audio_data( 0 ), aud_info( _AUDIO_DEFAULT_FORMAT ), - buf_size( 0 ), init_size( 0 ) - { - - // - // Allocs memory for the specified bytes - // - init_size = bytes; - alloc_mem_( init_size ); - - } + audio_membuffer( unsigned int bytes ) + : audio_data( 0 ), aud_info( _AUDIO_DEFAULT_FORMAT ), + buf_size( 0 ), init_size( 0 ) + { + + // + // Allocs memory for the specified bytes + // + init_size = bytes; + alloc_mem_( init_size ); + + } - // - // Dtor - // + // + // Dtor + // - virtual ~audio_membuffer( void ) - { - - // - // Frees memory and reset values. - // + virtual ~audio_membuffer( void ) + { + + // + // Frees memory and reset values. + // - clear(); - - } + clear(); + + } @@ -182,117 +190,117 @@ class audio_membuffer : public audio_receiver, public audio_producer - // - // Public functions - // + // + // Public functions + // - //returns the audio buffer size in bytes. - unsigned int mem_size( void ) const - { return buf_size; } + //returns the audio buffer size in bytes. + unsigned int mem_size( void ) const + { return buf_size; } - //returns how many audio data has been - //received, in bytes. - unsigned int bytes_recorded( void ) const - { return bytes_received; } + //returns how many audio data has been + //received, in bytes. + unsigned int bytes_recorded( void ) const + { return bytes_received; } - //returns the integer number of seconds - //that the buffer can record - unsigned int seconds_total( void ) const - { return buf_size / aud_info.byte_rate(); } + //returns the integer number of seconds + //that the buffer can record + unsigned int seconds_total( void ) const + { return buf_size / aud_info.byte_rate(); } - //returns the integer number of seconds - //that the buffer can record - unsigned int seconds_recorded( void ) const - { return bytes_received / aud_info.byte_rate(); } + //returns the integer number of seconds + //that the buffer can record + unsigned int seconds_recorded( void ) const + { return bytes_received / aud_info.byte_rate(); } - //returns the float number of seconds - //that the buffer can record - float fseconds_total( void ) const - { return ( float )(( float ) buf_size / - ( float ) aud_info.byte_rate()); } + //returns the float number of seconds + //that the buffer can record + float fseconds_total( void ) const + { return ( float )(( float ) buf_size / + ( float ) aud_info.byte_rate()); } - //returns the float number of seconds - //that has been recorded - float fseconds_recorded( void ) const - { return ( float )(( float ) bytes_received / - ( float ) aud_info.byte_rate()); } + //returns the float number of seconds + //that has been recorded + float fseconds_recorded( void ) const + { return ( float )(( float ) bytes_received / + ( float ) aud_info.byte_rate()); } - unsigned int total_samples( void ) const - { + unsigned int total_samples( void ) const + { - return ( aud_info.samples_in_seconds( fseconds_total() )); + return ( aud_info.samples_in_seconds( fseconds_total() )); - } + } - unsigned int samples_received( void ) const - { + unsigned int samples_received( void ) const + { - return ( aud_info.samples_in_bytes( bytes_received )); + return ( aud_info.samples_in_bytes( bytes_received )); - } + } - //returns a pointer to the audio buffer - BYTE * audio_buffer( void ) const - { return audio_data; } + //returns a pointer to the audio buffer + BYTE * audio_buffer( void ) const + { return audio_data; } - //frees memory and resets values. - void clear( void ); + //frees memory and resets values. + void clear( void ); - audio_format & audinfo( void ) { return aud_info; } + audio_format & audinfo( void ) { return aud_info; } - //discard audio data, resets values, - //but, instead of clear() which frees memory, - //reset the memory to the initial size, ready - //for receiving "new" audio data. - void reset( void ); + //discard audio data, resets values, + //but, instead of clear() which frees memory, + //reset the memory to the initial size, ready + //for receiving "new" audio data. + void reset( void ); - //truncates and discards unused memory. - //`buf_size' will be the same as `bytes_received'. - void truncate( void ) - { truncate_( ); }//TODO: fare truncate N bytes + //truncates and discards unused memory. + //`buf_size' will be the same as `bytes_received'. + void truncate( void ) + { truncate_( ); }//TODO: fare truncate N bytes - //if there is a buffer, discards current buffer - //memory and realloc a new memory buffer with a - //new size expressed in bytes. - void alloc_bytes( unsigned int ); + //if there is a buffer, discards current buffer + //memory and realloc a new memory buffer with a + //new size expressed in bytes. + void alloc_bytes( unsigned int ); - //if there is a buffer, discards current buffer - //memory and realloc a new memory buffer with a - //new size expressed in seconds, integer and float. - void alloc_seconds( unsigned int ); - void alloc_seconds( float ); + //if there is a buffer, discards current buffer + //memory and realloc a new memory buffer with a + //new size expressed in seconds, integer and float. + void alloc_seconds( unsigned int ); + void alloc_seconds( float ); - //resizes in bytes the current buffer, - //without discarding previsiously audio data received. - void resize_bytes( unsigned int ); + //resizes in bytes the current buffer, + //without discarding previsiously audio data received. + void resize_bytes( unsigned int ); - //resizes in seconds the current buffer, - //without discarding previsiously audio data received. - void resize_seconds( unsigned int ); - void resize_seconds( float ); + //resizes in seconds the current buffer, + //without discarding previsiously audio data received. + void resize_seconds( unsigned int ); + void resize_seconds( float ); @@ -300,25 +308,25 @@ class audio_membuffer : public audio_receiver, public audio_producer - - - // - // Inherited Functions from `audio_receiver' - // + + + // + // Inherited Functions from `audio_receiver' + // - void audio_receive( unsigned char *, unsigned int ); + void audio_receive( unsigned char *, unsigned int ); - - // - // Inherited Functions from `audio_buffer' - // + + // + // Inherited Functions from `audio_buffer' + // - unsigned int read( BYTE *, unsigned int ); - bool finished( void ); - + unsigned int read( BYTE *, unsigned int ); + bool finished( void ); + }; diff --git a/base/applications/sndrec32/audio_producer.cpp b/base/applications/sndrec32/audio_producer.cpp index 6afcbb4271b..805bec9e58e 100644 --- a/base/applications/sndrec32/audio_producer.cpp +++ b/base/applications/sndrec32/audio_producer.cpp @@ -1,12 +1,10 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/sndrec32/audio_producer.cpp - * PURPOSE: Audio Format - * PROGRAMMERS: Marco Pagliaricci + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ - -#include "StdAfx.h" +#include "stdafx.h" #include "audio_producer.hpp" diff --git a/base/applications/sndrec32/audio_producer.hpp b/base/applications/sndrec32/audio_producer.hpp index 8fe534854ca..678dad71d22 100644 --- a/base/applications/sndrec32/audio_producer.hpp +++ b/base/applications/sndrec32/audio_producer.hpp @@ -1,98 +1,113 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_producer.hpp + * PURPOSE: Audio producer + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + #ifndef _AUDIOAUDBUF__H_ #define _AUDIOAUDBUF__H_ #include "audio_def.hpp" +#include "audio_producer.hpp" + + + + _AUDIO_NAMESPACE_START_ + + + class audio_producer { - protected: - - - unsigned int bytes_played_; + protected: + + + unsigned int bytes_played_; - public: + public: - // - // Ctors - // + // + // Ctors + // - audio_producer ( ) : bytes_played_( 0 ) - { } + audio_producer ( ) : bytes_played_( 0 ), play_finished ( 0 ) + { } - + - - // - // Dtor - // + + // + // Dtor + // - virtual ~audio_producer( void ) - { } + virtual ~audio_producer( void ) + { } - // - // Public Functions - // + // + // Public Functions + // - //reads N bytes from the buffer - virtual unsigned int read( BYTE *, unsigned int ) = 0; + //reads N bytes from the buffer + virtual unsigned int read( BYTE *, unsigned int ) = 0; - virtual bool finished ( void ) = 0; + virtual bool finished ( void ) = 0; - unsigned int bytes_played( void ) const - { - return bytes_played_; - } + unsigned int bytes_played( void ) const + { + return bytes_played_; + } - void set_position( unsigned int pos ) - { - bytes_played_ = pos; - } + void set_position( unsigned int pos ) + { + bytes_played_ = pos; + } - void set_position_start( void ) - { - bytes_played_ = 0 ; - } + void set_position_start( void ) + { + bytes_played_ = 0 ; + } - void forward( unsigned int bytes ) - { - bytes_played_ += bytes ; - } + void forward( unsigned int bytes ) + { + bytes_played_ += bytes ; + } - void backward( unsigned int bytes ) - { - bytes_played_ += bytes ; - } + void backward( unsigned int bytes ) + { + bytes_played_ += bytes ; + } - void ( * play_finished )( void ); + void ( * play_finished )( void ); diff --git a/base/applications/sndrec32/audio_receiver.cpp b/base/applications/sndrec32/audio_receiver.cpp index 77b7c3f3d50..1d73e5c7ae5 100644 --- a/base/applications/sndrec32/audio_receiver.cpp +++ b/base/applications/sndrec32/audio_receiver.cpp @@ -1,17 +1,9 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory - * FILE: base/applications/sndrec32/audio_producer.cpp - * PURPOSE: Audio Format - * PROGRAMMERS: Marco Pagliaricci + * FILE: base/applications/sndrec32/audio_receiver.cpp + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ #include "stdafx.h" #include "audio_receiver.hpp" - - - - -_AUDIO_NAMESPACE_START_ - -_AUDIO_NAMESPACE_END_ diff --git a/base/applications/sndrec32/audio_receiver.hpp b/base/applications/sndrec32/audio_receiver.hpp index 6d6e693cee1..1d79aafa02e 100644 --- a/base/applications/sndrec32/audio_receiver.hpp +++ b/base/applications/sndrec32/audio_receiver.hpp @@ -1,3 +1,12 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_receiver.hpp + * PURPOSE: Audio receiver + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + #ifndef _AUDIORECEIVER_DEF__H_ #define _AUDIORECEIVER_DEF__H_ @@ -13,8 +22,7 @@ _AUDIO_NAMESPACE_START_ -//TODO: differenziare audio_receiver da audio_sink? -//TODO: creare un audio_receiver Tee + @@ -23,67 +31,64 @@ _AUDIO_NAMESPACE_START_ class audio_receiver { - // - // The `audio_wavein' class, while is - // recording audio, has to access to - // protected members of `audio_receiver' - // such as `bytes_received' protected - // variable. - // + // + // The `audio_wavein' class, while is + // recording audio, has to access to + // protected members of `audio_receiver' + // such as `bytes_received' protected + // variable. + // - friend class audio_wavein; + friend class audio_wavein; - protected: + protected: - unsigned int bytes_received; - unsigned int status; + unsigned int bytes_received; - public: - - - // - // Ctors - // + public: + + + // + // Ctors + // - audio_receiver( void ) - : bytes_received( 0 ) - { } + audio_receiver( void ) + : bytes_received( 0 ) + { } - // - // Dtor - // + // + // Dtor + // - virtual ~audio_receiver( void ) - { } + virtual ~audio_receiver( void ) + { } - - // - // Public Functions - // + + // + // Public Functions + // - virtual void audio_receive( unsigned char *, unsigned int ) = 0; - - //virtual void start_rec( void ) = 0; - //virtual void stop_rec( void ) = 0; + virtual void audio_receive( unsigned char *, unsigned int ) = 0; + - void set_b_received( unsigned int r ) - { bytes_received = r; } + void set_b_received( unsigned int r ) + { bytes_received = r; } }; diff --git a/base/applications/sndrec32/audio_resampler_acm.cpp b/base/applications/sndrec32/audio_resampler_acm.cpp index fa2617ac177..e1c3bc89644 100644 --- a/base/applications/sndrec32/audio_resampler_acm.cpp +++ b/base/applications/sndrec32/audio_resampler_acm.cpp @@ -1,24 +1,27 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/sndrec32/audio_resampler_acm.cpp - * PURPOSE: Audio Resampler - * PROGRAMMERS: Marco Pagliaricci + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ + #include "stdafx.h" #include "audio_resampler_acm.hpp" +#include + + _AUDIO_NAMESPACE_START_ - ///////////////////////////////////////// - /////// Private Functions //////// - ///////////////////////////////////////// +///////////////////////////////////////// +/////// Private Functions //////// +///////////////////////////////////////// - void - audio_resampler_acm::init_( void ) +void +audio_resampler_acm::init_( void ) { @@ -32,8 +35,8 @@ _AUDIO_NAMESPACE_START_ ZeroMemory( &wformat_dst, sizeof( WAVEFORMATEX )); - - + + // // Setting structures sizes // @@ -90,7 +93,7 @@ _AUDIO_NAMESPACE_START_ void - audio_resampler_acm::open( void ) +audio_resampler_acm::open( void ) { @@ -102,13 +105,13 @@ void // err = acmStreamOpen( &acm_stream, 0, &wformat_src, &wformat_dst, - 0, 0, 0, ACM_STREAMOPENF_NONREALTIME ); + 0, 0, 0, ACM_STREAMOPENF_NONREALTIME ); if ( err != MMSYSERR_NOERROR ) { //TODO: throw error - printf("acmOpen error: %i\n", err); + MessageBox( 0, _T("acmOpen error: %i"), _T("ERROR"), MB_ICONERROR ); } @@ -122,10 +125,10 @@ void (( float )audfmt_in.byte_rate() * ( float )buf_secs ); - - - - + + + + // // Calcs destination source buffer lenght // with help of ACM apis @@ -133,12 +136,13 @@ void err = acmStreamSize( acm_stream, src_buflen, &dst_buflen, ACM_STREAMSIZEF_SOURCE ); - + if ( err != MMSYSERR_NOERROR ) { //TODO: throw error - printf("acmSize error\n"); + MessageBox( 0, _T("acmStreamSize error"), _T("ERROR"), MB_ICONERROR ); + } @@ -153,7 +157,7 @@ void acm_header.fdwStatus = 0; acm_header.dwUser = 0; - + acm_header.pbSrc = ( LPBYTE ) new BYTE [ src_buflen ]; acm_header.cbSrcLength = src_buflen; acm_header.cbSrcLengthUsed = 0; @@ -178,7 +182,9 @@ void if ( err != MMSYSERR_NOERROR ) { //TODO: throw error - printf("prep. header error\n"); + MessageBox( 0, _T("acmStreamPrepareHeader error"), _T("ERROR"), MB_ICONERROR ); + + } @@ -196,7 +202,7 @@ void void - audio_resampler_acm::close( void ) +audio_resampler_acm::close( void ) { @@ -214,10 +220,10 @@ void err = acmStreamUnprepareHeader( acm_stream, &acm_header, 0L ); - + if ( err != MMSYSERR_NOERROR ) { - + // // Free buffer memory // @@ -243,7 +249,9 @@ void //TODO: throw error + MessageBox( 0, _T("acmStreamUnPrepareHeader error"), _T("ERROR"), MB_ICONERROR ); + } } @@ -281,6 +289,9 @@ void //TODO: throw error! + MessageBox( 0, _T("acmStreamClose error"), _T("ERROR"), MB_ICONERROR ); + + } @@ -328,7 +339,7 @@ void void - audio_resampler_acm::audio_receive( unsigned char * data, unsigned int size ) +audio_resampler_acm::audio_receive( unsigned char * data, unsigned int size ) { MMRESULT err; @@ -340,7 +351,7 @@ void if ( stream_opened ) { - + // // Copy audio data from extern to // internal source buffer @@ -357,7 +368,8 @@ void if ( err != MMSYSERR_NOERROR ) { //TODO: throw error - printf("acm convert error\n"); + MessageBox( 0, _T("acmStreamConvert error"), _T("ERROR"), MB_ICONERROR ); + } @@ -367,10 +379,9 @@ void // while(( ACMSTREAMHEADER_STATUSF_DONE & acm_header.fdwStatus ) == 0 ); + - - printf("Processed successfully %lu bytes of audio.\n", acm_header.cbDstLengthUsed ); - + // @@ -384,4 +395,13 @@ void } + + + + + + + + + _AUDIO_NAMESPACE_END_ diff --git a/base/applications/sndrec32/audio_resampler_acm.hpp b/base/applications/sndrec32/audio_resampler_acm.hpp index bce7b32ae9e..0f957364e12 100644 --- a/base/applications/sndrec32/audio_resampler_acm.hpp +++ b/base/applications/sndrec32/audio_resampler_acm.hpp @@ -1,3 +1,11 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_resampler_acm.hpp + * PURPOSE: Windows ACM wrapper + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + #ifndef _AUDIORESAMPLERACM__H_ #define _AUDIORESAMPLERACM__H_ @@ -18,73 +26,73 @@ _AUDIO_NAMESPACE_START_ class audio_resampler_acm : public audio_receiver { - private: - void init_( void ); + private: + void init_( void ); - protected: + protected: - HACMSTREAM acm_stream; - ACMSTREAMHEADER acm_header; - DWORD src_buflen; - DWORD dst_buflen; - bool stream_opened; + HACMSTREAM acm_stream; + ACMSTREAMHEADER acm_header; + DWORD src_buflen; + DWORD dst_buflen; + bool stream_opened; - audio_format audfmt_in; - audio_format audfmt_out; + audio_format audfmt_in; + audio_format audfmt_out; - float buf_secs; + float buf_secs; - WAVEFORMATEX wformat_src; - WAVEFORMATEX wformat_dst; + WAVEFORMATEX wformat_src; + WAVEFORMATEX wformat_dst; - public: + public: - // - // Ctors - // + // + // Ctors + // - audio_resampler_acm( audio_format fmt_in, audio_format fmt_out ) - : acm_stream( 0 ), src_buflen( 0 ), dst_buflen( 0 ), - stream_opened( false ), audfmt_in( fmt_in ), audfmt_out( fmt_out ), - buf_secs( _AUDIO_DEFAULT_BUFSECS ) + audio_resampler_acm( audio_format fmt_in, audio_format fmt_out ) + : acm_stream( 0 ), src_buflen( 0 ), dst_buflen( 0 ), + stream_opened( false ), audfmt_in( fmt_in ), audfmt_out( fmt_out ), + buf_secs( _AUDIO_DEFAULT_BUFSECS ) - { - + { + - init_(); - - - } + init_(); + + + } - - - // - // Dtor - // + + + // + // Dtor + // - ~audio_resampler_acm( void ) - { } + ~audio_resampler_acm( void ) + { } - // - // Public functions - // + // + // Public functions + // - void open( void ); - void close( void ); + void open( void ); + void close( void ); - void audio_receive( unsigned char *, unsigned int ); + void audio_receive( unsigned char *, unsigned int ); diff --git a/base/applications/sndrec32/audio_wavein.cpp b/base/applications/sndrec32/audio_wavein.cpp index 4d92f24e4e1..bb64191798e 100644 --- a/base/applications/sndrec32/audio_wavein.cpp +++ b/base/applications/sndrec32/audio_wavein.cpp @@ -1,10 +1,11 @@ -/* -* PROJECT: ReactOS Sound Record Application -* LICENSE: GPL - See COPYING in the top level directory -* FILE: base/applications/sndrec32/audio_wavein.cpp -* PURPOSE: Audio WaveIn -* PROGRAMMERS: Marco Pagliaricci -*/ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_wavein.cpp + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + #include "stdafx.h" #include "audio_wavein.hpp" @@ -14,11 +15,11 @@ _AUDIO_NAMESPACE_START_ - void - audio_wavein::init_( void ) +void +audio_wavein::init_( void ) { ZeroMemory(( LPVOID ) &wave_format, - sizeof( WAVEFORMATEX )); + sizeof( WAVEFORMATEX )); wave_format.cbSize = sizeof( WAVEFORMATEX ); @@ -26,6 +27,8 @@ _AUDIO_NAMESPACE_START_ recthread_id = 0; wakeup_recthread = 0; + data_flushed_event = 0; + buf_secs = _AUDIO_DEFAULT_WAVEINBUFSECS; @@ -34,7 +37,7 @@ _AUDIO_NAMESPACE_START_ void - audio_wavein::alloc_buffers_mem_( unsigned int buffs, float secs ) +audio_wavein::alloc_buffers_mem_( unsigned int buffs, float secs ) { @@ -65,9 +68,9 @@ void tot_size = onebuf_size * buffs; - - - + + + // // Allocs memory for the audio buffers // @@ -105,7 +108,7 @@ void void - audio_wavein::free_buffers_mem_( void ) +audio_wavein::free_buffers_mem_( void ) { @@ -128,7 +131,7 @@ void void - audio_wavein::init_headers_( void ) +audio_wavein::init_headers_( void ) { @@ -153,7 +156,7 @@ void // // This is the base address for one buffer // - + BYTE * buf_addr = main_buffer; @@ -173,7 +176,7 @@ void void - audio_wavein::prep_headers_( void ) +audio_wavein::prep_headers_( void ) { MMRESULT err; bool error = false; @@ -193,14 +196,14 @@ void for ( unsigned int i = 0; i < buffers; ++i ) { err = waveInPrepareHeader( wavein_handle, - &wave_headers[ i ], sizeof( WAVEHDR )); + &wave_headers[ i ], sizeof( WAVEHDR )); if ( err != MMSYSERR_NOERROR ) error = true; } - + if ( error ) MessageBox( 0, TEXT("waveInPrepareHeader Error."), 0, 0 ); @@ -210,7 +213,7 @@ void } void - audio_wavein::unprep_headers_( void ) +audio_wavein::unprep_headers_( void ) { MMRESULT err; bool error = false; @@ -231,14 +234,14 @@ void for ( unsigned int i = 0; i < buffers; ++i ) { err = waveInUnprepareHeader( wavein_handle, - &wave_headers[ i ], sizeof( WAVEHDR )); + &wave_headers[ i ], sizeof( WAVEHDR )); if ( err != MMSYSERR_NOERROR ) error = true; } - + if ( error ) MessageBox( 0, TEXT("waveInUnPrepareHeader Error."), 0, 0 ); @@ -247,7 +250,7 @@ void void - audio_wavein::add_buffers_to_driver_( void ) +audio_wavein::add_buffers_to_driver_( void ) { MMRESULT err; bool error = false; @@ -269,14 +272,14 @@ void for ( unsigned int i = 0; i < buffers; ++i ) { err = waveInAddBuffer( wavein_handle, - &wave_headers[ i ], sizeof( WAVEHDR )); + &wave_headers[ i ], sizeof( WAVEHDR )); if ( err != MMSYSERR_NOERROR ) error = true; } - + if ( error ) MessageBox( 0, TEXT("waveInAddBuffer Error."), 0, 0 ); @@ -286,7 +289,7 @@ void void - audio_wavein::close( void ) +audio_wavein::close( void ) { @@ -306,7 +309,7 @@ void // If the wavein is recording, // then stop recording and close it. // - + if ( status == WAVEIN_RECORDING ) stop_recording(); @@ -335,7 +338,7 @@ void // while (( waveInClose( wavein_handle )) - != MMSYSERR_NOERROR ) Sleep( 1 ); + != MMSYSERR_NOERROR ) Sleep( 1 ); @@ -352,12 +355,12 @@ void // init_(); - + } void - audio_wavein::open( void ) +audio_wavein::open( void ) { MMRESULT err; @@ -433,14 +436,14 @@ void recthread_handle = CreateThread( NULL, - 0, - audio_wavein::recording_procedure, - ( PVOID ) this, - 0, - &recthread_id - ); - + 0, + audio_wavein::recording_procedure, + ( PVOID ) this, + 0, + &recthread_id + ); + // // Checking thread handle @@ -476,12 +479,12 @@ void // err = waveInOpen( &wavein_handle, - 0, - &wave_format, - recthread_id, - 0, - CALLBACK_THREAD - ); + 0, + &wave_format, + recthread_id, + 0, + CALLBACK_THREAD + ); if ( err != MMSYSERR_NOERROR ) @@ -519,7 +522,7 @@ void void - audio_wavein::start_recording( void ) +audio_wavein::start_recording( void ) { MMRESULT err; @@ -528,7 +531,7 @@ void if (( status != WAVEIN_READY ) - && ( status != WAVEIN_STOP )) + && ( status != WAVEIN_STOP )) {} //TODO: throw error @@ -548,7 +551,7 @@ void // we will pass to the driver with our // audio informations, and buffer informations. // - + prep_headers_(); @@ -569,7 +572,7 @@ void // Signaling event for waking up // the recorder thread. // - + ev = SetEvent( wakeup_recthread ); @@ -580,13 +583,13 @@ void MessageBox( 0, TEXT("Event Error."), 0, 0 ); } - + // // Start recording // - + err = waveInStart( wavein_handle ); @@ -611,9 +614,9 @@ void void - audio_wavein::stop_recording( void ) +audio_wavein::stop_recording( void ) { - + MMRESULT err; DWORD wait; @@ -623,17 +626,10 @@ void return; - + status = WAVEIN_FLUSHING; - if ( data_flushed_event ) - wait = WaitForSingleObject( - data_flushed_event, INFINITE - ); - - - // // waveInReset will make all pending buffer as done. // @@ -653,7 +649,17 @@ void } + if ( data_flushed_event ) + wait = WaitForSingleObject( + data_flushed_event, INFINITE + ); + + + + + + // // Stop recording. // @@ -684,7 +690,7 @@ void - + @@ -697,7 +703,7 @@ void DWORD WINAPI - audio_wavein::recording_procedure( LPVOID arg ) +audio_wavein::recording_procedure( LPVOID arg ) { @@ -706,7 +712,7 @@ DWORD WINAPI DWORD wait; audio_wavein * _this = ( audio_wavein * ) arg; - + // @@ -716,8 +722,8 @@ DWORD WINAPI if ( _this == 0 ) return 0; - - + + // // The thread can go to sleep for now. // It will be wake up only when there is audio data @@ -726,25 +732,25 @@ DWORD WINAPI if ( _this->wakeup_recthread ) wait = WaitForSingleObject( - _this->wakeup_recthread, INFINITE - ); - + _this->wakeup_recthread, INFINITE + ); + // // If status of the `audio_wavein' object // is not ready or recording the thread can exit. // if (( _this->status != WAVEIN_READY ) && - ( _this->status != WAVEIN_RECORDING )) + ( _this->status != WAVEIN_RECORDING )) return 0; - + @@ -758,115 +764,116 @@ DWORD WINAPI switch ( msg.message ) { + + case MM_WIM_DATA: + + phdr = ( WAVEHDR * ) msg.lParam; - case MM_WIM_DATA: - - phdr = ( WAVEHDR * ) msg.lParam; - - if (( _this->status == WAVEIN_RECORDING ) - || ( _this->status == WAVEIN_FLUSHING )) - { - - // - // Flushes recorded audio data to - // the `audio_receiver' object. - // - - _this->audio_rcvd.audio_receive( - ( unsigned char * )phdr->lpData, - phdr->dwBytesRecorded - ); - - - // - // Updating `audio_receiver' total - // bytes received _AFTER_ calling - // `audio_receive' function. - // - - _this->audio_rcvd.bytes_received += - phdr->dwBytesRecorded; - - - + if (( _this->status == WAVEIN_RECORDING ) + || ( _this->status == WAVEIN_FLUSHING )) + { - // - // If status is not flushing data, then - // we can re-add the buffer for reusing it. - // Otherwise, if we are flushing pending data, - // we cannot re-add buffer because we don't need - // it anymore - // - if ( _this->status != WAVEIN_FLUSHING ) - { + if ( phdr->dwFlags & WHDR_DONE ) + { - // - // Let the audio driver reuse the buffer - // + // + // Flushes recorded audio data to + // the `audio_receiver' object. + // - waveInAddBuffer( _this->wavein_handle, - phdr, sizeof( WAVEHDR )); + _this->audio_rcvd.audio_receive( + ( unsigned char * )phdr->lpData, + phdr->dwBytesRecorded + ); + + // + // Updating `audio_receiver' total + // bytes received _AFTER_ calling + // `audio_receive' function. + // - } else { + _this->audio_rcvd.bytes_received += + phdr->dwBytesRecorded; + } + + // - // If we are flushing pending data, we have - // to prepare to stop recording. - // Set WAVEHDR flag to 0, and fires the event - // `data_flushed_event', that will wake up - // the main thread that is sleeping into - // wavein_in::stop_recording() member function, - // waiting the last `MM_WIM_DATA' message that - // contain pending data. + // If status is not flushing data, then + // we can re-add the buffer for reusing it. + // Otherwise, if we are flushing pending data, + // we cannot re-add buffer because we don't need + // it anymore // + if ( _this->status != WAVEIN_FLUSHING ) + { + // + // Let the audio driver reuse the buffer + // + waveInAddBuffer( _this->wavein_handle, + phdr, sizeof( WAVEHDR )); - phdr->dwFlags = 0; - SetEvent( _this->data_flushed_event ); + } else { + // + // If we are flushing pending data, we have + // to prepare to stop recording. + // Set WAVEHDR flag to 0, and fires the event + // `data_flushed_event', that will wake up + // the main thread that is sleeping into + // wavein_in::stop_recording() member function, + // waiting the last `MM_WIM_DATA' message that + // contain pending data. + // - // - // The recording is gooing to stop, so the - // recording thread can go to sleep! - // + phdr->dwFlags = 0; - wait = WaitForSingleObject( - _this->wakeup_recthread, INFINITE ); + SetEvent( _this->data_flushed_event ); - } + // + // The recording is gooing to stop, so the + // recording thread can go to sleep! + // - }//if WAVEIN_RECORDING || WAVEIN_FLUSHING + wait = WaitForSingleObject( + _this->wakeup_recthread, INFINITE ); + + } - break; + }//if WAVEIN_RECORDING || WAVEIN_FLUSHING + break; + + - case MM_WIM_CLOSE: + case MM_WIM_CLOSE: - // - // The thread can exit now. - // + // + // The thread can exit now. + // - return 0; + return 0; - break; + break; } //end switch( msg.message ) - + } //end while( GetMessage( ... )) return 0; diff --git a/base/applications/sndrec32/audio_wavein.hpp b/base/applications/sndrec32/audio_wavein.hpp index 3c73077729e..0288ea6824e 100644 --- a/base/applications/sndrec32/audio_wavein.hpp +++ b/base/applications/sndrec32/audio_wavein.hpp @@ -1,3 +1,11 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_wavein.hpp + * PURPOSE: Windows MM wave in abstraction + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + #ifndef _AUDIOWAVEIN_H_ #define _AUDIOWAVEIN_H_ @@ -15,10 +23,10 @@ _AUDIO_NAMESPACE_START_ enum audio_wavein_status { WAVEIN_NOTREADY, WAVEIN_READY, - WAVEIN_RECORDING, WAVEIN_ERR, - WAVEIN_STOP, WAVEIN_FLUSHING - - }; + WAVEIN_RECORDING, WAVEIN_ERR, + WAVEIN_STOP, WAVEIN_FLUSHING + + }; @@ -26,30 +34,30 @@ enum audio_wavein_status { WAVEIN_NOTREADY, WAVEIN_READY, class audio_wavein { - private: + private: - // - // The new recording thread sends message to this procedure - // about open recording, close, and sound data recorded - // + // + // The new recording thread sends message to this procedure + // about open recording, close, and sound data recorded + // - static DWORD WINAPI recording_procedure( LPVOID ); + static DWORD WINAPI recording_procedure( LPVOID ); - // - // When this event is signaled, then the previsiously created - // recording thread will wake up and start recording audio - // and will pass audio data to an `audio_receiver' object. - // + // + // When this event is signaled, then the previsiously created + // recording thread will wake up and start recording audio + // and will pass audio data to an `audio_receiver' object. + // - HANDLE wakeup_recthread; - HANDLE data_flushed_event; + HANDLE wakeup_recthread; + HANDLE data_flushed_event; - protected: + protected: //TODO: puts these structs in private?! @@ -57,207 +65,256 @@ class audio_wavein - // - // Audio wavein device stuff - // + // + // Audio wavein device stuff + // + + WAVEFORMATEX wave_format; + WAVEHDR * wave_headers; + HWAVEIN wavein_handle; + + + + + + audio_format aud_info; + + audio_receiver & audio_rcvd; + + + + // + // Audio Recorder Thread id + // + + DWORD recthread_id; + + + + + // + // Object status + // + + audio_wavein_status status; + + + + + + + + // + // How many seconds of audio + // can record the internal buffer + // before flushing audio data + // to the `audio_receiver' class? + // + + float buf_secs; + + + // + // The temporary buffers for the audio + // data incoming from the wavein device + // and its size, and its total number. + // - WAVEFORMATEX wave_format; - WAVEHDR * wave_headers; - HWAVEIN wavein_handle; + BYTE * main_buffer; + unsigned int mb_size; + unsigned int buffers; - - audio_format aud_info; - - audio_receiver & audio_rcvd; - - // - // Audio Recorder Thread id - // + // + // Protected Functions + // - DWORD recthread_id; + //initialize all structures and variables. + void init_( void ); - + void alloc_buffers_mem_( unsigned int, float ); + void free_buffers_mem_( void ); - // - // Object status - // + void init_headers_( void ); + void prep_headers_( void ); + void unprep_headers_( void ); + void add_buffers_to_driver_( void ); - audio_wavein_status status; + public: - // - // How many seconds of audio - // can record the internal buffer - // before flushing audio data - // to the `audio_receiver' class? - // - float buf_secs; + // + // Ctors + // + audio_wavein( + const audio_format & a_info, audio_receiver & a_receiver ) - // - // The temporary buffers for the audio - // data incoming from the wavein device - // and its size, and its total number. - // + : wave_headers( 0 ), + aud_info( a_info ), audio_rcvd( a_receiver ), + status( WAVEIN_NOTREADY ), main_buffer( 0 ), mb_size( 0 ), + buffers( _AUDIO_DEFAULT_WAVEINBUFFERS ) + { - BYTE * main_buffer; - unsigned int mb_size; + // + // Initializing internal wavein data + // + + + init_(); - unsigned int buffers; + aud_info = a_info; + } - // - // Protected Functions - // - //initialize all structures and variables. - void init_( void ); + // + // Dtor + // - void alloc_buffers_mem_( unsigned int, float ); - void free_buffers_mem_( void ); + ~audio_wavein( void ) + { + + //close(); TODO! - void init_headers_( void ); - void prep_headers_( void ); - void unprep_headers_( void ); - void add_buffers_to_driver_( void ); + } + // + // Public functions + // + void open( void ); + void close ( void ); + void start_recording( void ); + void stop_recording( void ); - public: - // - // Ctors - // + audio_wavein_status current_status ( void ) const + { + return status; + } - audio_wavein( - const audio_format & a_info, audio_receiver & a_receiver ) + float buffer_secs( void ) const + { return buf_secs; } - : wave_headers( 0 ), - aud_info( a_info ), audio_rcvd( a_receiver ), - status( WAVEIN_NOTREADY ), main_buffer( 0 ), mb_size( 0 ), - buffers( _AUDIO_DEFAULT_WAVEINBUFFERS ) - { - // - // Initializing internal wavein data - // - - - init_(); + void buffer_secs( float bsecs ) + { + // + // Some checking + // - aud_info = a_info; - } + if ( bsecs <= 0 ) + return; + // + // Set seconds lenght for each + // buffer. + // + buf_secs = bsecs; + } + unsigned int total_buffers( void ) const + { return buffers; } - // - // Dtor - // - ~audio_wavein( void ) - { - - //close(); TODO! + void total_buffers( unsigned int tot_bufs ) + { - } + // + // Some checking + // + if ( tot_bufs == 0 ) + return; + + // + // Sets the number of total buffers. + // - // - // Public functions - // + buffers = tot_bufs; + } - void open( void ); - void close ( void ); + audio_format format( void ) const + { return aud_info; } - void start_recording( void ); - void stop_recording( void ); + + BYTE * buf( void ) { return main_buffer; } + unsigned int bufsz( void ) { return mb_size; } - audio_wavein_status current_status ( void ) const - { - return status; - } - float buffer_secs( void ) const - { return buf_secs; } + unsigned int samplevalue_max( void ) + { + if ( aud_info.bits() == 16 ) + return (unsigned int )65535; - void buffer_secs( float bsecs ) - { - // - // Some checking - // + else if ( aud_info.bits() == 8 ) + return (unsigned int)255; - if ( bsecs <= 0 ) - return; + else + return 0; + } - // - // Set seconds lenght for each - // buffer. - // + unsigned tot_samples_buf( void ) + { - buf_secs = bsecs; - } + return aud_info.samples_in_bytes( mb_size ); - unsigned int total_buffers( void ) const - { return buffers; } + } + unsigned int nsample ( unsigned int nsamp ) + { - void total_buffers( unsigned int tot_bufs ) - { - // - // Some checking - // + unsigned int svalue; - if ( tot_bufs == 0 ) - return; - - // - // Sets the number of total buffers. - // - buffers = tot_bufs; - } + if ( aud_info.bits() == 16 ) + svalue = ( unsigned int ) abs( *(( short * ) (main_buffer + aud_info.bytes_in_samples( nsamp )))); + else if ( aud_info.bits() == 8 ) + svalue = (unsigned int)(( unsigned char * ) *(main_buffer + aud_info.bytes_in_samples( nsamp ))); + else + svalue = 0; - audio_format format( void ) const - { return aud_info; } + return svalue; + } - + }; diff --git a/base/applications/sndrec32/audio_waveout.cpp b/base/applications/sndrec32/audio_waveout.cpp index 18405b3d0b3..9850aa52083 100644 --- a/base/applications/sndrec32/audio_waveout.cpp +++ b/base/applications/sndrec32/audio_waveout.cpp @@ -1,12 +1,12 @@ -/* - * PROJECT: ReactOS Sound Record Application +/* PROJECT: ReactOS sndrec32 * LICENSE: GPL - See COPYING in the top level directory * FILE: base/applications/sndrec32/audio_waveout.cpp - * PURPOSE: Audio WaveOut - * PROGRAMMERS: Marco Pagliaricci + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) */ + #include "stdafx.h" #include "audio_waveout.hpp" @@ -531,7 +531,7 @@ audio_waveout::play( void ) // Reads the audio from the start. // - audio_buf.set_position_start(); + //audio_buf.set_position_start(); @@ -633,9 +633,36 @@ audio_waveout::stop( void ) MMRESULT err; + // + // Checks the current status + // + + if (( status != WAVEOUT_PLAYING ) + && ( status != WAVEOUT_FLUSHING ) + && ( status != WAVEOUT_PAUSED )) + { + // + // Do nothing. + // + + return; + + } + + + + // + // Sets a new status + // + status = WAVEOUT_STOP; + + // + // Flushes pending audio datas + // + err = waveOutReset( waveout_handle ); @@ -643,7 +670,7 @@ audio_waveout::stop( void ) if ( err != MMSYSERR_NOERROR ) { - MessageBox(0, _T("err waveout reset.\n"),_T("ERROR"), 0); + MessageBox(0, _T("err WaveOutReset.\n"),_T("ERROR"), 0); //TODO: throw error } @@ -658,12 +685,19 @@ audio_waveout::stop( void ) audio_buf.set_position_start(); - unprep_headers_(); - + // + // Cleans little buffers. + // + unprep_headers_(); init_headers_(); + + // + // Refreshes the status. + // + status = WAVEOUT_READY; } @@ -768,8 +802,9 @@ audio_waveout::playing_procedure( LPVOID arg ) // can go to sleep. // - if (( _this->status != WAVEOUT_PLAYING ) - && ( _this->wakeup_playthread )) + if (( _this->status != WAVEOUT_PLAYING ) && + ( _this->status != WAVEOUT_FLUSHING ) && + ( _this->wakeup_playthread )) { wait = WaitForSingleObject( @@ -777,34 +812,81 @@ audio_waveout::playing_procedure( LPVOID arg ) INFINITE ); } - - //TODO: quando il thread si risveglia, deve - //entrare nel prossimo if o no? o metter un else { ? + + // + // The playing thread doesn't have to sleep, + // so let's checking first if the little buffer + // has been sent to the audio driver (it has the + // WHDR_DONE flag). If it is, we can read new + // audio datas from the `audio_producer' object, + // refill the little buffer, and resend it to the + // driver with waveOutWrite( ) API. + // if ( phdr->dwFlags & WHDR_DONE ) { - - read_size = - _this->audio_buf.read( - ( BYTE * ) phdr->lpData, - phdr->dwBufferLength - ); + if ( _this->status == WAVEOUT_PLAYING ) + { + + // + // Here the thread is still playing a sound, + // so it can read new audio data from the + // `audio_producer' object. + // + + read_size = + _this->audio_buf.read( + ( BYTE * ) phdr->lpData, + phdr->dwBufferLength + ); + + } else + read_size = 0; + + + + // + // If the `audio_producer' object, has produced some + // audio data, so `read_size' will be > 0. + // if ( read_size ) { + + // + // Adjusts the correct effectively read size. + // + phdr->dwBufferLength = read_size; + // + // Before sending the little buffer to the + // driver, we have to remove the `WHDR_DONE' + // flag, because the little buffer now contain + // new audio data that have to be played. + // + phdr->dwFlags &= ~WHDR_DONE; + + // + // Plays the sound of the little buffer. + // + err = waveOutWrite( _this->waveout_handle, phdr, sizeof( WAVEHDR ) ); + + // + // Checking if any error has occured. + // + if ( err != MMSYSERR_NOERROR ) { MessageBox(0, _T("waveOutWrite Error"), 0, 0); @@ -812,15 +894,45 @@ audio_waveout::playing_procedure( LPVOID arg ) } - } else { + + + } else { // if ( read_size ) + + // - // Here `read_sizep' is 0 + // Here `read_size' is 0, so the + // `audio_producer' object, doesn't have any + // sound data to produce anymore. + // So, now we have to see the little buffer + // #ID to establishing what to do. // - if ( phdr->dwUser == ( _this->buffers - 1 )) + if ( phdr->dwUser == 0 ) { + + + // + // Here `read_size' is 0, and the buffer + // user data contain 0, so this is the + // first of N little buffers that came + // back with `WHDR_DONE' flag; this means + // that this is the last little buffer in + // which we have to read data to; so we + // can _STOP_ reading data from the + // `audio_producer' object: doing this is + // accomplished just setting the current + // status as "WAVEOUT_FLUSHING". + // + + _this->status = WAVEOUT_FLUSHING; + + + } else if ( phdr->dwUser == ( _this->buffers - 1 )) { + + + // // Here `read_size' and the buffer user // data, that contain a buffer ID#, @@ -849,7 +961,7 @@ audio_waveout::playing_procedure( LPVOID arg ) INFINITE ); - } + } //if ( phdr->dwUser == ( _this->buffers - 1 )) } //if read_size != 0 @@ -861,6 +973,7 @@ audio_waveout::playing_procedure( LPVOID arg ) case MM_WOM_CLOSE: + // // The thread can exit now. // @@ -886,4 +999,5 @@ audio_waveout::playing_procedure( LPVOID arg ) return 0; } + _AUDIO_NAMESPACE_END_ diff --git a/base/applications/sndrec32/audio_waveout.hpp b/base/applications/sndrec32/audio_waveout.hpp index fd8debe8168..a36518dc3f3 100644 --- a/base/applications/sndrec32/audio_waveout.hpp +++ b/base/applications/sndrec32/audio_waveout.hpp @@ -1,177 +1,242 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/audio_waveout.hpp + * PURPOSE: Windows MM wave out abstraction + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + + #ifndef _AUDIOWAVEOUT__H_ #define _AUDIOWAVEOUT__H_ #include "audio_def.hpp" #include "audio_format.hpp" + + #include "audio_producer.hpp" _AUDIO_NAMESPACE_START_ + + + + enum audio_waveout_status { WAVEOUT_NOTREADY, WAVEOUT_READY, - WAVEOUT_PLAYING, WAVEOUT_ERR, - WAVEOUT_PAUSED, WAVEOUT_STOP - - }; + WAVEOUT_PLAYING, WAVEOUT_FLUSHING, + WAVEOUT_PAUSED, WAVEOUT_STOP, + WAVEOUT_ERR, + + }; + + + class audio_waveout { - friend class audio_buffer; + friend class audio_buffer; + + + + private: + + + static DWORD WINAPI + playing_procedure( LPVOID ); + + + + HANDLE wakeup_playthread; + + + + + protected: + + + WAVEFORMATEX wave_format; + WAVEHDR * wave_headers; + HWAVEOUT waveout_handle; + + + + + + const audio_format & aud_info; + audio_producer & audio_buf; + + + + + + + // + // Audio Playing Thread id + // + DWORD playthread_id; - private: - static DWORD WINAPI playing_procedure( LPVOID ); + audio_waveout_status status; - - HANDLE wakeup_playthread; - - protected: + float buf_secs; - - WAVEFORMATEX wave_format; - WAVEHDR * wave_headers; - HWAVEOUT waveout_handle; - - - - const audio_format & aud_info; - audio_producer & audio_buf; + // + // The temporary buffers for the audio + // data outgoing to the waveout device + // and its size, and its total number. + // - + //base address for entire memory + BYTE * main_buffer; + //size in bytes for the entire memory + unsigned int mb_size; + //number of little buffers + unsigned int buffers; - // - // Audio Playing Thread id - // - DWORD playthread_id; + + // + // Protected Functions + // + void init_( void ); + void alloc_buffers_mem_( unsigned int, float ); + void free_buffers_mem_( void ); - audio_waveout_status status; + void init_headers_( void ); + void prep_headers_( void ); + void unprep_headers_( void ); - float buf_secs; + - // - // The temporary buffers for the audio - // data outgoing to the waveout device - // and its size, and its total number. - // + public: + // + // Ctors + // - //base address for entire memory - BYTE * main_buffer; + audio_waveout( const audio_format & aud_fmt, + audio_producer & a_buf ) - //size in bytes for the entire memory - unsigned int mb_size; + : wave_headers( 0 ), aud_info( aud_fmt ), + audio_buf( a_buf ), status( WAVEOUT_NOTREADY ), + main_buffer( 0 ), mb_size( 0 ), + buffers( _AUDIO_DEFAULT_WAVEOUTBUFFERS ) + { - //number of little buffers - unsigned int buffers; + // + // Initializing internal wavein data + // + + + init_(); + } - + - // - // Protected Functions - // + + // + // Dtor + // - void init_( void ); - void alloc_buffers_mem_( unsigned int, float ); - void free_buffers_mem_( void ); + ~audio_waveout( void ) + { } - void init_headers_( void ); - void prep_headers_( void ); - void unprep_headers_( void ); + // + // Public Functions + // - + void open ( void ); + void play ( void ); + void pause ( void ); + void stop ( void ); + void close ( void ); + audio_waveout_status current_status( void ) + { return status; } - public: - // - // Ctors - // - audio_waveout( const audio_format & aud_fmt, - audio_producer & a_buf ) - : wave_headers( 0 ), aud_info( aud_fmt ), - audio_buf( a_buf ), status( WAVEOUT_NOTREADY ), - main_buffer( 0 ), mb_size( 0 ), - buffers( _AUDIO_DEFAULT_WAVEOUTBUFFERS ) - { + BYTE * buf( void ) { return main_buffer; } + unsigned int bufsz( void ) { return mb_size; } - // - // Initializing internal wavein data - // - - - init_(); - } + unsigned int samplevalue_max( void ) + { - + if ( aud_info.bits() == 16 ) + return (unsigned int )65535; + else if ( aud_info.bits() == 8 ) + return (unsigned int)255; + else + return 0; + } - - // - // Dtor - // - ~audio_waveout( void ) - { } + unsigned tot_samples_buf( void ) + { + return aud_info.samples_in_bytes( mb_size ); - // - // Public Functions - // + } - void open ( void ); - void play ( void ); - void pause ( void ); - void stop ( void ); - void close ( void ); + unsigned int nsample ( unsigned int nsamp ) + { - audio_waveout_status current_status( void ) - { return status; } + unsigned int svalue; + if ( aud_info.bits() == 16 ) + svalue = ( unsigned int ) abs( *(( short * ) (main_buffer + aud_info.bytes_in_samples( nsamp )))); + else if ( aud_info.bits() == 8 ) + svalue = (unsigned int)(( unsigned char * ) *(main_buffer + aud_info.bytes_in_samples( nsamp ))); + else + svalue = 0; + return svalue; + } }; diff --git a/base/applications/sndrec32/bitmap1.bmp b/base/applications/sndrec32/bitmap1.bmp deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/base/applications/sndrec32/lang/de-DE.rc b/base/applications/sndrec32/lang/de-DE.rc new file mode 100644 index 00000000000..2259837c2f9 --- /dev/null +++ b/base/applications/sndrec32/lang/de-DE.rc @@ -0,0 +1,43 @@ +LANGUAGE LANG_GERMAN, SUBLANG_GERMAN + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Information zum Audiorecorder" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "ReactOS Audiorecorder, Version 1.0",IDC_STATIC,16,16,134,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,16,25,134,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "Datei" + BEGIN + MENUITEM "Neu", ID_NEW + MENUITEM "Öffnen...", ID_FILE_OPEN + MENUITEM "Speichern", ID_FILE_SAVE, GRAYED + MENUITEM "Speichern unter...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Beenden", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "Über...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "Audiorecorder" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END diff --git a/base/applications/sndrec32/lang/en-US.rc b/base/applications/sndrec32/lang/en-US.rc new file mode 100644 index 00000000000..56ba98cb68a --- /dev/null +++ b/base/applications/sndrec32/lang/en-US.rc @@ -0,0 +1,54 @@ +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Information about reactOS_sndrec32" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, version 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "File" + BEGIN + MENUITEM "New", ID_NEW + MENUITEM "Open...", ID_FILE_OPEN + MENUITEM "Save", ID_FILE_SAVE, GRAYED + MENUITEM "Save As...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Exit", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "About...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "Sound recorder" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END + +STRINGTABLE +BEGIN + IDS_STRPOS "Position: %.2f s" + IDS_STRDUR "Lenght: %.2f s" + IDS_STRBUF "Buffer: %.2f kb" + IDS_STRFMT "%.1f kHz %u bits" + IDS_STRMONO "mono" + IDS_STRSTEREO "stereo" + IDS_STRCHAN "%s" +END diff --git a/base/applications/sndrec32/lang/es-ES.rc b/base/applications/sndrec32/lang/es-ES.rc new file mode 100644 index 00000000000..77c7f3c6808 --- /dev/null +++ b/base/applications/sndrec32/lang/es-ES.rc @@ -0,0 +1,43 @@ +LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Acerca de Grabadora de sonidos ReactOS" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, version 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "Aceptar",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "Archivo" + BEGIN + MENUITEM "Nuevo", ID_NEW + MENUITEM "Abrir...", ID_FILE_OPEN + MENUITEM "Guardar", ID_FILE_SAVE, GRAYED + MENUITEM "Guardar como...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Salir", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "Acerca de...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "reactOS_sndrec32" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END diff --git a/base/applications/sndrec32/lang/it-IT.rc b/base/applications/sndrec32/lang/it-IT.rc new file mode 100644 index 00000000000..fca9da310d6 --- /dev/null +++ b/base/applications/sndrec32/lang/it-IT.rc @@ -0,0 +1,56 @@ +LANGUAGE LANG_ITALIAN, SUBLANG_ITALIAN + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Informazioni su reactOS_sndrec32" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, versione 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "File" + BEGIN + MENUITEM "Nuovo", ID_NEW + MENUITEM "Apri...", ID_FILE_OPEN + MENUITEM "Salva", ID_FILE_SAVE, GRAYED + MENUITEM "Salva con nome...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Esci", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "Informazioni...", ID__ABOUT + END +END + + + +STRINGTABLE +BEGIN + IDS_APP_TITLE "Registratore di suoni" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END + +STRINGTABLE +BEGIN + IDS_STRPOS "Posizione: %.2f s" + IDS_STRDUR "Durata: %.2f s" + IDS_STRBUF "Buffer: %.2f kb" + IDS_STRFMT "%.1f kHz %u bits" + IDS_STRMONO "mono" + IDS_STRSTEREO "stereo" + IDS_STRCHAN "%s" +END diff --git a/base/applications/sndrec32/lang/ja-JP.rc b/base/applications/sndrec32/lang/ja-JP.rc new file mode 100644 index 00000000000..e7efa6b72e4 --- /dev/null +++ b/base/applications/sndrec32/lang/ja-JP.rc @@ -0,0 +1,54 @@ +LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "reactOS_sndrec32 ‚ÉŠÖ‚·‚éî•ñ" +FONT 9, "MS UI Gothic", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, ƒo[ƒWƒ‡ƒ“ 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "ƒtƒ@ƒCƒ‹" + BEGIN + MENUITEM "V‹Kì¬", ID_NEW + MENUITEM "ŠJ‚­...", ID_FILE_OPEN + MENUITEM "ã‘‚«•Û‘¶", ID_FILE_SAVE, GRAYED + MENUITEM "–¼‘O‚ð‚‚¯‚Ä•Û‘¶...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "I—¹", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "ƒo[ƒWƒ‡ƒ“î•ñ...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "ƒTƒEƒ“ƒh ƒŒƒR[ƒ_" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END + +STRINGTABLE +BEGIN + IDS_STRPOS "ˆÊ’u: %.2f •b" + IDS_STRDUR "’·‚³: %.2f •b" + IDS_STRBUF "ƒoƒbƒtƒ@: %.2f kb" + IDS_STRFMT "%.1f kHz %u ƒrƒbƒg" + IDS_STRMONO "ƒ‚ƒmƒ‰ƒ‹" + IDS_STRSTEREO "ƒXƒeƒŒƒI" + IDS_STRCHAN "%s" +END diff --git a/base/applications/sndrec32/lang/sk-SK.rc b/base/applications/sndrec32/lang/sk-SK.rc new file mode 100644 index 00000000000..329c327037b --- /dev/null +++ b/base/applications/sndrec32/lang/sk-SK.rc @@ -0,0 +1,48 @@ +/* TRANSLATOR : Mário Kaèmár /Mario Kacmar/ aka Kario (kario@szm.sk) + * DATE OF TR.: 13-12-2009 + * LAST UPDATE: xx-xx-xxxx + */ + +LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Èo je reactOS_sndrec32" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, verzia 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Autorské práva (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "&Súbor" + BEGIN + MENUITEM "Nový", ID_NEW + MENUITEM "Otvori...", ID_FILE_OPEN + MENUITEM "Uloži", ID_FILE_SAVE, GRAYED + MENUITEM "Uloži ako...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Skonèi", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "È&o je...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "reactOS_sndrec32" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END diff --git a/base/applications/sndrec32/lang/uk-UA.rc b/base/applications/sndrec32/lang/uk-UA.rc new file mode 100644 index 00000000000..ee659ee0d9c --- /dev/null +++ b/base/applications/sndrec32/lang/uk-UA.rc @@ -0,0 +1,62 @@ +/* + * PROJECT: ReactOS Sound Volume Control + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/lang/uk-UA.rc + * PURPOSE: Ukraianian Language File for Volume Control + * TRANSLATOR: Sakara Yevhen + */ + + LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT + +IDC_REACTOS_SNDREC32 ACCELERATORS +BEGIN + "?", IDM_ABOUT, ASCII, ALT + "/", IDM_ABOUT, ASCII, ALT +END + +IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "²íôîðìàö³ÿ ïðî reactOS_sndrec32" +FONT 8, "MS Shell Dlg", 0, 0, 0x1 +BEGIN + ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 + LTEXT "reactOS_sndrec32, âåðñ³¿ 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX + LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 + DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP +END + +IDR_MENU1 MENU +BEGIN + POPUP "Ôàéë" + BEGIN + MENUITEM "Íîâèé", ID_NEW + MENUITEM "³äêðèòè...", ID_FILE_OPEN + MENUITEM "Çáåðåãòè", ID_FILE_SAVE, GRAYED + MENUITEM "Çáåðåãòè ÿê...", ID_FILE_SAVEAS, GRAYED + MENUITEM SEPARATOR + MENUITEM "Âèõ³ä", ID_EXIT + END + MENUITEM "todo1", 0 + MENUITEM "todo2", 0 + POPUP "?" + BEGIN + MENUITEM "Ïðî ïðîãðàìó...", ID__ABOUT + END +END + +STRINGTABLE +BEGIN + IDS_APP_TITLE "Çâóêîçàïèñ" + IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" +END + +STRINGTABLE +BEGIN + IDS_STRPOS "Ïîçèö³ÿ: %.2f s" + IDS_STRDUR "Äîâæèíà: %.2f s" + IDS_STRBUF "Áóôåð: %.2f kb" + IDS_STRFMT "%.1f kHz %u bits" + IDS_STRMONO "ìîíî" + IDS_STRSTEREO "ñòåðåî" + IDS_STRCHAN "%s" +END diff --git a/base/applications/sndrec32/reactOS_sndrec32.ico b/base/applications/sndrec32/reactOS_sndrec32.ico deleted file mode 100644 index d92d91e87d6..00000000000 Binary files a/base/applications/sndrec32/reactOS_sndrec32.ico and /dev/null differ diff --git a/base/applications/sndrec32/resource.h b/base/applications/sndrec32/resource.h index d73e5580fe7..016f603a536 100644 --- a/base/applications/sndrec32/resource.h +++ b/base/applications/sndrec32/resource.h @@ -1,14 +1,16 @@ //{{NO_DEPENDENCIES}} // Microsoft Visual C++ generated include file. -// Used by reactOS_sndrec32.rc +// Used by rsrc.rc // #define IDC_MYICON 2 +#define IDB_BITMAP2_STOP_DIS 8 #define IDD_REACTOS_SNDREC32_DIALOG 102 #define IDS_APP_TITLE 103 #define IDD_ABOUTBOX 103 #define IDM_ABOUT 104 #define IDI_REACTOS_SNDREC32 107 #define IDI_REACTOS_SNDREC32LL 107 +#define IDI_SNDREC32 107 #define IDI_SMALL 108 #define IDC_REACTOS_SNDREC32 109 #define IDR_MAINFRAME 128 @@ -21,6 +23,19 @@ #define IDB_BITMAP2_REC 137 #define IDI_ICON1 138 #define IDR_MENU1 139 +#define IDI_ICON2 140 +#define IDB_BITMAP2_END_DIS 141 +#define IDB_BITMAP2_PLAY_DIS 142 +#define IDB_BITMAP2_REC_DIS 143 +#define IDB_BITMAP2_START_DIS 144 +#define IDS_STRPOS 400 +#define IDS_STRDUR 401 +#define IDS_STRBUF 402 +#define IDS_STRFMT 403 +#define IDS_STRMONO 404 +#define IDS_STRSTEREO 405 +#define IDS_STRING406 406 +#define IDS_STRCHAN 406 #define ID_FILE_NEW 32771 #define ID_FILE_OPEN 32772 #define ID_FILE_SAVE 32773 @@ -36,7 +51,7 @@ #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NO_MFC 1 -#define _APS_NEXT_RESOURCE_VALUE 140 +#define _APS_NEXT_RESOURCE_VALUE 145 #define _APS_NEXT_COMMAND_VALUE 32779 #define _APS_NEXT_CONTROL_VALUE 1000 #define _APS_NEXT_SYMED_VALUE 110 diff --git a/base/applications/sndrec32/but_end.bmp b/base/applications/sndrec32/resources/but_end.bmp similarity index 100% rename from base/applications/sndrec32/but_end.bmp rename to base/applications/sndrec32/resources/but_end.bmp diff --git a/base/applications/sndrec32/resources/but_end_dis.bmp b/base/applications/sndrec32/resources/but_end_dis.bmp new file mode 100644 index 00000000000..a8ca0dd26c6 Binary files /dev/null and b/base/applications/sndrec32/resources/but_end_dis.bmp differ diff --git a/base/applications/sndrec32/but_play.bmp b/base/applications/sndrec32/resources/but_play.bmp similarity index 100% rename from base/applications/sndrec32/but_play.bmp rename to base/applications/sndrec32/resources/but_play.bmp diff --git a/base/applications/sndrec32/resources/but_play_dis.bmp b/base/applications/sndrec32/resources/but_play_dis.bmp new file mode 100644 index 00000000000..cd60e916661 Binary files /dev/null and b/base/applications/sndrec32/resources/but_play_dis.bmp differ diff --git a/base/applications/sndrec32/but_rec.bmp b/base/applications/sndrec32/resources/but_rec.bmp similarity index 100% rename from base/applications/sndrec32/but_rec.bmp rename to base/applications/sndrec32/resources/but_rec.bmp diff --git a/base/applications/sndrec32/resources/but_rec_dis.bmp b/base/applications/sndrec32/resources/but_rec_dis.bmp new file mode 100644 index 00000000000..5cc81c6147c Binary files /dev/null and b/base/applications/sndrec32/resources/but_rec_dis.bmp differ diff --git a/base/applications/sndrec32/but_start.bmp b/base/applications/sndrec32/resources/but_start.bmp similarity index 100% rename from base/applications/sndrec32/but_start.bmp rename to base/applications/sndrec32/resources/but_start.bmp diff --git a/base/applications/sndrec32/resources/but_start_dis.bmp b/base/applications/sndrec32/resources/but_start_dis.bmp new file mode 100644 index 00000000000..5b84ad45ac0 Binary files /dev/null and b/base/applications/sndrec32/resources/but_start_dis.bmp differ diff --git a/base/applications/sndrec32/but_stop.bmp b/base/applications/sndrec32/resources/but_stop.bmp similarity index 100% rename from base/applications/sndrec32/but_stop.bmp rename to base/applications/sndrec32/resources/but_stop.bmp diff --git a/base/applications/sndrec32/resources/but_stop_dis.bmp b/base/applications/sndrec32/resources/but_stop_dis.bmp new file mode 100644 index 00000000000..edf1a9e3fad Binary files /dev/null and b/base/applications/sndrec32/resources/but_stop_dis.bmp differ diff --git a/base/applications/sndrec32/resources/record-app.ico b/base/applications/sndrec32/resources/record-app.ico new file mode 100644 index 00000000000..1798d0791d7 Binary files /dev/null and b/base/applications/sndrec32/resources/record-app.ico differ diff --git a/base/applications/sndrec32/rsrc.rc b/base/applications/sndrec32/rsrc.rc new file mode 100644 index 00000000000..a07dd405852 --- /dev/null +++ b/base/applications/sndrec32/rsrc.rc @@ -0,0 +1,26 @@ +#include +#include "resource.h" + +LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL + +IDI_SNDREC32 ICON "resources/record-app.ico" + +IDB_BITMAP2_START BITMAP "resources/but_start.bmp" +IDB_BITMAP2_END BITMAP "resources/but_end.bmp" +IDB_BITMAP2_PLAY BITMAP "resources/but_play.bmp" +IDB_BITMAP2_STOP BITMAP "resources/but_stop.bmp" +IDB_BITMAP2_REC BITMAP "resources/but_rec.bmp" +IDB_BITMAP2_END_DIS BITMAP "resources/but_end_dis.bmp" +IDB_BITMAP2_PLAY_DIS BITMAP "resources/but_play_dis.bmp" +IDB_BITMAP2_REC_DIS BITMAP "resources/but_rec_dis.bmp" +IDB_BITMAP2_START_DIS BITMAP "resources/but_start_dis.bmp" +IDB_BITMAP2_STOP_DIS BITMAP "resources/but_stop_dis.bmp" + +#include "lang/de-DE.rc" +#include "lang/en-US.rc" +#include "lang/es-ES.rc" +#include "lang/it-IT.rc" +#include "lang/ja-JP.rc" +#include "lang/sk-SK.rc" +#include "lang/uk-UA.rc" + diff --git a/base/applications/sndrec32/small.ico b/base/applications/sndrec32/small.ico deleted file mode 100644 index 160edc053d7..00000000000 Binary files a/base/applications/sndrec32/small.ico and /dev/null differ diff --git a/base/applications/sndrec32/sndrec32.cpp b/base/applications/sndrec32/sndrec32.cpp index b1b6a30a214..3e0f4a720f7 100644 --- a/base/applications/sndrec32/sndrec32.cpp +++ b/base/applications/sndrec32/sndrec32.cpp @@ -1,69 +1,111 @@ -/* -* PROJECT: ReactOS Sound Record Application -* LICENSE: GPL - See COPYING in the top level directory -* FILE: base/applications/sndrec32/sndrec32.cpp -* PURPOSE: Application Startup -* PROGRAMMERS: Marco Pagliaricci -*/ - - +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/sndrec32.cpp + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + +#ifndef _UNICODE +#define gprintf _snprintf +#else +#define gprintf _snwprintf +#endif #include "stdafx.h" #include "sndrec32.h" -#include "kkaudio.hpp" + HINSTANCE hInst; TCHAR szTitle[MAX_LOADSTRING]; -TCHAR szWindowClass[MAX_LOADSTRING]; - +TCHAR szWindowClass[MAX_LOADSTRING]; -ATOM MyRegisterClass(HINSTANCE hInstance); -BOOL InitInstance(HINSTANCE, int); -LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); -INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM); +ATOM MyRegisterClass( HINSTANCE hInstance ); +ATOM MyRegisterClass_wave( HINSTANCE hInstance ); +BOOL InitInstance( HINSTANCE, int ); +BOOL InitInstance_wave( HWND, HINSTANCE, int ); +LRESULT CALLBACK WndProc( HWND, UINT, WPARAM, LPARAM ); +LRESULT CALLBACK WndProc_wave( HWND, UINT, WPARAM, LPARAM ); +BOOL win_first, wout_first; HWND main_win; +HWND wave_win; HWND slider; HWND buttons[5]; HBITMAP butbmps[5]; +HBITMAP butbmps_dis[5]; WNDPROC buttons_std_proc; BOOL butdisabled[5]; BOOL stopped_flag; BOOL isnew; +BOOL display_dur; DWORD slider_pos; WORD slider_min; WORD slider_max; -long long samples_max; +DWORD samples_max; OPENFILENAME ofn; TCHAR file_path[MAX_PATH]; -BOOL path_set; +TCHAR str_pos[MAX_LOADSTRING]; +TCHAR str_dur[MAX_LOADSTRING]; +TCHAR str_buf[MAX_LOADSTRING]; +TCHAR str_fmt[MAX_LOADSTRING]; +TCHAR str_chan[MAX_LOADSTRING]; + +TCHAR str_mono[10]; +TCHAR str_stereo[10]; -using snd::audio_membuffer; -using snd::audio_wavein; -using snd::audio_waveout; +BOOL path_set; -audio_membuffer * AUD_BUF; -audio_waveout * AUD_OUT; -audio_wavein * AUD_IN; +snd::audio_membuffer * AUD_BUF; +snd::audio_waveout * AUD_OUT; +snd::audio_wavein * AUD_IN; BOOL s_recording; +NONCLIENTMETRICS s_info; + + +RECT text_rect; +RECT text2_rect; +RECT cli; + + +INT_PTR CALLBACK AboutDlgProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) +{ + switch (msg) + { + case WM_COMMAND: + switch (LOWORD(wp)) + { + case IDOK: + EndDialog(hWnd, 0); + return TRUE; + } + break; + case WM_CLOSE: + EndDialog(hWnd, 0); + return TRUE; + } + return FALSE; +} + + + int APIENTRY _tWinMain(HINSTANCE hInstance, - HINSTANCE hPrevInstance, - LPTSTR lpCmdLine, - int nCmdShow) + HINSTANCE hPrevInstance, + LPTSTR lpCmdLine, + int nCmdShow) { UNREFERENCED_PARAMETER(hPrevInstance); @@ -72,15 +114,44 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, MSG msg; HACCEL hAccelTable; + + s_info.cbSize = sizeof( NONCLIENTMETRICS ); InitCommonControls(); + win_first = wout_first = FALSE; + text_rect.left = REFRESHA_X; + text_rect.top = REFRESHA_Y; + text_rect.right = REFRESHA_CX; + text_rect.bottom = REFRESHA_CY; + text2_rect.left = REFRESHB_X; + text2_rect.top = REFRESHB_Y; + text2_rect.right = REFRESHB_CX; + text2_rect.bottom = REFRESHB_CY; + // + // Retrieving defaul system font, and others + // system informations. + // + + SystemParametersInfo( + SPI_GETNONCLIENTMETRICS, + sizeof( NONCLIENTMETRICS ), + &s_info, + 0 + ); + // + // Set font size + // + s_info.lfMenuFont.lfHeight = 14; + // + // Inits buttons bitmaps + // butbmps[0] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_START )); butbmps[1] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_END )); @@ -88,10 +159,17 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, butbmps[3] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_STOP )); butbmps[4] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_REC )); + butbmps_dis[0] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_START_DIS )); + butbmps_dis[1] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_END_DIS )); + butbmps_dis[2] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_PLAY_DIS )); + butbmps_dis[3] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_STOP_DIS )); + butbmps_dis[4] = LoadBitmap( hInstance, MAKEINTRESOURCE( IDB_BITMAP2_REC_DIS )); - + // + // Inits audio devices and buffers + // snd::audio_membuffer AUD_buffer( snd::A44100_16BIT_STEREO ); snd::audio_waveout AUD_waveout( snd::A44100_16BIT_STEREO, AUD_buffer ); @@ -107,77 +185,118 @@ int APIENTRY _tWinMain(HINSTANCE hInstance, AUD_OUT = &AUD_waveout; AUD_BUF = &AUD_buffer; - + // + // Inits slider default parameters + // slider_pos = 0; slider_min = 0; - slider_max = 32767; + slider_max = SLIDER_W; stopped_flag = FALSE; path_set = FALSE; isnew = TRUE; - - + display_dur = TRUE; samples_max = AUD_buffer.total_samples(); + s_recording = false; + + // + // Inits strings + // + LoadString( hInstance, + IDS_APP_TITLE, szTitle, MAX_LOADSTRING ); + LoadString( hInstance, + IDC_REACTOS_SNDREC32, szWindowClass, MAX_LOADSTRING ); - LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING); - LoadString(hInstance, IDC_REACTOS_SNDREC32, szWindowClass, MAX_LOADSTRING); - MyRegisterClass(hInstance); - - - if (!InitInstance (hInstance, nCmdShow)) - { - MessageBox(0, 0, TEXT("CreateWindow() Error!"), 0); - return FALSE; - } - hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_REACTOS_SNDREC32)); + LoadString( hInstance, + IDS_STRPOS, str_pos, MAX_LOADSTRING ); + LoadString( hInstance, + IDS_STRDUR, str_dur, MAX_LOADSTRING ); + LoadString( hInstance, + IDS_STRBUF, str_buf, MAX_LOADSTRING ); + LoadString( hInstance, + IDS_STRFMT, str_fmt, MAX_LOADSTRING ); + LoadString( hInstance, + IDS_STRCHAN, str_chan, MAX_LOADSTRING ); - s_recording = false; + LoadString( hInstance, + IDS_STRMONO, str_mono, 10 ); + LoadString( hInstance, + IDS_STRSTEREO, str_stereo, 10 ); + // + // Registers sndrec32 window class + // - AUD_wavein.open(); - AUD_waveout.open(); + MyRegisterClass( hInstance ); + MyRegisterClass_wave( hInstance ); + + if ( !InitInstance( hInstance, nCmdShow )) + { + MessageBox( 0, TEXT( "CreateWindow() Error!" ), TEXT( "ERROR" ), MB_ICONERROR ); + return FALSE; + } + + // + // Loads key accelerators + // + hAccelTable = LoadAccelerators(hInstance, + MAKEINTRESOURCE( IDC_REACTOS_SNDREC32 )); + + // + // Starts main loop + // - while (GetMessage(&msg, NULL, 0, 0)) + while ( GetMessage( &msg, NULL, 0, 0 )) { - if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) + if ( !TranslateAccelerator( msg.hwnd, hAccelTable, &msg )) { - TranslateMessage(&msg); - DispatchMessage(&msg); + TranslateMessage( &msg ); + DispatchMessage( &msg ); } } - AUD_waveout.close(); - AUD_wavein.close(); + if ( wout_first ) + { + AUD_waveout.close(); + + } - AUD_buffer.clear(); + if ( win_first ) + { + AUD_wavein.close(); - return (int) msg.wParam; + } + + AUD_buffer.clear(); + + return ( int )msg.wParam; } -ATOM MyRegisterClass(HINSTANCE hInstance) +ATOM +MyRegisterClass( HINSTANCE hInstance ) { WNDCLASSEX wcex; @@ -188,57 +307,248 @@ ATOM MyRegisterClass(HINSTANCE hInstance) wcex.cbClsExtra = 0; wcex.cbWndExtra = 0; wcex.hInstance = hInstance; - wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_REACTOS_SNDREC32LL)); - wcex.hCursor = LoadCursor(NULL, IDC_ARROW); - wcex.hbrBackground = (HBRUSH)(16); - wcex.lpszMenuName = MAKEINTRESOURCE(IDR_MENU1); + wcex.hIcon = LoadIcon( hInstance, MAKEINTRESOURCE( IDI_SNDREC32 )); + wcex.hCursor = LoadCursor( NULL, IDC_ARROW ); + wcex.hbrBackground = GetSysColorBrush(COLOR_BTNFACE); + wcex.lpszMenuName = MAKEINTRESOURCE( IDR_MENU1 ); wcex.lpszClassName = szWindowClass; - wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_REACTOS_SNDREC32LL)); + wcex.hIconSm = LoadIcon( wcex.hInstance, MAKEINTRESOURCE( IDI_SNDREC32 )); + + + return RegisterClassEx( &wcex ); +} + +BOOL +InitInstance( HINSTANCE hInstance, int nCmdShow ) +{ + HWND hWnd; + + hInst = hInstance; + + hWnd = CreateWindow( + szWindowClass, + szTitle, + WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX, + CW_USEDEFAULT, + CW_USEDEFAULT, + MAINWINDOW_W, + MAINWINDOW_H, + NULL, NULL, + hInstance, NULL + ); + + if (!hWnd) + { + return FALSE; + } + + ShowWindow(hWnd, nCmdShow); + UpdateWindow(hWnd); + main_win = hWnd; - return RegisterClassEx(&wcex); + + return TRUE; } -BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) + + + + +ATOM +MyRegisterClass_wave( HINSTANCE hInstance ) +{ + WNDCLASSEX wcex; + + wcex.cbSize = sizeof( WNDCLASSEX ); + + wcex.style = CS_HREDRAW | CS_VREDRAW; + wcex.lpfnWndProc = WndProc_wave; + wcex.cbClsExtra = 0; + wcex.cbWndExtra = 0; + wcex.hInstance = hInstance; + wcex.hIcon = 0; + wcex.hCursor = LoadCursor( NULL, IDC_ARROW ); + wcex.hbrBackground = ( HBRUSH )GetStockObject( BLACK_BRUSH ); + wcex.lpszMenuName = 0; + wcex.lpszClassName = TEXT( "sndrec32_wave" ); + wcex.hIconSm = 0; + + + return RegisterClassEx( &wcex ); +} + +BOOL +InitInstance_wave( HWND f, HINSTANCE hInstance, int nCmdShow ) +{ + HWND hWnd; + + hInst = hInstance; + + hWnd = CreateWindow( + TEXT( "sndrec32_wave" ), + TEXT(""), + WS_DLGFRAME|WS_VISIBLE|WS_CHILD, + WAVEBAR_X, + WAVEBAR_Y, + WAVEBAR_CX, + WAVEBAR_CY, + f, ( HMENU ) 8, + hInstance, 0 + ); + + if ( !hWnd ) + { + return FALSE; + } + + ShowWindow( hWnd, nCmdShow ); + UpdateWindow( hWnd ); + + wave_win = hWnd; + + + return TRUE; +} + + +LRESULT CALLBACK +WndProc_wave( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ) { - HWND hWnd; - - hInst = hInstance; - - hWnd = CreateWindow( - szWindowClass, - szTitle, - WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX, - CW_USEDEFAULT, - CW_USEDEFAULT, - MAINWINDOW_W, - MAINWINDOW_H, - NULL, NULL, - hInstance, NULL - ); - - if (!hWnd) + PAINTSTRUCT ps; + HDC hdc; + HPEN pen; + + + + unsigned int max_h = ( cli.bottom / 2 ); + unsigned int samples; + unsigned int x, line_h; + + + + switch ( message ) { - return FALSE; - } - ShowWindow(hWnd, nCmdShow); - UpdateWindow(hWnd); - main_win = hWnd; + case WM_CREATE: - return TRUE; + GetClientRect( hWnd, &cli ); + + break; + + + case WM_PAINT: + + // + // Initialize hdc objects + // + + hdc = BeginPaint( hWnd, &ps ); + + pen = ( HPEN ) CreatePen( PS_SOLID, 1, WAVEBAR_COLOR ); + + SelectObject( hdc, ( HBRUSH )pen ); + + if ( AUD_OUT->current_status() == snd::WAVEOUT_PLAYING ) + { + + samples = AUD_OUT->tot_samples_buf(); + + + for ( unsigned int i = 0; i < WAVEBAR_CX; ++i ) + { + + x = ( i * samples ) / WAVEBAR_CX; + + line_h = ( abs(AUD_OUT->nsample( x )) * max_h ) / AUD_OUT->samplevalue_max(); + + + if ( line_h ) + { + MoveToEx( hdc, i, max_h, 0 ); + LineTo( hdc, i, max_h - ( line_h * 2 )); + LineTo( hdc, i, max_h + ( line_h * 2 )); + } else + SetPixel( hdc, i, max_h, WAVEBAR_COLOR ); + + } + + + } else if ( AUD_IN->current_status() == snd::WAVEIN_RECORDING ) { + + + samples = AUD_IN->tot_samples_buf(); + + + for ( unsigned int i = 0; i < WAVEBAR_CX; ++i ) + { + + x = ( i * samples ) / WAVEBAR_CX; + + line_h = ( AUD_IN->nsample( x ) * max_h ) / AUD_IN->samplevalue_max(); + + + if ( line_h ) + { + MoveToEx( hdc, i, max_h, 0 ); + LineTo( hdc, i, max_h - ( line_h * 2 )); + LineTo( hdc, i, max_h + ( line_h * 2 )); + } else + SetPixel( hdc, i, max_h, WAVEBAR_COLOR ); + + } + + + } else { + + // + // In standby mode draw a simple line. + // + + MoveToEx( hdc, 0, cli.bottom / 2, 0 ); + LineTo( hdc, WAVEBAR_CX, cli.bottom / 2 ); + + } + + + DeleteObject( pen ); + + EndPaint( hWnd, &ps ); + + break; + + + case WM_USER: + + + break; + + + default: + return DefWindowProc( hWnd, message, wParam, lParam ); + + + } + + + return 0; + } -// -LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) + +LRESULT CALLBACK +WndProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam ) { int wmId, wmEvent; - RECT rect; + TCHAR str_tmp[MAX_LOADSTRING]; PAINTSTRUCT ps; HDC hdc; + HFONT font; + long long slid_samp = 0; + // @@ -251,31 +561,49 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) MessageBox( 0, TEXT("Buffer Error"), 0, 0 ); return 1; } + - - switch (message) + switch ( message ) { case WM_CREATE: + // + // Creating the wave bar + // + + if ( !InitInstance_wave( hWnd, hInst, SW_SHOWNORMAL )) + { + MessageBox( + 0, + TEXT( "CreateWindow() Error!" ), + TEXT( "ERROR" ), + MB_ICONERROR + ); + + return FALSE; + } + + + // // Creating ALL the buttons // - + for ( int i = 0; i < 5; ++ i ) { buttons[i] = CreateWindow( - TEXT("button"), - TEXT(""), - WS_CHILD|WS_VISIBLE| BS_BITMAP, - BUTTONS_CX + ( i * (BUTTONS_W+((i == 0)?0:BUTTONS_SPACE))), - BUTTONS_CY, BUTTONS_W, BUTTONS_H, hWnd, - (HMENU)i, hInst, 0 - ); + TEXT("button"), + TEXT(""), + WS_CHILD|WS_VISIBLE|BS_BITMAP, + BUTTONS_CX + ( i * (BUTTONS_W+((i == 0)?0:BUTTONS_SPACE))), + BUTTONS_CY, BUTTONS_W, BUTTONS_H, hWnd, + (HMENU)i, hInst, 0 + ); if ( !buttons[i] ) { @@ -284,38 +612,36 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) } - butdisabled[ i ] = TRUE; - - // // Realize the button bmp image // SendMessage(buttons[i], BM_SETIMAGE, ( WPARAM )IMAGE_BITMAP, ( LPARAM )butbmps[i]); - - + UpdateWindow( buttons[i] ); + disable_but( i ); + } // // Creating the SLIDER window // - + slider = CreateWindow( - TRACKBAR_CLASS, - TEXT(""), - WS_CHILD|WS_VISIBLE|TBS_NOTICKS|TBS_HORZ|TBS_ENABLESELRANGE, - SLIDER_CX, SLIDER_CY, SLIDER_W, SLIDER_H, hWnd, - (HMENU)SLIDER_ID, hInst, 0 - ); + TRACKBAR_CLASS, + TEXT(""), + WS_CHILD|WS_VISIBLE|TBS_NOTICKS|TBS_HORZ|TBS_ENABLESELRANGE, + SLIDER_CX, SLIDER_CY, SLIDER_W, SLIDER_H, hWnd, + ( HMENU )SLIDER_ID, hInst, 0 + ); if ( !slider ) { - MessageBox(0, 0, TEXT("CreateWindow() Error!"), 0); + MessageBox( 0, 0, TEXT( "CreateWindow() Error!" ), 0 ); return FALSE; } @@ -325,25 +651,20 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) // Sets slider limits // - //slider_min = 0; - //slider_max = 100; SendMessage( - slider, - TBM_SETRANGE, - (WPARAM)TRUE, - (LPARAM)MAKELONG(slider_min,slider_max) + slider, + TBM_SETRANGE, + ( WPARAM )TRUE, + ( LPARAM )MAKELONG( slider_min, slider_max ) ); UpdateWindow( slider ); + enable_but( BUTREC_ID ); - // - // Enables REC button. - // - - butdisabled[ BUTREC_ID ] = FALSE; + EnableWindow( slider, FALSE ); @@ -352,43 +673,63 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) - // - // Implements slider logic - // + // + // Implements slider logic + // case WM_HSCROLL : + { + switch( LOWORD( wParam )) { - switch( LOWORD( wParam )) - { + + case SB_ENDSCROLL: + break; - case SB_ENDSCROLL: - break; + case SB_PAGERIGHT: + case SB_PAGELEFT: + case TB_THUMBTRACK: - case SB_PAGERIGHT: - case SB_PAGELEFT: - case TB_THUMBTRACK: - slider_pos = SendMessage(slider, TBM_GETPOS, 0, 0); - break; - } + // + // If the user touch the slider bar, + // set the audio start position properly + // + + + slider_pos = SendMessage( slider, TBM_GETPOS, 0, 0 ); + + slid_samp = ( __int64 )slider_pos * ( __int64 )samples_max; + + AUD_BUF->set_position( + AUD_BUF->audinfo().bytes_in_samples( + ( unsigned int )( slid_samp / ( __int64 )slider_max ) + ) + ); + + InvalidateRect( hWnd, &text_rect, TRUE ); + break; + } + break; + } - case WM_COMMAND: - wmId = LOWORD(wParam); - wmEvent = HIWORD(wParam); + case WM_COMMAND: - if (( wmId >= 0 ) && ( wmId < 5 ) && (butdisabled[wmId] == TRUE)) + wmId = LOWORD( wParam ); + wmEvent = HIWORD( wParam ); + + if (( wmId >= 0 ) && ( wmId < 5 ) && ( butdisabled[wmId] == TRUE )) break; - switch (wmId) + switch ( wmId ) { case ID_NEW: @@ -407,21 +748,35 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) AUD_BUF->reset(); - butdisabled[ BUTREC_ID ] = FALSE; - butdisabled[ BUTSTART_ID ] = TRUE; - butdisabled[ BUTEND_ID ] = TRUE; - butdisabled[ BUTSTOP_ID ] = TRUE; - butdisabled[ BUTPLAY_ID ] = TRUE; + enable_but( BUTREC_ID ); + disable_but( BUTSTART_ID ); + disable_but( BUTEND_ID ); + disable_but( BUTSTOP_ID ); + disable_but( BUTPLAY_ID ); + samples_max = AUD_BUF->total_samples(); slider_pos = 0; SendMessage(slider, TBM_SETPOS, (WPARAM) TRUE, (LPARAM) slider_pos); - } + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVEAS, MF_GRAYED ); + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVE, MF_GRAYED ); + + isnew = TRUE; + display_dur = TRUE; + ZeroMemory( file_path, MAX_PATH ); + EnableWindow( slider, FALSE ); + InvalidateRect( hWnd, &text_rect, TRUE ); + InvalidateRect( hWnd, &text2_rect, TRUE ); + + } + + + break; @@ -442,17 +797,25 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) if( GetOpenFileName( &ofn )) { open_wav( file_path ); - } + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVE, MF_ENABLED ); + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVEAS, MF_ENABLED ); - break; + EnableWindow( slider, TRUE ); + } + InvalidateRect( hWnd, &text_rect, TRUE ); + InvalidateRect( hWnd, &text2_rect, TRUE ); + break; - case ID__ABOUT: + case ID__ABOUT: + + DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, AboutDlgProc); + return TRUE; break; @@ -466,14 +829,14 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) ofn.lpstrFilter = TEXT("Audio Files (*.wav)\0*.wav\0All Files (*.*)\0*.*\0"); ofn.lpstrFile = file_path; ofn.nMaxFile = MAX_PATH; - + ofn.lpstrDefExt = TEXT("wav"); - + if ( GetSaveFileName ( &ofn )) { - write_wav( file_path ); + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVE, MF_ENABLED ); } break; @@ -488,24 +851,39 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) // case BUTSTART_ID: - Beep(200,200); + + AUD_BUF->set_position_start(); + + slider_pos = 0; + + SendMessage( slider, TBM_SETPOS, (WPARAM) TRUE, (LPARAM) slider_pos ); + break; case BUTEND_ID: - Beep(300,200); + DestroyWindow( hWnd ); break; case BUTPLAY_ID: + + if ( wout_first == false ) + { + AUD_OUT->open(); + wout_first = true; + } + AUD_OUT->play(); - butdisabled[ BUTSTART_ID ] = TRUE; - butdisabled[ BUTEND_ID ] = TRUE; - butdisabled[ BUTREC_ID ] = TRUE; - butdisabled[ BUTPLAY_ID ] = TRUE; + disable_but( BUTSTART_ID ); + disable_but( BUTEND_ID ); + disable_but( BUTREC_ID ); + disable_but( BUTPLAY_ID ); + SetTimer( hWnd, 1, 250, 0 ); + SetTimer( hWnd, WAVEBAR_TIMERID, WAVEBAR_TIMERTIME, 0 ); break; @@ -516,17 +894,12 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) AUD_IN->stop_recording(); - butdisabled[ BUTSTART_ID ] = FALSE; - butdisabled[ BUTEND_ID ] = FALSE; - butdisabled[ BUTREC_ID ] = FALSE; - butdisabled[ BUTPLAY_ID ] = FALSE; - - + // // Resetting slider position // - + slider_pos = 0; SendMessage(slider, TBM_SETPOS, (WPARAM) TRUE, (LPARAM) slider_pos); @@ -535,41 +908,70 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) EnableMenuItem((HMENU)IDR_MENU1, ID_FILE_SAVEAS, MF_ENABLED ); + + enable_but( BUTSTART_ID ); + enable_but( BUTEND_ID ); + enable_but( BUTREC_ID ); + enable_but( BUTPLAY_ID ); + + EnableMenuItem( GetMenu( hWnd ), ID_FILE_SAVEAS, MF_ENABLED ); + EnableWindow( slider, TRUE ); + + display_dur = FALSE; + + AUD_BUF->truncate(); + + InvalidateRect( hWnd, &text_rect, TRUE ); + InvalidateRect( wave_win, 0, TRUE ); + + } else { AUD_OUT->pause(); - butdisabled[ BUTSTART_ID ] = FALSE; - butdisabled[ BUTEND_ID ] = FALSE; - butdisabled[ BUTREC_ID ] = FALSE; - butdisabled[ BUTPLAY_ID ] = FALSE; + enable_but( BUTSTART_ID ); + enable_but( BUTEND_ID ); + enable_but( BUTREC_ID ); + enable_but( BUTPLAY_ID ); } KillTimer( hWnd, 1 ); + KillTimer( hWnd, WAVEBAR_TIMERID ); + InvalidateRect( hWnd, &text_rect, TRUE ); + break; case BUTREC_ID: + if ( win_first == false ) + { + AUD_IN->open(); + win_first = true; + } + s_recording = TRUE; samples_max = AUD_BUF->total_samples(); AUD_IN->start_recording(); - butdisabled[ BUTSTOP_ID ] = FALSE; - butdisabled[ BUTSTART_ID ] = TRUE; - butdisabled[ BUTEND_ID ] = TRUE; - butdisabled[ BUTREC_ID ] = TRUE; - butdisabled[ BUTPLAY_ID ] = TRUE; + enable_but( BUTSTOP_ID ); - isnew = FALSE; + disable_but( BUTSTART_ID ); + disable_but( BUTEND_ID ); + disable_but( BUTREC_ID ); + disable_but( BUTPLAY_ID ); + isnew = FALSE; + EnableWindow( slider, FALSE ); SetTimer( hWnd, 1, 150, 0 ); + SetTimer( hWnd, WAVEBAR_TIMERID, WAVEBAR_TIMERTIME, 0 ); + break; @@ -581,19 +983,41 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) case WM_TIMER: - if ( stopped_flag ) + switch ( wParam ) { - KillTimer(hWnd, 1); - slider_pos = 0; - butdisabled[ BUTPLAY_ID ] = FALSE; + case 1: + if ( stopped_flag ) + { + KillTimer( hWnd, 1 ); + KillTimer( hWnd, WAVEBAR_TIMERID ); + slider_pos = 0; + + enable_but( BUTPLAY_ID ); + + stopped_flag = FALSE; + } + - stopped_flag = FALSE; - } - SendMessage(slider, TBM_SETPOS, (WPARAM) TRUE, (LPARAM) slider_pos); + SendMessage( + slider, + TBM_SETPOS, + ( WPARAM ) TRUE, + ( LPARAM ) slider_pos + ); + + InvalidateRect( hWnd, &text_rect, TRUE ); + break; + + case WAVEBAR_TIMERID: + InvalidateRect( wave_win, 0, TRUE ); + SendMessage( wave_win, WM_USER, 0, 0 ); + break; + + } break; @@ -601,27 +1025,207 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) case WM_PAINT: - InvalidateRect( hWnd, &rect, TRUE ); + hdc = BeginPaint(hWnd, &ps); + + font = CreateFontIndirect( &s_info.lfMenuFont ); + + + SelectObject( hdc, font ); + + SetBkMode( hdc, TRANSPARENT ); + + + if ( AUD_IN->current_status() == snd::WAVEIN_RECORDING ) + { + gprintf( + str_tmp, + MAX_LOADSTRING, + str_pos, + ( float )(( float )AUD_BUF->bytes_recorded( ) / ( float )AUD_BUF->audinfo().byte_rate( )) + ); + + } else if ( AUD_OUT->current_status() == snd::WAVEOUT_PLAYING ) { + + gprintf( + str_tmp, + MAX_LOADSTRING, + str_pos, + ( float )(( float )AUD_BUF->bytes_played() / ( float )AUD_BUF->audinfo().byte_rate( )) + ); + + } else { + + gprintf( + str_tmp, + MAX_LOADSTRING, + str_pos, + ( float )(((( float )slider_pos * ( float )samples_max ) / ( float )slider_max ) / ( float )AUD_BUF->audinfo().sample_rate()) + ); + } + + + ExtTextOut( hdc, STRPOS_X, STRPOS_Y, ETO_OPAQUE, + 0, str_tmp, _tcslen( str_tmp ), 0 ); + + + if ( display_dur ) + { + + gprintf( str_tmp, MAX_LOADSTRING, str_dur, + AUD_BUF->fseconds_total( )); + + } else { + + + gprintf( str_tmp, MAX_LOADSTRING, str_dur, + AUD_BUF->fseconds_recorded( )); + } + + + + ExtTextOut( hdc, STRDUR_X, STRDUR_Y, ETO_OPAQUE, + 0, str_tmp, _tcslen( str_tmp ), 0 ); + + + + gprintf( + str_tmp, + MAX_LOADSTRING, + str_buf, + ( float )(( float )AUD_BUF->mem_size() / 1024.0f ) + ); + + + ExtTextOut( hdc, STRBUF_X, STRBUF_Y, ETO_OPAQUE, + 0, str_tmp, _tcslen( str_tmp ), 0 ); + + + + gprintf( + str_tmp, + MAX_LOADSTRING, + str_fmt, + ( float )(( float )AUD_BUF->audinfo().sample_rate() / 1000.0f ), + AUD_BUF->audinfo().bits(), + AUD_BUF->audinfo().channels() == 2 ? str_mono : str_stereo + ); + + + ExtTextOut( hdc, STRFMT_X, STRFMT_Y, ETO_OPAQUE, + 0, str_tmp, _tcslen( str_tmp ), 0 ); + + + + gprintf( + str_tmp, + MAX_LOADSTRING, + str_chan, + AUD_BUF->audinfo().channels() == 2 ? str_stereo : str_mono + ); + + + ExtTextOut( hdc, STRCHAN_X, STRCHAN_Y, ETO_OPAQUE, + 0, str_tmp, _tcslen( str_tmp ), 0 ); + + + + DeleteObject( font ); + EndPaint(hWnd, &ps); + + break; + + + + case WM_DESTROY: PostQuitMessage(0); break; default: - return DefWindowProc(hWnd, message, wParam, lParam); + return DefWindowProc( hWnd, message, wParam, lParam ); } return 0; } + + + +void l_play_finished ( void ) +{ + + stopped_flag = true; + + + enable_but( BUTSTART_ID ); + enable_but( BUTEND_ID ); + enable_but( BUTREC_ID ); + enable_but( BUTPLAY_ID ); + + InvalidateRect( wave_win, 0, TRUE ); + +} + +void l_audio_arrival ( unsigned int samples_arrival ) +{ + + + slider_pos += ( DWORD ) (( slider_max * samples_arrival ) / samples_max ); + + +} + +void l_buffer_resized ( unsigned int new_size ) +{ + + + + + +} + +VOID enable_but( DWORD id ) +{ + + butdisabled[ id ] = FALSE; + + SendMessage(buttons[ id ], BM_SETIMAGE, ( WPARAM )IMAGE_BITMAP, ( LPARAM )butbmps[ id ]); + + +} +VOID disable_but( DWORD id ) +{ + + butdisabled[ id ] = TRUE; + + SendMessage(buttons[ id ], BM_SETIMAGE, ( WPARAM )IMAGE_BITMAP, ( LPARAM )butbmps_dis[ id ]); + +} + + + + + + + + + + + + + + + + BOOL open_wav( TCHAR * f ) { HANDLE file; - + riff_hdr r; wave_hdr w; data_chunk d; @@ -632,30 +1236,27 @@ BOOL open_wav( TCHAR * f ) DWORD is_read = 0; - - file = CreateFile( - f, - GENERIC_READ, - 0, 0, - OPEN_EXISTING, - FILE_ATTRIBUTE_NORMAL, - 0 - ); + f, + GENERIC_READ, + 0, 0, + OPEN_EXISTING, + FILE_ATTRIBUTE_NORMAL, + 0 + ); if ( !file ) { MessageBox( - main_win, - TEXT("Cannot open file. CreateFile() error."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot open file. CreateFile() error."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); return FALSE; - } @@ -663,21 +1264,15 @@ BOOL open_wav( TCHAR * f ) if ( !b ) { - DWORD t = GetLastError(); - TCHAR p[100]; - wsprintf(p,TEXT("Errore n: %i"),t); - MessageBox( - main_win, - //TEXT("Cannot read RIFF header."), - p, - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot read RIFF header."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); CloseHandle( file ); return FALSE; - } @@ -686,17 +1281,15 @@ BOOL open_wav( TCHAR * f ) if ( !b ) { - MessageBox( - main_win, - TEXT("Cannot read WAVE header."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot read WAVE header."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); CloseHandle( file ); return FALSE; - } @@ -705,51 +1298,31 @@ BOOL open_wav( TCHAR * f ) if ( !b ) { - MessageBox( - main_win, - TEXT("Cannot read WAVE subchunk."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot read WAVE subchunk."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); CloseHandle( file ); return FALSE; - } bytes_recorded_in_wav = r.chunksize - 36; - /* - unsigned char * gg = (unsigned char*)&bytes_recorded_in_wav; - - gg[0] = gg[3]; - gg[1] = gg[2]; - - bytes_recorded_in_wav = (DWORD) *gg; - - - - TCHAR p [100]; - wsprintf(p,TEXT("bytes: %i"),bytes_recorded_in_wav); - MessageBox(0,p,0,0); - - */ - if ( bytes_recorded_in_wav == 0 ) { - MessageBox( - main_win, - TEXT("Cannot read file. No audio data."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot read file. No audio data."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); CloseHandle( file ); return FALSE; - } @@ -765,12 +1338,12 @@ BOOL open_wav( TCHAR * f ) b = ReadFile( - file, - ( LPVOID ) AUD_BUF->audio_buffer(), - bytes_recorded_in_wav, - &is_read, - 0 - ); + file, + ( LPVOID ) AUD_BUF->audio_buffer(), + bytes_recorded_in_wav, + &is_read, + 0 + ); AUD_BUF->set_b_received( bytes_recorded_in_wav ); @@ -778,29 +1351,26 @@ BOOL open_wav( TCHAR * f ) if (( !b ) || ( is_read != bytes_recorded_in_wav )) { - MessageBox( - main_win, - TEXT("Cannot read file. Error reading audio data."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR - ); + main_win, + TEXT("Cannot read file. Error reading audio data."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR + ); CloseHandle( file ); AUD_BUF->reset(); return FALSE; - } CloseHandle( file ); - butdisabled[ BUTPLAY_ID ] = FALSE; - butdisabled[ BUTSTOP_ID ] = FALSE; - butdisabled[ BUTEND_ID ] = FALSE; - butdisabled[ BUTSTART_ID ] = FALSE; - butdisabled[ BUTREC_ID ] = FALSE; - + enable_but( BUTPLAY_ID ); + enable_but( BUTSTOP_ID ); + enable_but( BUTSTART_ID ); + enable_but( BUTEND_ID ); + enable_but( BUTREC_ID ); samples_max = AUD_BUF->samples_received(); @@ -813,12 +1383,12 @@ BOOL open_wav( TCHAR * f ) BOOL - write_wav( TCHAR * f ) +write_wav( TCHAR * f ) { HANDLE file; - - + + DWORD written; BOOL is_writ; int i; @@ -829,44 +1399,44 @@ BOOL file = CreateFile( - f, - GENERIC_WRITE, - 0, 0, - CREATE_NEW, - FILE_ATTRIBUTE_NORMAL, - 0 - ); + f, + GENERIC_WRITE, + 0, 0, + CREATE_NEW, + FILE_ATTRIBUTE_NORMAL, + 0 + ); if ( !file ) { i = MessageBox( - main_win, - TEXT("File already exist. Overwrite it?"), - TEXT("Warning"), - MB_YESNO|MB_ICONQUESTION - ); + main_win, + TEXT("File already exist. Overwrite it?"), + TEXT("Warning"), + MB_YESNO|MB_ICONQUESTION + ); if ( i == IDYES ) { file = CreateFile( - f, - GENERIC_WRITE, - 0, 0, - CREATE_ALWAYS, - FILE_ATTRIBUTE_NORMAL, - 0 - ); + f, + GENERIC_WRITE, + 0, 0, + CREATE_ALWAYS, + FILE_ATTRIBUTE_NORMAL, + 0 + ); if ( !file ) { MessageBox( - main_win, - TEXT("File Error, CreateFile() failed."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR + main_win, + TEXT("File Error, CreateFile() failed."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR ); @@ -880,15 +1450,15 @@ BOOL } - - + + r.magic = 0x46464952; - + r.format = 0x45564157; r.chunksize = 36 + AUD_BUF->bytes_recorded(); - + w.Subchunkid = 0x20746d66; w.Subchunk1Size = 16; @@ -899,7 +1469,7 @@ BOOL w.BlockAlign = AUD_BUF->audinfo().block_align(); w.BitsPerSample = AUD_BUF->audinfo().bits(); - + d.subc = 0x61746164; d.subc_size = AUD_BUF->bytes_recorded(); @@ -909,18 +1479,18 @@ BOOL // Writing headers // - + is_writ = WriteFile( file, ( LPCVOID ) &r, sizeof ( r ), &written, 0 ); if ( !is_writ ) { MessageBox( - main_win, - TEXT("File Error, WriteFile() failed."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR + main_win, + TEXT("File Error, WriteFile() failed."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR ); - + CloseHandle( file ); return FALSE; @@ -933,12 +1503,12 @@ BOOL if ( !is_writ ) { MessageBox( - main_win, - TEXT("File Error, WriteFile() failed."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR + main_win, + TEXT("File Error, WriteFile() failed."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR ); - + CloseHandle( file ); return FALSE; @@ -952,12 +1522,12 @@ BOOL if ( !is_writ ) { MessageBox( - main_win, - TEXT("File Error, WriteFile() failed."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR + main_win, + TEXT("File Error, WriteFile() failed."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR ); - + CloseHandle( file ); return FALSE; @@ -965,26 +1535,26 @@ BOOL } - + is_writ = WriteFile( - file, - ( LPCVOID ) AUD_BUF->audio_buffer(), - AUD_BUF->bytes_recorded(), - &written, - 0 - ); + file, + ( LPCVOID ) AUD_BUF->audio_buffer(), + AUD_BUF->bytes_recorded(), + &written, + 0 + ); if ( !is_writ ) { MessageBox( - main_win, - TEXT("File Error, WriteFile() failed."), - TEXT("ERROR"), - MB_OK|MB_ICONERROR + main_win, + TEXT("File Error, WriteFile() failed."), + TEXT("ERROR"), + MB_OK|MB_ICONERROR ); CloseHandle( file ); - + return FALSE; } @@ -994,49 +1564,3 @@ BOOL return TRUE; } - - - -void l_play_finished ( void ) -{ - - stopped_flag = true; - - - -} - -void l_audio_arrival ( unsigned int samples_arrival ) -{ - - - slider_pos += (DWORD) (( slider_max * samples_arrival ) / samples_max ); - - -} - -void l_buffer_resized ( unsigned int new_size ) -{ - - - - - -} - -VOID enable_but( DWORD id ) -{ - - - - - -} -VOID disable_but( DWORD id ) -{ - - - -} - - diff --git a/base/applications/sndrec32/sndrec32.h b/base/applications/sndrec32/sndrec32.h index 530e53e93a6..2f3dfa46de8 100644 --- a/base/applications/sndrec32/sndrec32.h +++ b/base/applications/sndrec32/sndrec32.h @@ -1,6 +1,16 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/sndrec.h + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + #pragma once #include "resource.h" +#include "audio_api.hpp" @@ -21,48 +31,87 @@ #define BUTSTOP_ID 3 #define BUTREC_ID 4 #define SLIDER_ID 5 +#define WAVEBAR_ID 6 #define BUTTONS_H 30 #define BUTTONS_W 60 #define BUTTONS_CY 100 -#define BUTTONS_CX CONTROLS_CX +#define BUTTONS_CX ( CONTROLS_CX ) #define BUTTONS_SPACE 5 + #define SLIDER_CX CONTROLS_CX #define SLIDER_CY 65 #define SLIDER_H 30 #define SLIDER_W 320 +#define STRPOS_X 240 +#define STRPOS_Y 5 + +#define STRDUR_X ( STRPOS_X ) +#define STRDUR_Y ( STRPOS_Y + 13 ) + +#define STRBUF_X ( STRDUR_X ) +#define STRBUF_Y ( STRDUR_Y + 13 ) + + +#define STRFMT_X 10 +#define STRFMT_Y ( STRPOS_Y ) + +#define STRCHAN_X ( STRFMT_X ) +#define STRCHAN_Y ( STRFMT_Y + 13 ) + + +#define WAVEBAR_X ( CONTROLS_CX + 90 ) +#define WAVEBAR_Y ( STRPOS_Y ) +#define WAVEBAR_CX 130 +#define WAVEBAR_CY 50 + +#define WAVEBAR_TIMERID 2 +#define WAVEBAR_TIMERTIME 80 + +#define WAVEBAR_COLOR ( RGB( 0, 0, 255 )) + +#define REFRESHA_X ( STRPOS_X ) +#define REFRESHA_Y ( STRPOS_Y ) +#define REFRESHA_CX ( REFRESHA_X + 100 ) +#define REFRESHA_CY ( REFRESHA_Y + 55 ) + + +#define REFRESHB_X ( STRFMT_X ) +#define REFRESHB_Y ( STRFMT_Y ) +#define REFRESHB_CX ( REFRESHB_X + 85 ) +#define REFRESHB_CY ( REFRESHB_Y + 55 ) struct riff_hdr { - DWORD magic; - DWORD chunksize; - DWORD format; + DWORD magic; + DWORD chunksize; + DWORD format; }; struct wave_hdr { - - DWORD Subchunkid; - DWORD Subchunk1Size; - WORD AudioFormat; - WORD NumChannels; - DWORD SampleRate; - DWORD ByteRate; - WORD BlockAlign; - WORD BitsPerSample; + + DWORD Subchunkid; + DWORD Subchunk1Size; + WORD AudioFormat; + WORD NumChannels; + DWORD SampleRate; + DWORD ByteRate; + WORD BlockAlign; + WORD BitsPerSample; }; struct data_chunk { - DWORD subc; - DWORD subc_size; - //unsigned char data[]; + DWORD subc; + DWORD subc_size; + //unsigned char data[]; }; diff --git a/base/applications/sndrec32/sndrec32.rbuild b/base/applications/sndrec32/sndrec32.rbuild index 291555117e4..f101a14ba3a 100644 --- a/base/applications/sndrec32/sndrec32.rbuild +++ b/base/applications/sndrec32/sndrec32.rbuild @@ -4,10 +4,10 @@ . winmm user32 - kernel32 msacm32 comctl32 comdlg32 + gdi32 audio_format.cpp audio_membuffer.cpp audio_producer.cpp @@ -16,5 +16,5 @@ audio_wavein.cpp audio_waveout.cpp sndrec32.cpp - sndrec32.rc + rsrc.rc diff --git a/base/applications/sndrec32/sndrec32.rc b/base/applications/sndrec32/sndrec32.rc deleted file mode 100644 index e4de736ec11..00000000000 --- a/base/applications/sndrec32/sndrec32.rc +++ /dev/null @@ -1,179 +0,0 @@ -// Microsoft Visual C++ generated resource script. -// -#include "resource.h" - -#define APSTUDIO_READONLY_SYMBOLS -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 2 resource. -// -#ifndef APSTUDIO_INVOKED -#include "targetver.h" -#endif -#define APSTUDIO_HIDDEN_SYMBOLS -#include "windows.h" -#undef APSTUDIO_HIDDEN_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -#undef APSTUDIO_READONLY_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -// Italiano (Italia) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ITA) -#ifdef _WIN32 -LANGUAGE LANG_ITALIAN, SUBLANG_ITALIAN -#pragma code_page(1252) -#endif //_WIN32 - -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_REACTOS_SNDREC32LL ICON "reactOS_sndrec32.ico" -IDI_SMALL ICON "small.ico" - -///////////////////////////////////////////////////////////////////////////// -// -// Accelerator -// - -IDC_REACTOS_SNDREC32 ACCELERATORS -BEGIN - "?", IDM_ABOUT, ASCII, ALT - "/", IDM_ABOUT, ASCII, ALT -END - - -///////////////////////////////////////////////////////////////////////////// -// -// Dialog -// - -IDD_ABOUTBOX DIALOGEX 0, 0, 196, 75 -STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Informazioni su reactOS_sndrec32" -FONT 8, "MS Shell Dlg", 0, 0, 0x1 -BEGIN - ICON 128,IDC_REACTOS_SNDREC32,19,14,21,20 - LTEXT "reactOS_sndrec32, versione 1.0",IDC_STATIC,56,16,114,8,SS_NOPREFIX - LTEXT "Copyright (C) 2009",IDC_STATIC,55,25,114,8 - DEFPUSHBUTTON "OK",IDOK,139,54,50,14,WS_GROUP -END - - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - IDD_ABOUTBOX, DIALOG - BEGIN - LEFTMARGIN, 7 - RIGHTMARGIN, 189 - TOPMARGIN, 7 - BOTTOMMARGIN, 68 - END -END -#endif // APSTUDIO_INVOKED - - -#ifdef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// TEXTINCLUDE -// - -1 TEXTINCLUDE -BEGIN - "resource.h\0" -END - -2 TEXTINCLUDE -BEGIN - "#ifndef APSTUDIO_INVOKED\r\n" - "#include ""targetver.h""\r\n" - "#endif\r\n" - "#define APSTUDIO_HIDDEN_SYMBOLS\r\n" - "#include ""windows.h""\r\n" - "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n" - "\0" -END - -3 TEXTINCLUDE -BEGIN - "\r\n" - "\0" -END - -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// Bitmap -// - -IDB_BITMAP2_START BITMAP "but_start.bmp" -IDB_BITMAP2_END BITMAP "but_end.bmp" -IDB_BITMAP2_PLAY BITMAP "but_play.bmp" -IDB_BITMAP2_STOP BITMAP "but_stop.bmp" -IDB_BITMAP2_REC BITMAP "but_rec.bmp" - -///////////////////////////////////////////////////////////////////////////// -// -// Menu -// - -IDR_MENU1 MENU -BEGIN - POPUP "File" - BEGIN - MENUITEM "New", ID_NEW - MENUITEM "Open...", ID_FILE_OPEN - MENUITEM "Save", ID_FILE_SAVE, GRAYED - MENUITEM "Save As...", ID_FILE_SAVEAS - MENUITEM SEPARATOR - MENUITEM "Exit", ID_EXIT - END - MENUITEM "todo1", 0 - MENUITEM "todo2", 0 - POPUP "?" - BEGIN - MENUITEM "About...", ID__ABOUT - END -END - - -///////////////////////////////////////////////////////////////////////////// -// -// String Table -// - -STRINGTABLE -BEGIN - IDS_APP_TITLE "reactOS_sndrec32" - IDC_REACTOS_SNDREC32 "REACTOS_SNDREC32" -END - -#endif // Italiano (Italia) resources -///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// - - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED - diff --git a/base/applications/sndrec32/stdafx.h b/base/applications/sndrec32/stdafx.h index 69ca28669ec..89eb838f464 100644 --- a/base/applications/sndrec32/stdafx.h +++ b/base/applications/sndrec32/stdafx.h @@ -1,23 +1,23 @@ -// stdafx.h : file di inclusione per file di inclusione di sistema standard -// o file di inclusione specifici del progetto utilizzati di frequente, ma -// modificati raramente -// - #pragma once #include "targetver.h" -#define WIN32_LEAN_AND_MEAN // Escludere gli elementi utilizzati di rado dalle intestazioni di Windows -// File di intestazione di Windows: -#include -#include -#include +#define WIN32_LEAN_AND_MEAN + + +#ifdef _UNICODE + #define _sntprintf_s _snwprintf_s +#else + #define _sntprintf_s _snprintf_s +#endif + -// File di intestazione Runtime C #include -#include -#include +#include #include +#include - -// TODO: fare riferimento qui alle intestazioni aggiuntive richieste dal programma + +#include +#include +#include diff --git a/base/applications/sndrec32/targetver.h b/base/applications/sndrec32/targetver.h index 92426c66d27..400af640339 100644 --- a/base/applications/sndrec32/targetver.h +++ b/base/applications/sndrec32/targetver.h @@ -1,24 +1,27 @@ +/* PROJECT: ReactOS sndrec32 + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/sndrec32/targetver.h + * PURPOSE: Sound recording + * PROGRAMMERS: Marco Pagliaricci (irc: rendar) + */ + + + #pragma once -// Le macro seguenti definiscono la piattaforma minima richiesta. La piattaforma minima richiesta -// è costituita dalla versione meno recente di Windows, Internet Explorer e così via contenenti le funzionalità necessarie per eseguire -// l'applicazione. Le macro consentono di attivare tutte le funzionalità disponibili nelle versioni delle piattaforme fino -// alla versione specificata compresa. -// Modificare le seguenti definizioni se è necessario utilizzare come destinazione una piattaforma prima di quelle specificate di seguito. -// Fare riferimento a MSDN per informazioni aggiornate sui valori corrispondenti per le differenti piattaforme. -#ifndef WINVER // Specifica che la piattaforma minima richiesta è Windows Vista. -#define WINVER 0x0600 // Modificare il valore con quello appropriato per altre versioni di Windows. +#ifndef WINVER +#define WINVER 0x0600 #endif -#ifndef _WIN32_WINNT // Specifica che la piattaforma minima richiesta è Windows Vista. -#define _WIN32_WINNT 0x0600 // Modificare il valore con quello appropriato per altre versioni di Windows. +#ifndef _WIN32_WINNT +#define _WIN32_WINNT 0x0600 #endif -#ifndef _WIN32_WINDOWS // Specifica che la piattaforma minima richiesta è Windows 98. -#define _WIN32_WINDOWS 0x0410 // Modificare il valore con quello appropriato per Windows Me o versioni successive. +#ifndef _WIN32_WINDOWS +#define _WIN32_WINDOWS 0x0410 #endif -#ifndef _WIN32_IE // Specifica che la piattaforma minima richiesta è Internet Explorer 7.0. -#define _WIN32_IE 0x0700 // Modificare il valore con quello appropriato per altre versioni di IE. +#ifndef _WIN32_IE +#define _WIN32_IE 0x0700 #endif diff --git a/base/applications/sndvol32/lang/de-DE.rc b/base/applications/sndvol32/lang/de-DE.rc index abcab15673e..6ea135d5a0a 100644 --- a/base/applications/sndvol32/lang/de-DE.rc +++ b/base/applications/sndvol32/lang/de-DE.rc @@ -19,7 +19,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_SNDVOL32 "Lautstärke Einstellungen" + IDS_SNDVOL32 "Lautstärke-Einstellungen" IDS_NOMIXERDEVICES "Es sind keine aktiven Mixer vorhanden! Die Anwendung wird jetzt beendet." END diff --git a/base/applications/sndvol32/lang/uk-UA.rc b/base/applications/sndvol32/lang/uk-UA.rc index bdbd9b7af05..92ea581bf7d 100644 --- a/base/applications/sndvol32/lang/uk-UA.rc +++ b/base/applications/sndvol32/lang/uk-UA.rc @@ -1,7 +1,7 @@ /* * PROJECT: ReactOS Sound Volume Control * LICENSE: GPL - See COPYING in the top level directory - * FILE: base/applications/sndvol32/Uk.rc + * FILE: base/applications/sndvol32/lang/uk-UA.rc * PURPOSE: Ukraianian Language File for Volume Control * TRANSLATOR: Artem Reznikov */ @@ -17,7 +17,7 @@ BEGIN MENUITEM SEPARATOR MENUITEM "Â&èõ³ä", IDC_EXIT END - POPUP "&Äîâ³äêà" + POPUP "Äî&â³äêà" BEGIN MENUITEM "&Çì³ñò", IDC_HELP_TOPICS MENUITEM SEPARATOR diff --git a/base/applications/sndvol32/sndvol32.rbuild b/base/applications/sndvol32/sndvol32.rbuild index 52bde92e1db..97d5a60cc95 100644 --- a/base/applications/sndvol32/sndvol32.rbuild +++ b/base/applications/sndvol32/sndvol32.rbuild @@ -7,7 +7,6 @@ user32 advapi32 gdi32 - kernel32 comctl32 shell32 winmm diff --git a/base/applications/taskmgr/lang/de-DE.rc b/base/applications/taskmgr/lang/de-DE.rc index 97a3f79e0b3..53b93098ca0 100644 --- a/base/applications/taskmgr/lang/de-DE.rc +++ b/base/applications/taskmgr/lang/de-DE.rc @@ -573,7 +573,7 @@ BEGIN ID_FILE_NEW "Führt ein neues Programm aus." ID_OPTIONS_ALWAYSONTOP "Task-Manager bleibt im Vordergrund, wenn nicht minimiert." ID_OPTIONS_MINIMIZEONUSE - "Task-Manager wird minimiert wenn ein SwitchTo-Vorgang durchgeführt wird." + "Task-Manager wird minimiert, wenn ein SwitchTo-Vorgang durchgeführt wird." ID_OPTIONS_HIDEWHENMINIMIZED "Blendet den Task-Manager aus, wenn er minimiert ist." ID_VIEW_REFRESH "Veranlasst den Task-Manager zur sofortigen Aktualisierung, unabhängig von der Geschwindigkeitseinstellung." ID_VIEW_LARGE "Zeigt Tasks als große Symbole an." @@ -596,9 +596,9 @@ BEGIN ID_WINDOWS_BRINGTOFRONT "Zeigt das Fenster im Vordergrund an, aber wechselt nicht zu diesem." ID_HELP_TOPICS "Zeigt die Hilfethemen des Taskmanagers an." ID_HELP_ABOUT "Zeigt Programminformationen, Versionsnummer und Copyright an." - ID_FILE_EXIT "Beendet den Task-Manager." + ID_FILE_EXIT "Beendet den Taskmanager." ID_OPTIONS_SHOW16BITTASKS - "Zeigt die 16-Bit Tasks unter der zugehörigen ntvdm.exe an." + "Zeigt die 16-Bit-Tasks unter der zugehörigen ntvdm.exe an." ID_VIEW_SELECTCOLUMNS "Legt fest welche Spalten auf der Registerkarte Prozesse angezeigt werden." ID_VIEW_SHOWKERNELTIMES "Zeigt die Kernel-Zeiten in den Systemmonitordiagrammen an." ID_VIEW_CPUHISTORY_ONEGRAPHALL @@ -675,7 +675,7 @@ BEGIN IDS_MENU_SHOWKERNELTIMES "&Kernel-Zeiten anzeigen" IDS_CREATENEWTASK "Neuen Task erstellen" IDS_CREATENEWTASK_DESC "Geben Sie Programme, Ordner, Dokumente oder Internetressourcen an, die geöffnet werden sollen." - IDS_MSG_ACCESSPROCESSAFF "Zugriff auf die / Änderung der Prozess Affinität nicht möglich" + IDS_MSG_ACCESSPROCESSAFF "Zugriff auf die / Änderung der Prozessaffinität nicht möglich" IDS_MSG_PROCESSONEPRO "Der Prozess muss eine Zugehörigkeit zu mindestens einem Prozessor aufweisen." IDS_MSG_INVALIDOPTION "Ungültige Auswahl" IDS_MSG_UNABLEDEBUGPROCESS "Kann Prozess nicht debuggen" diff --git a/base/applications/taskmgr/lang/en-US.rc b/base/applications/taskmgr/lang/en-US.rc index 75e6727f32a..dcaa194527d 100644 --- a/base/applications/taskmgr/lang/en-US.rc +++ b/base/applications/taskmgr/lang/en-US.rc @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "ReactOS Task Manager" +CAPTION "Task Manager" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN diff --git a/base/applications/taskmgr/lang/fr-FR.rc b/base/applications/taskmgr/lang/fr-FR.rc index 41a95c6136f..6f060750126 100644 --- a/base/applications/taskmgr/lang/fr-FR.rc +++ b/base/applications/taskmgr/lang/fr-FR.rc @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "Gestionnaire des tâches ReactOS" +CAPTION "Gestionnaire des tâches" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN diff --git a/base/applications/taskmgr/lang/ja-JP.rc b/base/applications/taskmgr/lang/ja-JP.rc index 3cb440a12f8..001e8a64a36 100644 --- a/base/applications/taskmgr/lang/ja-JP.rc +++ b/base/applications/taskmgr/lang/ja-JP.rc @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "ReactOS ƒ^ƒXƒN ƒ}ƒl[ƒWƒƒ" +CAPTION "ƒ^ƒXƒN ƒ}ƒl[ƒWƒƒ" MENU IDR_TASKMANAGER FONT 9, "MS UI Gothic" BEGIN diff --git a/base/applications/taskmgr/lang/ko-KR.rc b/base/applications/taskmgr/lang/ko-KR.rc index 674aac55557..e446bc6bab4 100644 --- a/base/applications/taskmgr/lang/ko-KR.rc +++ b/base/applications/taskmgr/lang/ko-KR.rc @@ -168,7 +168,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "ReactOS ÀÛ¾÷ °ü¸®ÀÚ" +CAPTION "ÀÛ¾÷ °ü¸®ÀÚ" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN @@ -523,7 +523,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_APP_TITLE "ÀÛ¾÷ °ü¸®ÀÚ" + IDS_APP_TITLE "ÀÛ¾÷ °ü¸®ÀÚ" IDC_TASKMGR "ÀÛ¾÷ °ü¸®ÀÚ" IDS_IDLE_PROCESS "System Idle Process" END diff --git a/base/applications/taskmgr/lang/nl-NL.rc b/base/applications/taskmgr/lang/nl-NL.rc index d7b769daf03..3ce8e52acc6 100644 --- a/base/applications/taskmgr/lang/nl-NL.rc +++ b/base/applications/taskmgr/lang/nl-NL.rc @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "Reactos Taakbeheer" +CAPTION "Taakbeheer" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN @@ -523,7 +523,7 @@ END STRINGTABLE DISCARDABLE BEGIN - IDS_APP_TITLE "Reactos Taakbeheer" + IDS_APP_TITLE "Taakbeheer" IDC_TASKMGR "Taakbeheer" IDS_IDLE_PROCESS "Niet-actieve systeemprocessen" END diff --git a/base/applications/taskmgr/lang/ro-RO.rc b/base/applications/taskmgr/lang/ro-RO.rc index 788e987b91f..9509c87400c 100644 --- a/base/applications/taskmgr/lang/ro-RO.rc +++ b/base/applications/taskmgr/lang/ro-RO.rc @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "Gestionarul de activități ReactOS" +CAPTION "Gestionarul de activități" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN diff --git a/base/applications/taskmgr/lang/sk-SK.rc b/base/applications/taskmgr/lang/sk-SK.rc index 3d3b4fc3775..da93d37d45b 100644 --- a/base/applications/taskmgr/lang/sk-SK.rc +++ b/base/applications/taskmgr/lang/sk-SK.rc @@ -164,7 +164,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "Správca úloh systému ReactOS" +CAPTION "Správca úloh systému" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN diff --git a/base/applications/taskmgr/lang/uk-UA.rc b/base/applications/taskmgr/lang/uk-UA.rc index 41737ad8ab8..2b8fb82b7cc 100644 --- a/base/applications/taskmgr/lang/uk-UA.rc +++ b/base/applications/taskmgr/lang/uk-UA.rc @@ -151,7 +151,7 @@ BEGIN END MENUITEM "Ó&ñòàíîâèòè â³äïîâ³äí³ñòü...", ID_PROCESS_PAGE_SETAFFINITY - MENUITEM "Edit Debug &Channels...", ID_PROCESS_PAGE_DEBUGCHANNELS + MENUITEM "Ðåäàãóâàòè íàëàãîäæåííÿ &ïîòîê³â...", ID_PROCESS_PAGE_DEBUGCHANNELS END END @@ -165,7 +165,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_SHELLFONT | DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "Äèñïåò÷åð çàâäàíü ReactOS" +CAPTION "Äèñïåò÷åð çàâäàíü" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN @@ -192,7 +192,7 @@ BEGIN WS_BORDER | WS_TABSTOP,7,7,233,177 PUSHBUTTON "Çí&ÿòè çàâäàííÿ",IDC_ENDPROCESS,171,189,69,14 CONTROL "&³äîáðàæàòè ïðîöåñè âñ³õ êîðèñòóâà÷³â",IDC_SHOWALLPROCESSES, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,191,111,10 + "Êíîïêà",BS_AUTOCHECKBOX | WS_TABSTOP,7,191,111,10 END //IDD_PERFORMANCE_PAGE DIALOGEX 0, 0, 247, 210 @@ -270,8 +270,8 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "³äïîâ³äí³ñòü ïðîöåñîð³â" FONT 8, "MS Shell Dlg" BEGIN - DEFPUSHBUTTON "OK",IDOK,120,133,50,14 - PUSHBUTTON "Ñêàñóâàòè",IDCANCEL,174,133,50,14 + DEFPUSHBUTTON "Òàê",IDOK,120,133,50,14 + PUSHBUTTON "ͳ",IDCANCEL,174,133,50,14 LTEXT "Ïàðàìåòð â³äïîâ³äíîñò³ ïðîöåñîð³â âèçíà÷àº, íà ÿêîìó ÖÏ áóäå äîçâîëåíî âèêîíóâàòè ïðîöåñ.", IDC_STATIC,5,5,220,16 CONTROL "ÖÏ 0",IDC_CPU0,"Button",BS_AUTOCHECKBOX | WS_TABSTOP, @@ -345,8 +345,8 @@ STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU CAPTION "Âèá³ð ñòîâïö³â" FONT 8, "MS Shell Dlg" BEGIN - DEFPUSHBUTTON "OK",IDOK,84,178,50,14 - PUSHBUTTON "Ñêàñóâàòè",IDCANCEL,138,178,50,14 + DEFPUSHBUTTON "Òàê",IDOK,84,178,50,14 + PUSHBUTTON "ͳ",IDCANCEL,138,178,50,14 LTEXT "Âèáåð³òü ñòîâïö³, ÿê³ ñë³ä â³äîáðàæàòè íà âêëàäö³ Ïðîöåñ äèñïåò÷åðà çàâäàíü.", IDC_STATIC,7,7,181,17 CONTROL "&²ì'ÿ îáðàçó",IDC_IMAGENAME,"Button",BS_AUTOCHECKBOX | diff --git a/base/applications/taskmgr/lang/zh-CN.rc b/base/applications/taskmgr/lang/zh-CN.rc index bb62579df77..7423300d5c9 100644 --- a/base/applications/taskmgr/lang/zh-CN.rc +++ b/base/applications/taskmgr/lang/zh-CN.rc @@ -173,7 +173,7 @@ IDD_TASKMGR_DIALOG DIALOGEX DISCARDABLE 0, 0, 264, 246 STYLE DS_CENTER | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME -CAPTION "ReactOS ÈÎÎñ¹ÜÀíÆ÷" +CAPTION "ÈÎÎñ¹ÜÀíÆ÷" MENU IDR_TASKMANAGER FONT 8, "MS Shell Dlg" BEGIN diff --git a/base/applications/taskmgr/taskmgr.c b/base/applications/taskmgr/taskmgr.c index e0ff5c23628..3f8bcbd9a4a 100644 --- a/base/applications/taskmgr/taskmgr.c +++ b/base/applications/taskmgr/taskmgr.c @@ -55,8 +55,27 @@ int APIENTRY wWinMain(HINSTANCE hInstance, /* check wether we're already running or not */ hMutex = CreateMutexW(NULL, TRUE, L"taskmgrros"); - if ((!hMutex) || (GetLastError() == ERROR_ALREADY_EXISTS)) + if (hMutex && GetLastError() == ERROR_ALREADY_EXISTS) + { + /* Restore existing taskmanager and bring window to front */ + /* Relies on the fact that the application title string and window title are the same */ + HWND hTaskMgr; + TCHAR szTaskmgr[128]; + + LoadString(hInst, IDS_APP_TITLE, szTaskmgr, sizeof(szTaskmgr)/sizeof(TCHAR)); + hTaskMgr = FindWindow(NULL, szTaskmgr); + + if (hTaskMgr != NULL) + { + SendMessage(hTaskMgr, WM_SYSCOMMAND, SC_RESTORE, 0); + SetForegroundWindow(hTaskMgr); + } + return 0; + } + else if (!hMutex) + { return 1; + } /* Initialize global variables */ hInst = hInstance; diff --git a/base/applications/taskmgr/taskmgr.rbuild b/base/applications/taskmgr/taskmgr.rbuild index 85311432c28..8db44813d26 100644 --- a/base/applications/taskmgr/taskmgr.rbuild +++ b/base/applications/taskmgr/taskmgr.rbuild @@ -3,7 +3,6 @@ . ntdll - kernel32 advapi32 user32 gdi32 diff --git a/base/applications/tsclient/MissTosca.sln b/base/applications/tsclient/MissTosca.sln deleted file mode 100644 index 4156cc20bc3..00000000000 --- a/base/applications/tsclient/MissTosca.sln +++ /dev/null @@ -1,38 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 9.00 -# Visual C++ Express 2005 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rdesktop-core", "rdesktop\rdesktop-core.vcproj", "{8620E9B2-9AF0-4F69-A5AF-C195D5F86372}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mstsc", "mstsc\mstsc.vcproj", "{1B415732-1F37-415F-957B-EA436301860D}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mstscax", "mstscax\mstscax.vcproj", "{2C217E9E-9D77-4D6A-9259-216FD56BA56F}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rdesktop-core-tester", "porting-tools\rdesktop-core-tester\rdesktop-core-tester.vcproj", "{B172A623-E2BD-4E3F-86E6-620548FE255B}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8620E9B2-9AF0-4F69-A5AF-C195D5F86372}.Debug|Win32.ActiveCfg = Debug|Win32 - {8620E9B2-9AF0-4F69-A5AF-C195D5F86372}.Debug|Win32.Build.0 = Debug|Win32 - {8620E9B2-9AF0-4F69-A5AF-C195D5F86372}.Release|Win32.ActiveCfg = Release|Win32 - {8620E9B2-9AF0-4F69-A5AF-C195D5F86372}.Release|Win32.Build.0 = Release|Win32 - {1B415732-1F37-415F-957B-EA436301860D}.Debug|Win32.ActiveCfg = Debug|Win32 - {1B415732-1F37-415F-957B-EA436301860D}.Debug|Win32.Build.0 = Debug|Win32 - {1B415732-1F37-415F-957B-EA436301860D}.Release|Win32.ActiveCfg = Release|Win32 - {1B415732-1F37-415F-957B-EA436301860D}.Release|Win32.Build.0 = Release|Win32 - {2C217E9E-9D77-4D6A-9259-216FD56BA56F}.Debug|Win32.ActiveCfg = Debug|Win32 - {2C217E9E-9D77-4D6A-9259-216FD56BA56F}.Debug|Win32.Build.0 = Debug|Win32 - {2C217E9E-9D77-4D6A-9259-216FD56BA56F}.Release|Win32.ActiveCfg = Release|Win32 - {2C217E9E-9D77-4D6A-9259-216FD56BA56F}.Release|Win32.Build.0 = Release|Win32 - {B172A623-E2BD-4E3F-86E6-620548FE255B}.Debug|Win32.ActiveCfg = Debug|Win32 - {B172A623-E2BD-4E3F-86E6-620548FE255B}.Debug|Win32.Build.0 = Debug|Win32 - {B172A623-E2BD-4E3F-86E6-620548FE255B}.Release|Win32.ActiveCfg = Release|Win32 - {B172A623-E2BD-4E3F-86E6-620548FE255B}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/base/applications/tsclient/mstsc/mstsc.cpp b/base/applications/tsclient/mstsc/mstsc.cpp deleted file mode 100644 index 106d7296c01..00000000000 --- a/base/applications/tsclient/mstsc/mstsc.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "stdafx.h" - -int _tmain(int argc, _TCHAR* argv[]) -{ - return 0; -} - diff --git a/base/applications/tsclient/mstsc/mstsc.vcproj b/base/applications/tsclient/mstsc/mstsc.vcproj deleted file mode 100644 index a6d58a9cc1c..00000000000 --- a/base/applications/tsclient/mstsc/mstsc.vcproj +++ /dev/null @@ -1,223 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/base/applications/tsclient/mstsc/stdafx.cpp b/base/applications/tsclient/mstsc/stdafx.cpp deleted file mode 100644 index f7caa754005..00000000000 --- a/base/applications/tsclient/mstsc/stdafx.cpp +++ /dev/null @@ -1,8 +0,0 @@ -// stdafx.cpp : source file that includes just the standard includes -// mstsc.pch will be the pre-compiled header -// stdafx.obj will contain the pre-compiled type information - -#include "stdafx.h" - -// TODO: reference any additional headers you need in STDAFX.H -// and not in this file diff --git a/base/applications/tsclient/mstsc/stdafx.h b/base/applications/tsclient/mstsc/stdafx.h deleted file mode 100644 index ddacb46d869..00000000000 --- a/base/applications/tsclient/mstsc/stdafx.h +++ /dev/null @@ -1,15 +0,0 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, but -// are changed infrequently -// - -#pragma once - - -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#include -#include - - - -// TODO: reference additional headers your program requires here diff --git a/base/applications/tsclient/mstscax/mstscax.cpp b/base/applications/tsclient/mstscax/mstscax.cpp deleted file mode 100644 index 106d7296c01..00000000000 --- a/base/applications/tsclient/mstscax/mstscax.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "stdafx.h" - -int _tmain(int argc, _TCHAR* argv[]) -{ - return 0; -} - diff --git a/base/applications/tsclient/mstscax/mstscax.vcproj b/base/applications/tsclient/mstscax/mstscax.vcproj deleted file mode 100644 index 7b3b3b0144f..00000000000 --- a/base/applications/tsclient/mstscax/mstscax.vcproj +++ /dev/null @@ -1,223 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/base/applications/tsclient/mstscax/stdafx.cpp b/base/applications/tsclient/mstscax/stdafx.cpp deleted file mode 100644 index 9a99ced5d1d..00000000000 --- a/base/applications/tsclient/mstscax/stdafx.cpp +++ /dev/null @@ -1,8 +0,0 @@ -// stdafx.cpp : source file that includes just the standard includes -// mstscax.pch will be the pre-compiled header -// stdafx.obj will contain the pre-compiled type information - -#include "stdafx.h" - -// TODO: reference any additional headers you need in STDAFX.H -// and not in this file diff --git a/base/applications/tsclient/mstscax/stdafx.h b/base/applications/tsclient/mstscax/stdafx.h deleted file mode 100644 index ddacb46d869..00000000000 --- a/base/applications/tsclient/mstscax/stdafx.h +++ /dev/null @@ -1,15 +0,0 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, but -// are changed infrequently -// - -#pragma once - - -#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers -#include -#include - - - -// TODO: reference additional headers your program requires here diff --git a/base/applications/tsclient/porting-tools/mstscax/mstscax.cpp b/base/applications/tsclient/porting-tools/mstscax/mstscax.cpp deleted file mode 100644 index 0f01f402370..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/mstscax.cpp +++ /dev/null @@ -1,5011 +0,0 @@ -#include "stdafx.h" - -namespace -{ - using namespace MSTSCLib; - - typedef HRESULT (STDAPICALLTYPE * PFNDLLGETCLASSOBJECT)(IN REFCLSID rclsid, IN REFIID riid, OUT LPVOID FAR * ppv); - typedef HRESULT (STDAPICALLTYPE * PFNDLLCANUNLOADNOW)(void); - typedef ULONG (STDAPICALLTYPE * PFNDLLGETTSCCTLVER)(void); - - PFNDLLGETCLASSOBJECT pfnDllGetClassObject = NULL; - PFNDLLCANUNLOADNOW pfnDllCanUnloadNow = NULL; - PFNDLLGETTSCCTLVER pfnDllGetTscCtlVer = NULL; - - HMODULE hmMstscax = NULL; - - extern "C" char __ImageBase; - static const HMODULE hmSelf = reinterpret_cast(&__ImageBase); - - void init() - { - if(hmMstscax) - return; - - TCHAR szFileName[MAX_PATH + 1]; - GetModuleFileName(hmSelf, szFileName, MAX_PATH); - - std::basic_string strFileName(&szFileName[0]); - std::reverse_iterator::const_iterator > begin(strFileName.end()); - std::reverse_iterator::const_iterator > end(strFileName.begin()); - std::basic_string::const_iterator endPath = std::find(begin, end, TEXT('\\')).base(); - - std::basic_string strPath(strFileName.begin(), endPath); - strPath.append(TEXT("original\\mstscax.dll")); - - hmMstscax = LoadLibrary(strPath.c_str()); - pfnDllGetClassObject = (PFNDLLGETCLASSOBJECT)GetProcAddress(hmMstscax, "DllGetClassObject"); - pfnDllCanUnloadNow = (PFNDLLCANUNLOADNOW)GetProcAddress(hmMstscax, "DllCanUnloadNow"); - pfnDllGetTscCtlVer = (PFNDLLGETTSCCTLVER)GetProcAddress(hmMstscax, "DllGetTscCtlVer"); - } - - void dbgprintf(LPCTSTR fmt, ...) - { - TCHAR buf[0x1000]; - - va_list args; - va_start(args, fmt); - StringCbVPrintf(buf, sizeof(buf), fmt, args); - va_end(args); - - StringCbCat(buf, sizeof(buf), TEXT("\n")); - - OutputDebugString(buf); - } - -#if 0 - const IID MsTscAxIIDs[] = - { - IID_IMsRdpClient, - IID_IMsTscAx, - //IID_IMsTscAxEvents, - IID_IMsTscNonScriptable, - IID_IMsRdpClientNonScriptable, - }; - - const IID MsRdpClient[] = - { - IID_IMsRdpClient, - IID_IMsTscAx, - //IID_IMsTscAxEvents, - IID_IMsTscNonScriptable, - IID_IMsRdpClientNonScriptable, - }; - - const IID MsRdpClient2[] = - { - IID_IMsRdpClient2, - IID_IMsRdpClient, - IID_IMsTscAx, - //IID_IMsTscAxEvents, - IID_IMsTscNonScriptable, - IID_IMsRdpClientNonScriptable, - }; - - const IID MsRdpClient3[] = - { - IID_IMsRdpClient3, - IID_IMsRdpClient2, - IID_IMsRdpClient, - IID_IMsTscAx, - //IID_IMsTscAxEvents, - IID_IMsTscNonScriptable, - IID_IMsRdpClientNonScriptable, - }; - - const IID MsRdpClient4[] = - { - IID_IMsRdpClient4, - IID_IMsRdpClient3, - IID_IMsRdpClient2, - IID_IMsRdpClient, - IID_IMsTscAx, - //IID_IMsTscAxEvents, - IID_IMsTscNonScriptable, - IID_IMsRdpClientNonScriptable, - IID_IMsRdpClientNonScriptable2, - }; -#endif - - std::wstring UUIDToString(const UUID& uuid) - { - std::wstring s; - LPOLESTR str; - StringFromCLSID(uuid, &str); - s += str; - CoTaskMemFree(str); - return s; - } - - std::wstring MonikerToString(IMoniker * pmk) - { - LPOLESTR pszName = NULL; - - if(SUCCEEDED(pmk->GetDisplayName(NULL, NULL, &pszName))) - { - std::wstring s(pszName); - CoTaskMemFree(pszName); - return s; - } - else - return std::wstring(L""); - } - - std::basic_string RectToString(const RECT& rc) - { - if(&rc == NULL) - return TEXT(""); - - std::basic_ostringstream o; - o << "{" << " left:" << rc.left << " top:" << rc.top << " right:" << rc.right << " bottom:" << rc.bottom << " }"; - return o.str(); - } - - std::basic_string RectToString(const RECTL& rc) - { - if(&rc == NULL) - return TEXT(""); - - std::basic_ostringstream o; - o << "{" << " left:" << rc.left << " top:" << rc.top << " right:" << rc.right << " bottom:" << rc.bottom << " }"; - return o.str(); - } - - std::basic_string SizeToString(const SIZE& sz) - { - if(&sz == NULL) - return TEXT(""); - - std::basic_ostringstream o; - o << "{ " << " cx:" << sz.cx << " cy:" << sz.cy << " }"; - return o.str(); - } - - template LPCTSTR BooleanToString(const T& X) - { - return X ? TEXT("true") : TEXT("false"); - } - - std::basic_string VariantToString(const VARIANT& var) - { - std::basic_ostringstream o; - - switch(var.vt & VT_TYPEMASK) - { - case VT_EMPTY: o << ""; break; - case VT_NULL: o << ""; break; - case VT_I2: o << "short"; break; - case VT_I4: o << "long"; break; - case VT_R4: o << "float"; break; - case VT_R8: o << "double"; break; - case VT_CY: o << "CURRENCY"; break; - case VT_DATE: o << "DATE"; break; - case VT_BSTR: o << "string"; break; - case VT_DISPATCH: o << "IDispatch *"; break; - case VT_ERROR: o << "SCODE"; break; - case VT_BOOL: o << "bool"; break; - case VT_VARIANT: o << "VARIANT *"; break; - case VT_UNKNOWN: o << "IUnknown *"; break; - case VT_DECIMAL: o << "DECIMAL"; break; - case VT_I1: o << "char"; break; - case VT_UI1: o << "unsigned char"; break; - case VT_UI2: o << "unsigned short"; break; - case VT_UI4: o << "unsigned long"; break; - case VT_I8: o << "long long"; break; - case VT_UI8: o << "unsigned long long"; break; - case VT_INT: o << "int"; break; - case VT_UINT: o << "unsigned int"; break; - case VT_VOID: o << "void"; break; - case VT_HRESULT: o << "HRESULT"; break; - case VT_PTR: o << "void *"; break; - case VT_SAFEARRAY: o << "SAFEARRAY *"; break; - case VT_LPSTR: o << "LPSTR"; break; - case VT_LPWSTR: o << "LPWSTR"; break; - case VT_RECORD: o << "struct { }"; break; - case VT_INT_PTR: o << "intptr_t"; break; - case VT_UINT_PTR: o << "uintptr_t"; break; - case VT_FILETIME: o << "FILETIME"; break; - default: o << "???"; break; - } - - if(var.vt & VT_ARRAY) - o << "[]"; - else if(var.vt & VT_BYREF) - o << " *"; - else - { - switch(var.vt & VT_TYPEMASK) - { - case VT_EMPTY: - case VT_NULL: - case VT_RECORD: - case VT_VOID: - - // TODO - case VT_CY: - case VT_DATE: - case VT_DECIMAL: - case VT_FILETIME: - break; - - default: - o << " = "; - } - - switch(var.vt & VT_TYPEMASK) - { - case VT_I2: o << var.iVal; break; - case VT_I4: o << var.lVal; break; - case VT_R4: o << var.fltVal; break; - case VT_R8: o << var.dblVal; break; - case VT_BSTR: o << std::wstring(var.bstrVal, var.bstrVal + SysStringLen(var.bstrVal)); break; - case VT_BOOL: o << var.boolVal ? "true" : "false"; break; - case VT_I1: o << int(var.cVal); break; - case VT_UI1: o << unsigned int(var.bVal); break; - case VT_UI2: o << var.uiVal; break; - case VT_UI4: o << var.ulVal; break; - case VT_I8: o << var.llVal; break; - case VT_UI8: o << var.ullVal; break; - case VT_INT: o << var.intVal; break; - case VT_UINT: o << var.uintVal; break; - case VT_LPSTR: o << LPSTR(var.byref); break; - case VT_LPWSTR: o << LPWSTR(var.byref); break; - case VT_INT_PTR: o << var.intVal; break; // BUGBUG - case VT_UINT_PTR: o << var.uintVal; break; // BUGBUG - - case VT_DISPATCH: - case VT_VARIANT: - case VT_UNKNOWN: - case VT_PTR: - case VT_SAFEARRAY: - case VT_RECORD: - o << var.byref; break; - - case VT_ERROR: - case VT_HRESULT: - o << std::hex << var.ulVal; break; - - case VT_EMPTY: - case VT_NULL: - case VT_VOID: - break; - - default: - assert(0); - } - } - - return o.str(); - } - -#pragma warning(disable:4584) - - IConnectionPointContainer * HookIConnectionPointContainer(IConnectionPointContainer * p); - IEnumConnectionPoints * HookIEnumConnectionPoints(IEnumConnectionPoints * p); - IConnectionPoint * HookIConnectionPoint(IConnectionPoint * p); - IEnumConnections * HookIEnumConnections(IEnumConnections * p); - - class CConnectionPointContainer: public IConnectionPointContainer - { - private: - LONG m_refCount; - IConnectionPointContainer * m_IConnectionPointContainer; - - public: - CConnectionPointContainer(IConnectionPointContainer * pIConnectionPointContainer): - m_refCount(1), - m_IConnectionPointContainer(pIConnectionPointContainer) - { } - - ~CConnectionPointContainer() { m_IConnectionPointContainer->Release(); } - - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr = S_OK; - - dbgprintf(TEXT("CConnectionPointContainer::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - - if(riid == IID_IUnknown || riid == IID_IConnectionPointContainer) - *ppvObject = this; - else - { - *ppvObject = NULL; - hr = E_NOINTERFACE; - } - - dbgprintf(TEXT("CConnectionPointContainer::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual HRESULT STDMETHODCALLTYPE EnumConnectionPoints(IEnumConnectionPoints ** ppEnum) - { - dbgprintf(TEXT("CConnectionPointContainer::EnumConnectionPoints(%p)"), ppEnum); - HRESULT hr = m_IConnectionPointContainer->EnumConnectionPoints(ppEnum); - dbgprintf(TEXT("CConnectionPointContainer::EnumConnectionPoints -> %08X, pEnum = %p"), hr, *ppEnum); - - if(SUCCEEDED(hr)) - *ppEnum = HookIEnumConnectionPoints(*ppEnum); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE FindConnectionPoint(REFIID riid, IConnectionPoint ** ppCP) - { - dbgprintf(TEXT("CConnectionPointContainer::FindConnectionPoint(%ls, %p)"), UUIDToString(riid).c_str(), ppCP); - HRESULT hr = m_IConnectionPointContainer->FindConnectionPoint(riid, ppCP); - dbgprintf(TEXT("CConnectionPointContainer::FindConnectionPoint -> %08X, pCP = %p"), hr, *ppCP); - - if(SUCCEEDED(hr)) - *ppCP = HookIConnectionPoint(*ppCP); - - return hr; - } - }; - - class CEnumConnectionPoints: public IEnumConnectionPoints - { - private: - LONG m_refCount; - IEnumConnectionPoints * m_IEnumConnectionPoints; - - public: - CEnumConnectionPoints(IEnumConnectionPoints * pIEnumConnectionPoints): - m_refCount(1), - m_IEnumConnectionPoints(pIEnumConnectionPoints) - { } - - ~CEnumConnectionPoints() { m_IEnumConnectionPoints->Release(); } - - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr = S_OK; - - dbgprintf(TEXT("CEnumConnectionPoints::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - - if(riid == IID_IUnknown || riid == IID_IEnumConnectionPoints) - *ppvObject = this; - else - { - *ppvObject = NULL; - hr = E_NOINTERFACE; - } - - dbgprintf(TEXT("CEnumConnectionPoints::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual HRESULT STDMETHODCALLTYPE Next(ULONG cConnections, LPCONNECTIONPOINT * ppCP, ULONG * pcFetched) - { - dbgprintf(TEXT("CEnumConnectionPoints::Next(%lu, %p, %p)"), cConnections, ppCP, pcFetched); - HRESULT hr = m_IEnumConnectionPoints->Next(cConnections, ppCP, pcFetched); - dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X, pCP = %p, cFetched = %lu"), hr, *ppCP, *pcFetched); - - if(SUCCEEDED(hr)) - *ppCP = HookIConnectionPoint(*ppCP); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Skip(ULONG cConnections) - { - dbgprintf(TEXT("CEnumConnectionPoints::Skip(%lu)"), cConnections); - HRESULT hr = m_IEnumConnectionPoints->Skip(cConnections); - dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Reset(void) - { - dbgprintf(TEXT("CEnumConnectionPoints::Reset()")); - HRESULT hr = m_IEnumConnectionPoints->Reset(); - dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Clone(IEnumConnectionPoints ** ppEnum) - { - dbgprintf(TEXT("CEnumConnectionPoints::Clone(%p)"), ppEnum); - HRESULT hr = m_IEnumConnectionPoints->Clone(ppEnum); - dbgprintf(TEXT("CEnumConnectionPoints:: -> %08X, pEnum"), hr, *ppEnum); - - if(SUCCEEDED(hr)) - *ppEnum = HookIEnumConnectionPoints(*ppEnum); - - return hr; - } - }; - - class CConnectionPoint: public IConnectionPoint - { - private: - LONG m_refCount; - IConnectionPoint * m_IConnectionPoint; - - public: - CConnectionPoint(IConnectionPoint * pIConnectionPoint): - m_refCount(1), - m_IConnectionPoint(pIConnectionPoint) - { } - - ~CConnectionPoint() { m_IConnectionPoint->Release(); } - - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr = S_OK; - - dbgprintf(TEXT("CConnectionPoint::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - - if(riid == IID_IUnknown || riid == IID_IConnectionPoint) - *ppvObject = this; - else - { - *ppvObject = NULL; - hr = E_NOINTERFACE; - } - - dbgprintf(TEXT("CConnectionPoint::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual HRESULT STDMETHODCALLTYPE GetConnectionInterface(IID * pIID) - { - dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface(%p)"), pIID); - HRESULT hr = m_IConnectionPoint->GetConnectionInterface(pIID); - dbgprintf(TEXT("CConnectionPoint::GetConnectionInterface -> %08X, IID = %ls"), hr, UUIDToString(*pIID).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetConnectionPointContainer(IConnectionPointContainer ** ppCPC) - { - dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer(%p)"), ppCPC); - HRESULT hr = m_IConnectionPoint->GetConnectionPointContainer(ppCPC); - dbgprintf(TEXT("CConnectionPoint::GetConnectionPointContainer -> %08X, pCPC = %p"), hr, *ppCPC); - - if(SUCCEEDED(hr)) - *ppCPC = HookIConnectionPointContainer(*ppCPC); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Advise(IUnknown * pUnkSink, DWORD * pdwCookie) - { - dbgprintf(TEXT("CConnectionPoint::Advise(%p, %p)"), pUnkSink, pdwCookie); - HRESULT hr = m_IConnectionPoint->Advise(pUnkSink, pdwCookie); - dbgprintf(TEXT("CConnectionPoint::Advise -> %08X, dwCookie = %lu"), hr, *pdwCookie); - // TODO: hook sink - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Unadvise(DWORD dwCookie) - { - dbgprintf(TEXT("CConnectionPoint::Unadvise(%lu)"), dwCookie); - HRESULT hr = m_IConnectionPoint->Unadvise(dwCookie); - dbgprintf(TEXT("CConnectionPoint::Unadvise -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnumConnections(IEnumConnections ** ppEnum) - { - dbgprintf(TEXT("CConnectionPoint::EnumConnections(%p)"), ppEnum); - HRESULT hr = m_IConnectionPoint->EnumConnections(ppEnum); - dbgprintf(TEXT("CConnectionPoint::EnumConnections -> %08X, pEnum = %p"), hr, *ppEnum); - - if(SUCCEEDED(hr)) - *ppEnum = HookIEnumConnections(*ppEnum); - - return hr; - } - }; - - class CEnumConnections: public IEnumConnections - { - private: - LONG m_refCount; - IEnumConnections * m_IEnumConnections; - - public: - CEnumConnections(IEnumConnections * pIEnumConnections): - m_refCount(1), - m_IEnumConnections(pIEnumConnections) - { } - - ~CEnumConnections() { m_IEnumConnections->Release(); } - - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr = S_OK; - - dbgprintf(TEXT("CEnumConnections::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - - if(riid == IID_IUnknown || riid == IID_IEnumConnections) - *ppvObject = this; - else - { - *ppvObject = NULL; - hr = E_NOINTERFACE; - } - - dbgprintf(TEXT("CEnumConnections::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual HRESULT STDMETHODCALLTYPE Next(ULONG cConnections, LPCONNECTDATA pCD, ULONG * pcFetched) - { - dbgprintf(TEXT("CEnumConnections::Next(%lu, %p, %p)"), cConnections, pCD, pcFetched); - HRESULT hr = m_IEnumConnections->Next(cConnections, pCD, pcFetched); - dbgprintf(TEXT("CEnumConnections:: -> %08X, CD = { pUnk = %p, dwCookie = %lu }, cFetched = %lu"), hr, pCD->pUnk, pCD->dwCookie, *pcFetched); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Skip(ULONG cConnections) - { - dbgprintf(TEXT("CEnumConnections::Skip(%lu)"), cConnections); - HRESULT hr = m_IEnumConnections->Skip(cConnections); - dbgprintf(TEXT("CEnumConnections:: -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Reset(void) - { - dbgprintf(TEXT("CEnumConnections::Reset()")); - HRESULT hr = m_IEnumConnections->Reset(); - dbgprintf(TEXT("CEnumConnections:: -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Clone(IEnumConnections ** ppEnum) - { - dbgprintf(TEXT("CEnumConnections::Clone(%p)"), ppEnum); - HRESULT hr = m_IEnumConnections->Clone(ppEnum); - dbgprintf(TEXT("CEnumConnections:: -> %08X, pEnum"), hr, *ppEnum); - - if(SUCCEEDED(hr)) - *ppEnum = HookIEnumConnections(*ppEnum); - - return hr; - } - }; - - IConnectionPointContainer * HookIConnectionPointContainer(IConnectionPointContainer * p) - { - return new CConnectionPointContainer(p); - } - - IEnumConnectionPoints * HookIEnumConnectionPoints(IEnumConnectionPoints * p) - { - return new CEnumConnectionPoints(p); - } - - IConnectionPoint * HookIConnectionPoint(IConnectionPoint * p) - { - return new CConnectionPoint(p); - } - - IEnumConnections * HookIEnumConnections(IEnumConnections * p) - { - return new CEnumConnections(p); - } - - class CAdvancedSettings: public IMsRdpClientAdvancedSettings4 - { - private: - LONG m_refCount; - IUnknown * m_IUnknown; - IDispatch * m_IDispatch; - IMsTscAdvancedSettings * m_IMsTscAdvancedSettings; - IMsRdpClientAdvancedSettings * m_IMsRdpClientAdvancedSettings; - IMsRdpClientAdvancedSettings2 * m_IMsRdpClientAdvancedSettings2; - IMsRdpClientAdvancedSettings3 * m_IMsRdpClientAdvancedSettings3; - IMsRdpClientAdvancedSettings4 * m_IMsRdpClientAdvancedSettings4; - - IDispatch * getIDispatch() - { - assert(m_IDispatch); - return m_IDispatch; - } - - IMsTscAdvancedSettings * getIMsTscAdvancedSettings() - { - if(m_IMsTscAdvancedSettings) - return m_IMsTscAdvancedSettings; - else if(m_IMsRdpClientAdvancedSettings) - m_IMsTscAdvancedSettings = m_IMsRdpClientAdvancedSettings; - else if(m_IMsRdpClientAdvancedSettings2) - m_IMsTscAdvancedSettings = m_IMsRdpClientAdvancedSettings2; - else if(m_IMsRdpClientAdvancedSettings3) - m_IMsTscAdvancedSettings = m_IMsRdpClientAdvancedSettings3; - else if(m_IMsRdpClientAdvancedSettings4) - m_IMsTscAdvancedSettings = m_IMsRdpClientAdvancedSettings4; - - if(m_IMsTscAdvancedSettings) - { - m_IMsTscAdvancedSettings->AddRef(); - return m_IMsTscAdvancedSettings; - } - - m_IUnknown->QueryInterface(&m_IMsTscAdvancedSettings); - return m_IMsTscAdvancedSettings; - } - - IMsRdpClientAdvancedSettings * getIMsRdpClientAdvancedSettings() - { - if(m_IMsRdpClientAdvancedSettings) - return m_IMsRdpClientAdvancedSettings; - else if(m_IMsRdpClientAdvancedSettings2) - m_IMsRdpClientAdvancedSettings = m_IMsRdpClientAdvancedSettings2; - else if(m_IMsRdpClientAdvancedSettings3) - m_IMsRdpClientAdvancedSettings = m_IMsRdpClientAdvancedSettings3; - else if(m_IMsRdpClientAdvancedSettings4) - m_IMsRdpClientAdvancedSettings = m_IMsRdpClientAdvancedSettings4; - - if(m_IMsRdpClientAdvancedSettings) - { - m_IMsRdpClientAdvancedSettings->AddRef(); - return m_IMsRdpClientAdvancedSettings; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClientAdvancedSettings); - return m_IMsRdpClientAdvancedSettings; - } - - IMsRdpClientAdvancedSettings2 * getIMsRdpClientAdvancedSettings2() - { - if(m_IMsRdpClientAdvancedSettings2) - return m_IMsRdpClientAdvancedSettings2; - else if(m_IMsRdpClientAdvancedSettings3) - m_IMsRdpClientAdvancedSettings2 = m_IMsRdpClientAdvancedSettings3; - else if(m_IMsRdpClientAdvancedSettings4) - m_IMsRdpClientAdvancedSettings2 = m_IMsRdpClientAdvancedSettings4; - - if(m_IMsRdpClientAdvancedSettings2) - { - m_IMsRdpClientAdvancedSettings2->AddRef(); - return m_IMsRdpClientAdvancedSettings2; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClientAdvancedSettings2); - return m_IMsRdpClientAdvancedSettings2; - } - - IMsRdpClientAdvancedSettings3 * getIMsRdpClientAdvancedSettings3() - { - if(m_IMsRdpClientAdvancedSettings3) - return m_IMsRdpClientAdvancedSettings3; - else if(m_IMsRdpClientAdvancedSettings4) - m_IMsRdpClientAdvancedSettings3 = m_IMsRdpClientAdvancedSettings4; - - if(m_IMsRdpClientAdvancedSettings3) - { - m_IMsRdpClientAdvancedSettings3->AddRef(); - return m_IMsRdpClientAdvancedSettings3; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClientAdvancedSettings3); - return m_IMsRdpClientAdvancedSettings3; - } - - IMsRdpClientAdvancedSettings4 * getIMsRdpClientAdvancedSettings4() - { - if(m_IMsRdpClientAdvancedSettings4) - return m_IMsRdpClientAdvancedSettings4; - - if(m_IMsRdpClientAdvancedSettings4) - { - m_IMsRdpClientAdvancedSettings4->AddRef(); - return m_IMsRdpClientAdvancedSettings4; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClientAdvancedSettings4); - return m_IMsRdpClientAdvancedSettings4; - } - - ~CAdvancedSettings() - { - m_IUnknown->Release(); - m_IDispatch->Release(); - - if(m_IMsTscAdvancedSettings) - m_IMsTscAdvancedSettings->Release(); - - if(m_IMsRdpClientAdvancedSettings) - m_IMsRdpClientAdvancedSettings->Release(); - - if(m_IMsRdpClientAdvancedSettings2) - m_IMsRdpClientAdvancedSettings2->Release(); - - if(m_IMsRdpClientAdvancedSettings3) - m_IMsRdpClientAdvancedSettings3->Release(); - - if(m_IMsRdpClientAdvancedSettings4) - m_IMsRdpClientAdvancedSettings4->Release(); - } - - void Init(IMsTscAdvancedSettings * p) - { - m_IMsTscAdvancedSettings = p; - } - - void Init(IMsRdpClientAdvancedSettings * p) - { - m_IMsRdpClientAdvancedSettings = p; - } - - void Init(IMsRdpClientAdvancedSettings2 * p) - { - m_IMsRdpClientAdvancedSettings2 = p; - } - - void Init(IMsRdpClientAdvancedSettings3 * p) - { - m_IMsRdpClientAdvancedSettings3 = p; - } - - void Init(IMsRdpClientAdvancedSettings4 * p) - { - m_IMsRdpClientAdvancedSettings4 = p; - } - - public: - template CAdvancedSettings(Interface * p): - m_refCount(1), - m_IUnknown(p), - m_IDispatch(p), - m_IMsTscAdvancedSettings(NULL), - m_IMsRdpClientAdvancedSettings(NULL), - m_IMsRdpClientAdvancedSettings2(NULL), - m_IMsRdpClientAdvancedSettings3(NULL), - m_IMsRdpClientAdvancedSettings4(NULL) - { - assert(p); - p->AddRef(); - p->AddRef(); - Init(p); - } - - /* IUnknown */ - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr; - IUnknown * pvObject; - - dbgprintf(TEXT("CAdvancedSettings::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - -#define QIBEGIN() \ - if(riid == IID_IUnknown) \ - { \ - hr = S_OK; \ - pvObject = (IUnknown *)(this); \ - } - -#define QI(I) \ - else if(riid == IID_ ## I) \ - { \ - if(m_ ## I) \ - { \ - m_ ## I->AddRef(); \ - hr = S_OK; \ - } \ - else \ - { \ - hr = m_IUnknown->QueryInterface(&m_ ## I); \ - } \ - \ - if(SUCCEEDED(hr)) \ - pvObject = static_cast(this); \ - } - -#define QIEND() \ - else \ - { \ - hr = E_NOINTERFACE; \ - pvObject = NULL; \ - } - - QIBEGIN() - QI(IDispatch) - QI(IMsTscAdvancedSettings) - QI(IMsRdpClientAdvancedSettings) - QI(IMsRdpClientAdvancedSettings2) - QI(IMsRdpClientAdvancedSettings3) - QI(IMsRdpClientAdvancedSettings4) - QIEND() - -#undef QIBEGIN -#undef QIEND -#undef QI - - if(SUCCEEDED(hr)) - { - assert(pvObject); - pvObject->AddRef(); - } - else - { - assert(pvObject == NULL); - } - - *ppvObject = pvObject; - - dbgprintf(TEXT("CAdvancedSettings::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - /* IDispatch */ - /* - * p = get(); - dbgprintf(TEXT("CAdvancedSettings::()"), ); - HRESULT hr = p->(); - dbgprintf(TEXT("CAdvancedSettings:: -> %08X, "), hr, ); - return hr; - */ - virtual STDMETHODIMP IDispatch::GetTypeInfoCount(UINT * pctinfo) - { - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("CAdvancedSettings::GetTypeInfoCount(%p)"), pctinfo); - HRESULT hr = pIDispatch->GetTypeInfoCount(pctinfo); - dbgprintf(TEXT("CAdvancedSettings::GetTypeInfoCount -> %08X, ctinfo = %u"), hr, *pctinfo); - return hr; - } - - virtual STDMETHODIMP IDispatch::GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo ** ppTInfo) - { - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("CAdvancedSettings::GetTypeInfo(%u, %lu, %p)"), iTInfo, lcid, ppTInfo); - HRESULT hr = pIDispatch->GetTypeInfo(iTInfo, lcid, ppTInfo); - dbgprintf(TEXT("CAdvancedSettings::GetTypeInfo -> %08X, pTInfo = %p"), hr, *ppTInfo); - return hr; - } - - virtual STDMETHODIMP IDispatch::GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId) - { - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("CAdvancedSettings::GetIDsOfNames(%ls, %ls, %d, %lu, %p)"), UUIDToString(riid).c_str(), *rgszNames, cNames, lcid, rgDispId); - HRESULT hr = pIDispatch->GetIDsOfNames(riid, rgszNames, cNames, lcid, rgDispId); - dbgprintf(TEXT("CAdvancedSettings::GetIDsOfNames -> %08X, rgDispId = %ld"), hr, *rgDispId); - return hr; - } - - virtual STDMETHODIMP IDispatch::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS * pDispParams, VARIANT * pVarResult, EXCEPINFO * pExcepInfo, UINT * puArgErr) - { - // TODO - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("CAdvancedSettings::Invoke()")/*, */); - HRESULT hr = pIDispatch->Invoke(dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr); - dbgprintf(TEXT("CAdvancedSettings::Invoke -> %08X, "), hr/*, */); - return hr; - } - - /* IMsTscAdvancedSettings */ - virtual STDMETHODIMP IMsTscAdvancedSettings::put_Compress(long pcompress) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_Compress(%ld)"), pcompress); - HRESULT hr = pIMsTscAdvancedSettings->put_Compress(pcompress); - dbgprintf(TEXT("CAdvancedSettings::put_Compress -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_Compress(long * pcompress) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_Compress(%p)"), pcompress); - HRESULT hr = pIMsTscAdvancedSettings->get_Compress(pcompress); - dbgprintf(TEXT("CAdvancedSettings::get_Compress -> %08X, compress = %ld"), hr, *pcompress); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_BitmapPeristence(long pbitmapPeristence) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapPeristence(%ld)"), pbitmapPeristence); - HRESULT hr = pIMsTscAdvancedSettings->put_BitmapPeristence(pbitmapPeristence); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapPeristence -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_BitmapPeristence(long * pbitmapPeristence) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapPeristence(%p)"), pbitmapPeristence); - HRESULT hr = pIMsTscAdvancedSettings->get_BitmapPeristence(pbitmapPeristence); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapPeristence -> %08X, bitmapPeristence = %ld"), hr, *pbitmapPeristence); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_allowBackgroundInput(long pallowBackgroundInput) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_allowBackgroundInput(%ld)"), pallowBackgroundInput); - HRESULT hr = pIMsTscAdvancedSettings->put_allowBackgroundInput(pallowBackgroundInput); - dbgprintf(TEXT("CAdvancedSettings::put_allowBackgroundInput -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_allowBackgroundInput(long * pallowBackgroundInput) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_allowBackgroundInput(%p)"), pallowBackgroundInput); - HRESULT hr = pIMsTscAdvancedSettings->get_allowBackgroundInput(pallowBackgroundInput); - dbgprintf(TEXT("CAdvancedSettings::get_allowBackgroundInput -> %08X, allowBackgroundInput = %ld"), hr, *pallowBackgroundInput); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_KeyBoardLayoutStr(BSTR rhs) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_KeyBoardLayoutStr(%ls)"), rhs); - HRESULT hr = pIMsTscAdvancedSettings->put_KeyBoardLayoutStr(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_KeyBoardLayoutStr -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_PluginDlls(BSTR rhs) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_PluginDlls(%ls)"), rhs); - HRESULT hr = pIMsTscAdvancedSettings->put_PluginDlls(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_PluginDlls -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_IconFile(BSTR rhs) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_IconFile(%ls)"), rhs); - HRESULT hr = pIMsTscAdvancedSettings->put_IconFile(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_IconFile -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_IconIndex(long rhs) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_IconIndex(%ld)"), rhs); - HRESULT hr = pIMsTscAdvancedSettings->put_IconIndex(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_IconIndex -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_ContainerHandledFullScreen(long pContainerHandledFullScreen) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ContainerHandledFullScreen(%ld)"), pContainerHandledFullScreen); - HRESULT hr = pIMsTscAdvancedSettings->put_ContainerHandledFullScreen(pContainerHandledFullScreen); - dbgprintf(TEXT("CAdvancedSettings::put_ContainerHandledFullScreen -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_ContainerHandledFullScreen(long * pContainerHandledFullScreen) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_ContainerHandledFullScreen(%p)"), pContainerHandledFullScreen); - HRESULT hr = pIMsTscAdvancedSettings->get_ContainerHandledFullScreen(pContainerHandledFullScreen); - dbgprintf(TEXT("CAdvancedSettings::get_ContainerHandledFullScreen -> %08X, ContainerHandledFullScreen = %ld"), hr, *pContainerHandledFullScreen); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_DisableRdpdr(long pDisableRdpdr) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_DisableRdpdr(%ld)"), pDisableRdpdr); - HRESULT hr = pIMsTscAdvancedSettings->put_DisableRdpdr(pDisableRdpdr); - dbgprintf(TEXT("CAdvancedSettings::put_DisableRdpdr -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_DisableRdpdr(long * pDisableRdpdr) - { - IMsTscAdvancedSettings * pIMsTscAdvancedSettings = getIMsTscAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_DisableRdpdr(%p)"), pDisableRdpdr); - HRESULT hr = pIMsTscAdvancedSettings->get_DisableRdpdr(pDisableRdpdr); - dbgprintf(TEXT("CAdvancedSettings::get_DisableRdpdr -> %08X, DisableRdpdr = %ld"), hr, *pDisableRdpdr); - return hr; - } - - /* IMsRdpClientAdvancedSettings */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SmoothScroll(long psmoothScroll) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_SmoothScroll(%ld)"), psmoothScroll); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_SmoothScroll(psmoothScroll); - dbgprintf(TEXT("CAdvancedSettings::put_SmoothScroll -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SmoothScroll(long * psmoothScroll) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_SmoothScroll(%p)"), psmoothScroll); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_SmoothScroll(psmoothScroll); - dbgprintf(TEXT("CAdvancedSettings::get_SmoothScroll -> %08X, smoothScroll = %ld"), hr, *psmoothScroll); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_AcceleratorPassthrough(long pacceleratorPassthrough) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_AcceleratorPassthrough(%ld)"), pacceleratorPassthrough); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_AcceleratorPassthrough(pacceleratorPassthrough); - dbgprintf(TEXT("CAdvancedSettings::put_AcceleratorPassthrough -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_AcceleratorPassthrough(long * pacceleratorPassthrough) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_AcceleratorPassthrough(%p)"), pacceleratorPassthrough); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_AcceleratorPassthrough(pacceleratorPassthrough); - dbgprintf(TEXT("CAdvancedSettings::get_AcceleratorPassthrough -> %08X, acceleratorPassthrough = %ld"), hr, *pacceleratorPassthrough); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ShadowBitmap(long pshadowBitmap) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ShadowBitmap(%ld)"), pshadowBitmap); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_ShadowBitmap(pshadowBitmap); - dbgprintf(TEXT("CAdvancedSettings::put_ShadowBitmap -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ShadowBitmap(long * pshadowBitmap) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_ShadowBitmap(%p)"), pshadowBitmap); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_ShadowBitmap(pshadowBitmap); - dbgprintf(TEXT("CAdvancedSettings::get_ShadowBitmap -> %08X, shadowBitmap = %ld"), hr, *pshadowBitmap); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_TransportType(long ptransportType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_TransportType(%ld)"), ptransportType); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_TransportType(ptransportType); - dbgprintf(TEXT("CAdvancedSettings::put_TransportType -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_TransportType(long * ptransportType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_TransportType(%p)"), ptransportType); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_TransportType(ptransportType); - dbgprintf(TEXT("CAdvancedSettings::get_TransportType -> %08X, transportType = %ld"), hr, *ptransportType); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SasSequence(long psasSequence) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_SasSequence(%ld)"), psasSequence); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_SasSequence(psasSequence); - dbgprintf(TEXT("CAdvancedSettings::put_SasSequence -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SasSequence(long * psasSequence) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_SasSequence(%p)"), psasSequence); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_SasSequence(psasSequence); - dbgprintf(TEXT("CAdvancedSettings::get_SasSequence -> %08X, sasSequence = %ld"), hr, *psasSequence); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EncryptionEnabled(long pencryptionEnabled) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_EncryptionEnabled(%ld)"), pencryptionEnabled); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_EncryptionEnabled(pencryptionEnabled); - dbgprintf(TEXT("CAdvancedSettings::put_EncryptionEnabled -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EncryptionEnabled(long * pencryptionEnabled) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_EncryptionEnabled(%p)"), pencryptionEnabled); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_EncryptionEnabled(pencryptionEnabled); - dbgprintf(TEXT("CAdvancedSettings::get_EncryptionEnabled -> %08X, encryptionEnabled = %ld"), hr, *pencryptionEnabled); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DedicatedTerminal(long pdedicatedTerminal) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_DedicatedTerminal(%ld)"), pdedicatedTerminal); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_DedicatedTerminal(pdedicatedTerminal); - dbgprintf(TEXT("CAdvancedSettings::put_DedicatedTerminal -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DedicatedTerminal(long * pdedicatedTerminal) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_DedicatedTerminal(%p)"), pdedicatedTerminal); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_DedicatedTerminal(pdedicatedTerminal); - dbgprintf(TEXT("CAdvancedSettings::get_DedicatedTerminal -> %08X, dedicatedTerminal = %ld"), hr, *pdedicatedTerminal); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RDPPort(long prdpPort) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RDPPort(%ld)"), prdpPort); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RDPPort(prdpPort); - dbgprintf(TEXT("CAdvancedSettings::put_RDPPort -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RDPPort(long * prdpPort) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RDPPort(%p)"), prdpPort); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RDPPort(prdpPort); - dbgprintf(TEXT("CAdvancedSettings::get_RDPPort -> %08X, rdpPort = %ld"), hr, *prdpPort); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EnableMouse(long penableMouse) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_EnableMouse(%ld)"), penableMouse); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_EnableMouse(penableMouse); - dbgprintf(TEXT("CAdvancedSettings::put_EnableMouse -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EnableMouse(long * penableMouse) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_EnableMouse(%p)"), penableMouse); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_EnableMouse(penableMouse); - dbgprintf(TEXT("CAdvancedSettings::get_EnableMouse -> %08X, enableMouse = %ld"), hr, *penableMouse); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DisableCtrlAltDel(long pdisableCtrlAltDel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_DisableCtrlAltDel(%ld)"), pdisableCtrlAltDel); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_DisableCtrlAltDel(pdisableCtrlAltDel); - dbgprintf(TEXT("CAdvancedSettings::put_DisableCtrlAltDel -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DisableCtrlAltDel(long * pdisableCtrlAltDel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_DisableCtrlAltDel(%p)"), pdisableCtrlAltDel); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_DisableCtrlAltDel(pdisableCtrlAltDel); - dbgprintf(TEXT("CAdvancedSettings::get_DisableCtrlAltDel -> %08X, disableCtrlAltDel = %ld"), hr, *pdisableCtrlAltDel); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EnableWindowsKey(long penableWindowsKey) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_EnableWindowsKey(%ld)"), penableWindowsKey); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_EnableWindowsKey(penableWindowsKey); - dbgprintf(TEXT("CAdvancedSettings::put_EnableWindowsKey -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EnableWindowsKey(long * penableWindowsKey) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_EnableWindowsKey(%p)"), penableWindowsKey); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_EnableWindowsKey(penableWindowsKey); - dbgprintf(TEXT("CAdvancedSettings::get_EnableWindowsKey -> %08X, enableWindowsKey = %ld"), hr, *penableWindowsKey); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DoubleClickDetect(long pdoubleClickDetect) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_DoubleClickDetect(%ld)"), pdoubleClickDetect); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_DoubleClickDetect(pdoubleClickDetect); - dbgprintf(TEXT("CAdvancedSettings::put_DoubleClickDetect -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DoubleClickDetect(long * pdoubleClickDetect) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_DoubleClickDetect(%p)"), pdoubleClickDetect); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_DoubleClickDetect(pdoubleClickDetect); - dbgprintf(TEXT("CAdvancedSettings::get_DoubleClickDetect -> %08X, doubleClickDetect = %ld"), hr, *pdoubleClickDetect); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_MaximizeShell(long pmaximizeShell) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_MaximizeShell(%ld)"), pmaximizeShell); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_MaximizeShell(pmaximizeShell); - dbgprintf(TEXT("CAdvancedSettings::put_MaximizeShell -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_MaximizeShell(long * pmaximizeShell) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_MaximizeShell(%p)"), pmaximizeShell); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_MaximizeShell(pmaximizeShell); - dbgprintf(TEXT("CAdvancedSettings::get_MaximizeShell -> %08X, maximizeShell = %ld"), hr, *pmaximizeShell); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyFullScreen(long photKeyFullScreen) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyFullScreen(%ld)"), photKeyFullScreen); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyFullScreen(photKeyFullScreen); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyFullScreen -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyFullScreen(long * photKeyFullScreen) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyFullScreen(%p)"), photKeyFullScreen); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyFullScreen(photKeyFullScreen); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyFullScreen -> %08X, hotKeyFullScreen = %ld"), hr, *photKeyFullScreen); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyCtrlEsc(long photKeyCtrlEsc) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlEsc(%ld)"), photKeyCtrlEsc); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyCtrlEsc(photKeyCtrlEsc); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlEsc -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyCtrlEsc(long * photKeyCtrlEsc) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlEsc(%p)"), photKeyCtrlEsc); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyCtrlEsc(photKeyCtrlEsc); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlEsc -> %08X, hotKeyCtrlEsc = %ld"), hr, *photKeyCtrlEsc); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltEsc(long photKeyAltEsc) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltEsc(%ld)"), photKeyAltEsc); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyAltEsc(photKeyAltEsc); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltEsc -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltEsc(long * photKeyAltEsc) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltEsc(%p)"), photKeyAltEsc); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyAltEsc(photKeyAltEsc); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltEsc -> %08X, hotKeyAltEsc = %ld"), hr, *photKeyAltEsc); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltTab(long photKeyAltTab) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltTab(%ld)"), photKeyAltTab); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyAltTab(photKeyAltTab); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltTab -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltTab(long * photKeyAltTab) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltTab(%p)"), photKeyAltTab); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyAltTab(photKeyAltTab); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltTab -> %08X, hotKeyAltTab = %ld"), hr, *photKeyAltTab); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltShiftTab(long photKeyAltShiftTab) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltShiftTab(%ld)"), photKeyAltShiftTab); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyAltShiftTab(photKeyAltShiftTab); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltShiftTab -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltShiftTab(long * photKeyAltShiftTab) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltShiftTab(%p)"), photKeyAltShiftTab); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyAltShiftTab(photKeyAltShiftTab); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltShiftTab -> %08X, hotKeyAltShiftTab = %ld"), hr, *photKeyAltShiftTab); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltSpace(long photKeyAltSpace) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltSpace(%ld)"), photKeyAltSpace); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyAltSpace(photKeyAltSpace); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyAltSpace -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltSpace(long * photKeyAltSpace) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltSpace(%p)"), photKeyAltSpace); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyAltSpace(photKeyAltSpace); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyAltSpace -> %08X, hotKeyAltSpace = %ld"), hr, *photKeyAltSpace); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyCtrlAltDel(long photKeyCtrlAltDel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlAltDel(%ld)"), photKeyCtrlAltDel); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_HotKeyCtrlAltDel(photKeyCtrlAltDel); - dbgprintf(TEXT("CAdvancedSettings::put_HotKeyCtrlAltDel -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyCtrlAltDel(long * photKeyCtrlAltDel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlAltDel(%p)"), photKeyCtrlAltDel); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_HotKeyCtrlAltDel(photKeyCtrlAltDel); - dbgprintf(TEXT("CAdvancedSettings::get_HotKeyCtrlAltDel -> %08X, hotKeyCtrlAltDel = %ld"), hr, *photKeyCtrlAltDel); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_orderDrawThreshold(long porderDrawThreshold) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_orderDrawThreshold(%ld)"), porderDrawThreshold); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_orderDrawThreshold(porderDrawThreshold); - dbgprintf(TEXT("CAdvancedSettings::put_orderDrawThreshold -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_orderDrawThreshold(long * porderDrawThreshold) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_orderDrawThreshold(%p)"), porderDrawThreshold); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_orderDrawThreshold(porderDrawThreshold); - dbgprintf(TEXT("CAdvancedSettings::get_orderDrawThreshold -> %08X, orderDrawThreshold = %ld"), hr, *porderDrawThreshold); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapCacheSize(long pbitmapCacheSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapCacheSize(%ld)"), pbitmapCacheSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_BitmapCacheSize(pbitmapCacheSize); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapCacheSize -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapCacheSize(long * pbitmapCacheSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapCacheSize(%p)"), pbitmapCacheSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_BitmapCacheSize(pbitmapCacheSize); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapCacheSize -> %08X, bitmapCacheSize = %ld"), hr, *pbitmapCacheSize); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCacheSize(long pbitmapVirtualCacheSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCacheSize(%ld)"), pbitmapVirtualCacheSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_BitmapVirtualCacheSize(pbitmapVirtualCacheSize); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCacheSize -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCacheSize(long * pbitmapVirtualCacheSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCacheSize(%p)"), pbitmapVirtualCacheSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_BitmapVirtualCacheSize(pbitmapVirtualCacheSize); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCacheSize -> %08X, bitmapVirtualCacheSize = %ld"), hr, *pbitmapVirtualCacheSize); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ScaleBitmapCachesByBPP(long pbScale) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ScaleBitmapCachesByBPP(%ld)"), pbScale); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_ScaleBitmapCachesByBPP(pbScale); - dbgprintf(TEXT("CAdvancedSettings::put_ScaleBitmapCachesByBPP -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ScaleBitmapCachesByBPP(long * pbScale) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_ScaleBitmapCachesByBPP(%p)"), pbScale); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_ScaleBitmapCachesByBPP(pbScale); - dbgprintf(TEXT("CAdvancedSettings::get_ScaleBitmapCachesByBPP -> %08X, bScale = %ld"), hr, *pbScale); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_NumBitmapCaches(long pnumBitmapCaches) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_NumBitmapCaches(%ld)"), pnumBitmapCaches); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_NumBitmapCaches(pnumBitmapCaches); - dbgprintf(TEXT("CAdvancedSettings::put_NumBitmapCaches -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_NumBitmapCaches(long * pnumBitmapCaches) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_NumBitmapCaches(%p)"), pnumBitmapCaches); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_NumBitmapCaches(pnumBitmapCaches); - dbgprintf(TEXT("CAdvancedSettings::get_NumBitmapCaches -> %08X, numBitmapCaches = %ld"), hr, *pnumBitmapCaches); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_CachePersistenceActive(long pcachePersistenceActive) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_CachePersistenceActive(%ld)"), pcachePersistenceActive); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_CachePersistenceActive(pcachePersistenceActive); - dbgprintf(TEXT("CAdvancedSettings::put_CachePersistenceActive -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_CachePersistenceActive(long * pcachePersistenceActive) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_CachePersistenceActive(%p)"), pcachePersistenceActive); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_CachePersistenceActive(pcachePersistenceActive); - dbgprintf(TEXT("CAdvancedSettings::get_CachePersistenceActive -> %08X, cachePersistenceActive = %ld"), hr, *pcachePersistenceActive); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PersistCacheDirectory(BSTR rhs) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_PersistCacheDirectory(%ls)"), rhs); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_PersistCacheDirectory(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_PersistCacheDirectory -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_brushSupportLevel(long pbrushSupportLevel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_brushSupportLevel(%ld)"), pbrushSupportLevel); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_brushSupportLevel(pbrushSupportLevel); - dbgprintf(TEXT("CAdvancedSettings::put_brushSupportLevel -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_brushSupportLevel(long * pbrushSupportLevel) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_brushSupportLevel(%p)"), pbrushSupportLevel); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_brushSupportLevel(pbrushSupportLevel); - dbgprintf(TEXT("CAdvancedSettings::get_brushSupportLevel -> %08X, brushSupportLevel = %ld"), hr, *pbrushSupportLevel); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_minInputSendInterval(long pminInputSendInterval) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_minInputSendInterval(%ld)"), pminInputSendInterval); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_minInputSendInterval(pminInputSendInterval); - dbgprintf(TEXT("CAdvancedSettings::put_minInputSendInterval -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_minInputSendInterval(long * pminInputSendInterval) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_minInputSendInterval(%p)"), pminInputSendInterval); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_minInputSendInterval(pminInputSendInterval); - dbgprintf(TEXT("CAdvancedSettings::get_minInputSendInterval -> %08X, minInputSendInterval = %ld"), hr, *pminInputSendInterval); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_InputEventsAtOnce(long pinputEventsAtOnce) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_InputEventsAtOnce(%ld)"), pinputEventsAtOnce); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_InputEventsAtOnce(pinputEventsAtOnce); - dbgprintf(TEXT("CAdvancedSettings::put_InputEventsAtOnce -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_InputEventsAtOnce(long * pinputEventsAtOnce) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_InputEventsAtOnce(%p)"), pinputEventsAtOnce); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_InputEventsAtOnce(pinputEventsAtOnce); - dbgprintf(TEXT("CAdvancedSettings::get_InputEventsAtOnce -> %08X, inputEventsAtOnce = %ld"), hr, *pinputEventsAtOnce); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_maxEventCount(long pmaxEventCount) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_maxEventCount(%ld)"), pmaxEventCount); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_maxEventCount(pmaxEventCount); - dbgprintf(TEXT("CAdvancedSettings::put_maxEventCount -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_maxEventCount(long * pmaxEventCount) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_maxEventCount(%p)"), pmaxEventCount); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_maxEventCount(pmaxEventCount); - dbgprintf(TEXT("CAdvancedSettings::get_maxEventCount -> %08X, maxEventCount = %ld"), hr, *pmaxEventCount); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_keepAliveInterval(long pkeepAliveInterval) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_keepAliveInterval(%ld)"), pkeepAliveInterval); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_keepAliveInterval(pkeepAliveInterval); - dbgprintf(TEXT("CAdvancedSettings::put_keepAliveInterval -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_keepAliveInterval(long * pkeepAliveInterval) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_keepAliveInterval(%p)"), pkeepAliveInterval); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_keepAliveInterval(pkeepAliveInterval); - dbgprintf(TEXT("CAdvancedSettings::get_keepAliveInterval -> %08X, keepAliveInterval = %ld"), hr, *pkeepAliveInterval); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_shutdownTimeout(long pshutdownTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_shutdownTimeout(%ld)"), pshutdownTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_shutdownTimeout(pshutdownTimeout); - dbgprintf(TEXT("CAdvancedSettings::put_shutdownTimeout -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_shutdownTimeout(long * pshutdownTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_shutdownTimeout(%p)"), pshutdownTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_shutdownTimeout(pshutdownTimeout); - dbgprintf(TEXT("CAdvancedSettings::get_shutdownTimeout -> %08X, shutdownTimeout = %ld"), hr, *pshutdownTimeout); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_overallConnectionTimeout(long poverallConnectionTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_overallConnectionTimeout(%ld)"), poverallConnectionTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_overallConnectionTimeout(poverallConnectionTimeout); - dbgprintf(TEXT("CAdvancedSettings::put_overallConnectionTimeout -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_overallConnectionTimeout(long * poverallConnectionTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_overallConnectionTimeout(%p)"), poverallConnectionTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_overallConnectionTimeout(poverallConnectionTimeout); - dbgprintf(TEXT("CAdvancedSettings::get_overallConnectionTimeout -> %08X, overallConnectionTimeout = %ld"), hr, *poverallConnectionTimeout); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_singleConnectionTimeout(long psingleConnectionTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_singleConnectionTimeout(%ld)"), psingleConnectionTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_singleConnectionTimeout(psingleConnectionTimeout); - dbgprintf(TEXT("CAdvancedSettings::put_singleConnectionTimeout -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_singleConnectionTimeout(long * psingleConnectionTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_singleConnectionTimeout(%p)"), psingleConnectionTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_singleConnectionTimeout(psingleConnectionTimeout); - dbgprintf(TEXT("CAdvancedSettings::get_singleConnectionTimeout -> %08X, singleConnectionTimeout = %ld"), hr, *psingleConnectionTimeout); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardType(long pkeyboardType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardType(%ld)"), pkeyboardType); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_KeyboardType(pkeyboardType); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardType -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardType(long * pkeyboardType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardType(%p)"), pkeyboardType); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_KeyboardType(pkeyboardType); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardType -> %08X, keyboardType = %ld"), hr, *pkeyboardType); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardSubType(long pkeyboardSubType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardSubType(%ld)"), pkeyboardSubType); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_KeyboardSubType(pkeyboardSubType); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardSubType -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardSubType(long * pkeyboardSubType) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardSubType(%p)"), pkeyboardSubType); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_KeyboardSubType(pkeyboardSubType); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardSubType -> %08X, keyboardSubType = %ld"), hr, *pkeyboardSubType); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardFunctionKey(long pkeyboardFunctionKey) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardFunctionKey(%ld)"), pkeyboardFunctionKey); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_KeyboardFunctionKey(pkeyboardFunctionKey); - dbgprintf(TEXT("CAdvancedSettings::put_KeyboardFunctionKey -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardFunctionKey(long * pkeyboardFunctionKey) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardFunctionKey(%p)"), pkeyboardFunctionKey); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_KeyboardFunctionKey(pkeyboardFunctionKey); - dbgprintf(TEXT("CAdvancedSettings::get_KeyboardFunctionKey -> %08X, keyboardFunctionKey = %ld"), hr, *pkeyboardFunctionKey); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_WinceFixedPalette(long pwinceFixedPalette) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_WinceFixedPalette(%ld)"), pwinceFixedPalette); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_WinceFixedPalette(pwinceFixedPalette); - dbgprintf(TEXT("CAdvancedSettings::put_WinceFixedPalette -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_WinceFixedPalette(long * pwinceFixedPalette) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_WinceFixedPalette(%p)"), pwinceFixedPalette); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_WinceFixedPalette(pwinceFixedPalette); - dbgprintf(TEXT("CAdvancedSettings::get_WinceFixedPalette -> %08X, winceFixedPalette = %ld"), hr, *pwinceFixedPalette); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ConnectToServerConsole(VARIANT_BOOL pConnectToConsole) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectToServerConsole(%s)"), BooleanToString(pConnectToConsole)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_ConnectToServerConsole(pConnectToConsole); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectToServerConsole -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ConnectToServerConsole(VARIANT_BOOL * pConnectToConsole) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectToServerConsole(%p)"), pConnectToConsole); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_ConnectToServerConsole(pConnectToConsole); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectToServerConsole -> %08X, ConnectToConsole = %s"), hr, BooleanToString(*pConnectToConsole)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapPersistence(long pbitmapPersistence) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapPersistence(%ld)"), pbitmapPersistence); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_BitmapPersistence(pbitmapPersistence); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapPersistence -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapPersistence(long * pbitmapPersistence) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapPersistence(%p)"), pbitmapPersistence); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_BitmapPersistence(pbitmapPersistence); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapPersistence -> %08X, bitmapPersistence = %ld"), hr, *pbitmapPersistence); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_MinutesToIdleTimeout(long pminutesToIdleTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_MinutesToIdleTimeout(%ld)"), pminutesToIdleTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_MinutesToIdleTimeout(pminutesToIdleTimeout); - dbgprintf(TEXT("CAdvancedSettings::put_MinutesToIdleTimeout -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_MinutesToIdleTimeout(long * pminutesToIdleTimeout) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_MinutesToIdleTimeout(%p)"), pminutesToIdleTimeout); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_MinutesToIdleTimeout(pminutesToIdleTimeout); - dbgprintf(TEXT("CAdvancedSettings::get_MinutesToIdleTimeout -> %08X, minutesToIdleTimeout = %ld"), hr, *pminutesToIdleTimeout); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SmartSizing(VARIANT_BOOL pfSmartSizing) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_SmartSizing(%s)"), BooleanToString(pfSmartSizing)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_SmartSizing(pfSmartSizing); - dbgprintf(TEXT("CAdvancedSettings::put_SmartSizing -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SmartSizing(VARIANT_BOOL * pfSmartSizing) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_SmartSizing(%p)"), pfSmartSizing); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_SmartSizing(pfSmartSizing); - dbgprintf(TEXT("CAdvancedSettings::get_SmartSizing -> %08X, fSmartSizing = %s"), hr, BooleanToString(*pfSmartSizing)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrLocalPrintingDocName(BSTR pLocalPrintingDocName) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrLocalPrintingDocName(%ls)"), pLocalPrintingDocName); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RdpdrLocalPrintingDocName(pLocalPrintingDocName); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrLocalPrintingDocName -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrLocalPrintingDocName(BSTR * pLocalPrintingDocName) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrLocalPrintingDocName(%p)"), pLocalPrintingDocName); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RdpdrLocalPrintingDocName(pLocalPrintingDocName); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrLocalPrintingDocName -> %08X, LocalPrintingDocName = %ls"), hr, *pLocalPrintingDocName); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrClipCleanTempDirString(BSTR clipCleanTempDirString) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipCleanTempDirString(%ls)"), clipCleanTempDirString); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RdpdrClipCleanTempDirString(clipCleanTempDirString); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipCleanTempDirString -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrClipCleanTempDirString(BSTR * clipCleanTempDirString) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipCleanTempDirString(%p)"), clipCleanTempDirString); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RdpdrClipCleanTempDirString(clipCleanTempDirString); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipCleanTempDirString -> %08X, clipCleanTempDirString = %ls"), hr, *clipCleanTempDirString); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrClipPasteInfoString(BSTR clipPasteInfoString) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipPasteInfoString(%ls)"), clipPasteInfoString); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RdpdrClipPasteInfoString(clipPasteInfoString); - dbgprintf(TEXT("CAdvancedSettings::put_RdpdrClipPasteInfoString -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrClipPasteInfoString(BSTR * clipPasteInfoString) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipPasteInfoString(%p)"), clipPasteInfoString); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RdpdrClipPasteInfoString(clipPasteInfoString); - dbgprintf(TEXT("CAdvancedSettings::get_RdpdrClipPasteInfoString -> %08X, clipPasteInfoString = %ls"), hr, *clipPasteInfoString); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ClearTextPassword(BSTR rhs) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ClearTextPassword(%ls)"), rhs); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_ClearTextPassword(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_ClearTextPassword -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DisplayConnectionBar(VARIANT_BOOL pDisplayConnectionBar) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_DisplayConnectionBar(%s)"), BooleanToString(pDisplayConnectionBar)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_DisplayConnectionBar(pDisplayConnectionBar); - dbgprintf(TEXT("CAdvancedSettings::put_DisplayConnectionBar -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DisplayConnectionBar(VARIANT_BOOL * pDisplayConnectionBar) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_DisplayConnectionBar(%p)"), pDisplayConnectionBar); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_DisplayConnectionBar(pDisplayConnectionBar); - dbgprintf(TEXT("CAdvancedSettings::get_DisplayConnectionBar -> %08X, DisplayConnectionBar = %s"), hr, BooleanToString(*pDisplayConnectionBar)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PinConnectionBar(VARIANT_BOOL pPinConnectionBar) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_PinConnectionBar(%s)"), BooleanToString(pPinConnectionBar)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_PinConnectionBar(pPinConnectionBar); - dbgprintf(TEXT("CAdvancedSettings::put_PinConnectionBar -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_PinConnectionBar(VARIANT_BOOL * pPinConnectionBar) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_PinConnectionBar(%p)"), pPinConnectionBar); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_PinConnectionBar(pPinConnectionBar); - dbgprintf(TEXT("CAdvancedSettings::get_PinConnectionBar -> %08X, PinConnectionBar = %s"), hr, BooleanToString(*pPinConnectionBar)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_GrabFocusOnConnect(VARIANT_BOOL pfGrabFocusOnConnect) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_GrabFocusOnConnect(%s)"), BooleanToString(pfGrabFocusOnConnect)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_GrabFocusOnConnect(pfGrabFocusOnConnect); - dbgprintf(TEXT("CAdvancedSettings::put_GrabFocusOnConnect -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_GrabFocusOnConnect(VARIANT_BOOL * pfGrabFocusOnConnect) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_GrabFocusOnConnect(%p)"), pfGrabFocusOnConnect); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_GrabFocusOnConnect(pfGrabFocusOnConnect); - dbgprintf(TEXT("CAdvancedSettings::get_GrabFocusOnConnect -> %08X, fGrabFocusOnConnect = %s"), hr, BooleanToString(*pfGrabFocusOnConnect)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_LoadBalanceInfo(BSTR pLBInfo) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_LoadBalanceInfo(%ls)"), pLBInfo); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_LoadBalanceInfo(pLBInfo); - dbgprintf(TEXT("CAdvancedSettings::put_LoadBalanceInfo -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_LoadBalanceInfo(BSTR * pLBInfo) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_LoadBalanceInfo(%p)"), pLBInfo); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_LoadBalanceInfo(pLBInfo); - dbgprintf(TEXT("CAdvancedSettings::get_LoadBalanceInfo -> %08X, LBInfo = %ls"), hr, *pLBInfo); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectDrives(VARIANT_BOOL pRedirectDrives) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectDrives(%s)"), BooleanToString(pRedirectDrives)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RedirectDrives(pRedirectDrives); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectDrives -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectDrives(VARIANT_BOOL * pRedirectDrives) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectDrives(%p)"), pRedirectDrives); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RedirectDrives(pRedirectDrives); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectDrives -> %08X, RedirectDrives = %s"), hr, BooleanToString(*pRedirectDrives)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectPrinters(VARIANT_BOOL pRedirectPrinters) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectPrinters(%s)"), BooleanToString(pRedirectPrinters)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RedirectPrinters(pRedirectPrinters); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectPrinters -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectPrinters(VARIANT_BOOL * pRedirectPrinters) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectPrinters(%p)"), pRedirectPrinters); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RedirectPrinters(pRedirectPrinters); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectPrinters -> %08X, RedirectPrinters = %s"), hr, BooleanToString(*pRedirectPrinters)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectPorts(VARIANT_BOOL pRedirectPorts) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectPorts(%s)"), BooleanToString(pRedirectPorts)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RedirectPorts(pRedirectPorts); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectPorts -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectPorts(VARIANT_BOOL * pRedirectPorts) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectPorts(%p)"), pRedirectPorts); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RedirectPorts(pRedirectPorts); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectPorts -> %08X, RedirectPorts = %s"), hr, BooleanToString(*pRedirectPorts)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectSmartCards(VARIANT_BOOL pRedirectSmartCards) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectSmartCards(%s)"), BooleanToString(pRedirectSmartCards)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_RedirectSmartCards(pRedirectSmartCards); - dbgprintf(TEXT("CAdvancedSettings::put_RedirectSmartCards -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectSmartCards(VARIANT_BOOL * pRedirectSmartCards) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectSmartCards(%p)"), pRedirectSmartCards); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_RedirectSmartCards(pRedirectSmartCards); - dbgprintf(TEXT("CAdvancedSettings::get_RedirectSmartCards -> %08X, RedirectSmartCards = %s"), hr, BooleanToString(*pRedirectSmartCards)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCache16BppSize(long pBitmapVirtualCache16BppSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache16BppSize(%ld)"), pBitmapVirtualCache16BppSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_BitmapVirtualCache16BppSize(pBitmapVirtualCache16BppSize); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache16BppSize -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCache16BppSize(long * pBitmapVirtualCache16BppSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache16BppSize(%p)"), pBitmapVirtualCache16BppSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_BitmapVirtualCache16BppSize(pBitmapVirtualCache16BppSize); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache16BppSize -> %08X, BitmapVirtualCache16BppSize = %ld"), hr, *pBitmapVirtualCache16BppSize); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCache24BppSize(long pBitmapVirtualCache24BppSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache24BppSize(%ld)"), pBitmapVirtualCache24BppSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_BitmapVirtualCache24BppSize(pBitmapVirtualCache24BppSize); - dbgprintf(TEXT("CAdvancedSettings::put_BitmapVirtualCache24BppSize -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCache24BppSize(long * pBitmapVirtualCache24BppSize) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache24BppSize(%p)"), pBitmapVirtualCache24BppSize); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_BitmapVirtualCache24BppSize(pBitmapVirtualCache24BppSize); - dbgprintf(TEXT("CAdvancedSettings::get_BitmapVirtualCache24BppSize -> %08X, BitmapVirtualCache24BppSize = %ld"), hr, *pBitmapVirtualCache24BppSize); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PerformanceFlags(long pDisableList) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_PerformanceFlags(%ld)"), pDisableList); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_PerformanceFlags(pDisableList); - dbgprintf(TEXT("CAdvancedSettings::put_PerformanceFlags -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_PerformanceFlags(long * pDisableList) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_PerformanceFlags(%p)"), pDisableList); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_PerformanceFlags(pDisableList); - dbgprintf(TEXT("CAdvancedSettings::get_PerformanceFlags -> %08X, DisableList = %ld"), hr, *pDisableList); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ConnectWithEndpoint(VARIANT * rhs) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectWithEndpoint(%s)"), VariantToString(*rhs).c_str()); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_ConnectWithEndpoint(rhs); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectWithEndpoint -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_NotifyTSPublicKey(VARIANT_BOOL pfNotify) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::put_NotifyTSPublicKey(%s)"), BooleanToString(pfNotify)); - HRESULT hr = pIMsRdpClientAdvancedSettings->put_NotifyTSPublicKey(pfNotify); - dbgprintf(TEXT("CAdvancedSettings::put_NotifyTSPublicKey -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_NotifyTSPublicKey(VARIANT_BOOL * pfNotify) - { - IMsRdpClientAdvancedSettings * pIMsRdpClientAdvancedSettings = getIMsRdpClientAdvancedSettings(); - dbgprintf(TEXT("CAdvancedSettings::get_NotifyTSPublicKey(%p)"), pfNotify); - HRESULT hr = pIMsRdpClientAdvancedSettings->get_NotifyTSPublicKey(pfNotify); - dbgprintf(TEXT("CAdvancedSettings::get_NotifyTSPublicKey -> %08X, fNotify = %s"), hr, BooleanToString(*pfNotify)); - return hr; - } - - /* IMsRdpClientAdvancedSettings2 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_CanAutoReconnect(VARIANT_BOOL * pfCanAutoReconnect) - { - IMsRdpClientAdvancedSettings2 * pIMsRdpClientAdvancedSettings2 = getIMsRdpClientAdvancedSettings2(); - dbgprintf(TEXT("CAdvancedSettings::get_CanAutoReconnect(%p)"), pfCanAutoReconnect); - HRESULT hr = pIMsRdpClientAdvancedSettings2->get_CanAutoReconnect(pfCanAutoReconnect); - dbgprintf(TEXT("CAdvancedSettings::get_CanAutoReconnect -> %08X, fCanAutoReconnect = %s"), hr, BooleanToString(*pfCanAutoReconnect)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::put_EnableAutoReconnect(VARIANT_BOOL pfEnableAutoReconnect) - { - IMsRdpClientAdvancedSettings2 * pIMsRdpClientAdvancedSettings2 = getIMsRdpClientAdvancedSettings2(); - dbgprintf(TEXT("CAdvancedSettings::put_EnableAutoReconnect(%s)"), BooleanToString(pfEnableAutoReconnect)); - HRESULT hr = pIMsRdpClientAdvancedSettings2->put_EnableAutoReconnect(pfEnableAutoReconnect); - dbgprintf(TEXT("CAdvancedSettings::put_EnableAutoReconnect -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_EnableAutoReconnect(VARIANT_BOOL * pfEnableAutoReconnect) - { - IMsRdpClientAdvancedSettings2 * pIMsRdpClientAdvancedSettings2 = getIMsRdpClientAdvancedSettings2(); - dbgprintf(TEXT("CAdvancedSettings::get_EnableAutoReconnect(%p)"), pfEnableAutoReconnect); - HRESULT hr = pIMsRdpClientAdvancedSettings2->get_EnableAutoReconnect(pfEnableAutoReconnect); - dbgprintf(TEXT("CAdvancedSettings::get_EnableAutoReconnect -> %08X, fEnableAutoReconnect = %s"), hr, BooleanToString(*pfEnableAutoReconnect)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::put_MaxReconnectAttempts(long pMaxReconnectAttempts) - { - IMsRdpClientAdvancedSettings2 * pIMsRdpClientAdvancedSettings2 = getIMsRdpClientAdvancedSettings2(); - dbgprintf(TEXT("CAdvancedSettings::put_MaxReconnectAttempts(%ld)"), pMaxReconnectAttempts); - HRESULT hr = pIMsRdpClientAdvancedSettings2->put_MaxReconnectAttempts(pMaxReconnectAttempts); - dbgprintf(TEXT("CAdvancedSettings::put_MaxReconnectAttempts -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_MaxReconnectAttempts(long * pMaxReconnectAttempts) - { - IMsRdpClientAdvancedSettings2 * pIMsRdpClientAdvancedSettings2 = getIMsRdpClientAdvancedSettings2(); - dbgprintf(TEXT("CAdvancedSettings::get_MaxReconnectAttempts(%p)"), pMaxReconnectAttempts); - HRESULT hr = pIMsRdpClientAdvancedSettings2->get_MaxReconnectAttempts(pMaxReconnectAttempts); - dbgprintf(TEXT("CAdvancedSettings::get_MaxReconnectAttempts -> %08X, MaxReconnectAttempts = %ld"), hr, *pMaxReconnectAttempts); - return hr; - } - - /* IMsRdpClientAdvancedSettings3 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::put_ConnectionBarShowMinimizeButton(VARIANT_BOOL pfShowMinimize) - { - IMsRdpClientAdvancedSettings3 * pIMsRdpClientAdvancedSettings3 = getIMsRdpClientAdvancedSettings3(); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowMinimizeButton(%s)"), BooleanToString(pfShowMinimize)); - HRESULT hr = pIMsRdpClientAdvancedSettings3->put_ConnectionBarShowMinimizeButton(pfShowMinimize); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowMinimizeButton -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::get_ConnectionBarShowMinimizeButton(VARIANT_BOOL * pfShowMinimize) - { - IMsRdpClientAdvancedSettings3 * pIMsRdpClientAdvancedSettings3 = getIMsRdpClientAdvancedSettings3(); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowMinimizeButton(%p)"), pfShowMinimize); - HRESULT hr = pIMsRdpClientAdvancedSettings3->get_ConnectionBarShowMinimizeButton(pfShowMinimize); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowMinimizeButton -> %08X, fShowMinimize = %s"), hr, BooleanToString(*pfShowMinimize)); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::put_ConnectionBarShowRestoreButton(VARIANT_BOOL pfShowRestore) - { - IMsRdpClientAdvancedSettings3 * pIMsRdpClientAdvancedSettings3 = getIMsRdpClientAdvancedSettings3(); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowRestoreButton(%s)"), BooleanToString(pfShowRestore)); - HRESULT hr = pIMsRdpClientAdvancedSettings3->put_ConnectionBarShowRestoreButton(pfShowRestore); - dbgprintf(TEXT("CAdvancedSettings::put_ConnectionBarShowRestoreButton -> %08X"), hr); - return hr; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::get_ConnectionBarShowRestoreButton(VARIANT_BOOL * pfShowRestore) - { - IMsRdpClientAdvancedSettings3 * pIMsRdpClientAdvancedSettings3 = getIMsRdpClientAdvancedSettings3(); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowRestoreButton(%p)"), pfShowRestore); - HRESULT hr = pIMsRdpClientAdvancedSettings3->get_ConnectionBarShowRestoreButton(pfShowRestore); - dbgprintf(TEXT("CAdvancedSettings::get_ConnectionBarShowRestoreButton -> %08X, fShowRestore = %s"), hr, BooleanToString(*pfShowRestore)); - return hr; - } - - /* IMsRdpClientAdvancedSettings4 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings4::put_AuthenticationLevel(unsigned int puiAuthLevel) - { - IMsRdpClientAdvancedSettings4 * pIMsRdpClientAdvancedSettings4 = getIMsRdpClientAdvancedSettings4(); - dbgprintf(TEXT("CAdvancedSettings::put_AuthenticationLevel(%u)"), puiAuthLevel); - HRESULT hr = pIMsRdpClientAdvancedSettings4->put_AuthenticationLevel(puiAuthLevel); - dbgprintf(TEXT("CAdvancedSettings::put_AuthenticationLevel -> %08X"), hr); - return hr; - } - virtual STDMETHODIMP IMsRdpClientAdvancedSettings4::get_AuthenticationLevel(unsigned int * puiAuthLevel) - { - IMsRdpClientAdvancedSettings4 * pIMsRdpClientAdvancedSettings4 = getIMsRdpClientAdvancedSettings4(); - dbgprintf(TEXT("CAdvancedSettings::get_AuthenticationLevel(%p)"), puiAuthLevel); - HRESULT hr = pIMsRdpClientAdvancedSettings4->get_AuthenticationLevel(puiAuthLevel); - dbgprintf(TEXT("CAdvancedSettings::get_AuthenticationLevel -> %08X, uiAuthLevel = %ld"), hr, *puiAuthLevel); - return hr; - } - }; - - class CoClass: - /* Standard interfaces */ - public IUnknown, - public IDispatch, - public IConnectionPointContainer, - public IDataObject, - public IObjectSafety, - public IOleControl, - public IOleInPlaceActiveObject, - public IOleInPlaceObject, - public IOleObject, - public IOleWindow, - public IPersist, - public IPersistPropertyBag, - public IPersistStorage, - public IPersistStreamInit, - public IProvideClassInfo, - public IProvideClassInfo2, - public IQuickActivate, - public ISpecifyPropertyPages, - public IViewObject, - public IViewObject2, - - /* RDP client interfaces */ - public IMsRdpClient4, - public IMsRdpClientNonScriptable2 - { - private: - LONG m_refCount; - - IUnknown * m_IUnknown; - - IDispatch * m_IDispatch; - IConnectionPointContainer * m_IConnectionPointContainer; - IDataObject * m_IDataObject; - IObjectSafety * m_IObjectSafety; - IOleControl * m_IOleControl; - IOleInPlaceActiveObject * m_IOleInPlaceActiveObject; - IOleInPlaceObject * m_IOleInPlaceObject; - IOleObject * m_IOleObject; - IOleWindow * m_IOleWindow; - IPersist * m_IPersist; - IPersistPropertyBag * m_IPersistPropertyBag; - IPersistStorage * m_IPersistStorage; - IPersistStreamInit * m_IPersistStreamInit; - IProvideClassInfo * m_IProvideClassInfo; - IProvideClassInfo2 * m_IProvideClassInfo2; - IQuickActivate * m_IQuickActivate; - ISpecifyPropertyPages * m_ISpecifyPropertyPages; - IViewObject * m_IViewObject; - IViewObject2 * m_IViewObject2; - - IMsRdpClient * m_IMsRdpClient; - IMsRdpClient2 * m_IMsRdpClient2; - IMsRdpClient3 * m_IMsRdpClient3; - IMsRdpClient4 * m_IMsRdpClient4; - IMsTscAx * m_IMsTscAx; - IMsTscNonScriptable * m_IMsTscNonScriptable; - IMsRdpClientNonScriptable * m_IMsRdpClientNonScriptable; - IMsRdpClientNonScriptable2 * m_IMsRdpClientNonScriptable2; - - IDispatch * getIDispatch() - { - if(m_IDispatch) - return m_IDispatch; - - if(m_IMsRdpClient) - m_IDispatch = m_IMsRdpClient; - else if(m_IMsRdpClient2) - m_IDispatch = m_IMsRdpClient2; - else if(m_IMsRdpClient3) - m_IDispatch = m_IMsRdpClient3; - else if(m_IMsRdpClient4) - m_IDispatch = m_IMsRdpClient4; - else if(m_IMsTscAx) - m_IDispatch = m_IMsTscAx; - - if(m_IDispatch) - { - m_IDispatch->AddRef(); - return m_IDispatch; - } - - if(SUCCEEDED(m_IUnknown->QueryInterface(&m_IDispatch))) - return m_IDispatch; - - return NULL; - } - - IConnectionPointContainer * getIConnectionPointContainer() - { - if(m_IConnectionPointContainer) - return m_IConnectionPointContainer; - - m_IUnknown->QueryInterface(&m_IConnectionPointContainer); - return m_IConnectionPointContainer; - - } - - IDataObject * getIDataObject() - { - if(m_IDataObject) - return m_IDataObject; - - m_IUnknown->QueryInterface(&m_IDataObject); - return m_IDataObject; - } - - IObjectSafety * getIObjectSafety() - { - if(m_IObjectSafety) - return m_IObjectSafety; - - m_IUnknown->QueryInterface(&m_IObjectSafety); - return m_IObjectSafety; - } - - IOleControl * getIOleControl() - { - if(m_IOleControl) - return m_IOleControl; - - m_IUnknown->QueryInterface(&m_IOleControl); - return m_IOleControl; - } - - IOleInPlaceActiveObject * getIOleInPlaceActiveObject() - { - if(m_IOleInPlaceActiveObject) - return m_IOleInPlaceActiveObject; - - m_IUnknown->QueryInterface(&m_IOleInPlaceActiveObject); - return m_IOleInPlaceActiveObject; - } - - IOleInPlaceObject * getIOleInPlaceObject() - { - if(m_IOleInPlaceObject) - return m_IOleInPlaceObject; - - m_IUnknown->QueryInterface(&m_IOleInPlaceObject); - return m_IOleInPlaceObject; - } - - IOleObject * getIOleObject() - { - if(m_IOleObject) - return m_IOleObject; - - m_IUnknown->QueryInterface(&m_IOleObject); - return m_IOleObject; - } - - IOleWindow * getIOleWindow() - { - if(m_IOleWindow) - return m_IOleWindow; - - if(m_IOleInPlaceActiveObject) - m_IOleWindow = m_IOleInPlaceActiveObject; - - if(m_IOleWindow) - { - m_IOleWindow->AddRef(); - return m_IOleWindow; - } - - m_IUnknown->QueryInterface(&m_IOleWindow); - return m_IOleWindow; - } - - IPersist * getIPersist() - { - if(m_IPersist) - return m_IPersist; - - if(m_IPersistPropertyBag) - m_IPersist = m_IPersistPropertyBag; - else if(m_IPersistStorage) - m_IPersist = m_IPersistStorage; - else if(m_IPersistStreamInit) - m_IPersist = m_IPersistStreamInit; - - if(m_IPersist) - { - m_IPersist->AddRef(); - return m_IPersist; - } - - m_IUnknown->QueryInterface(&m_IPersist); - return m_IPersist; - } - - IPersistPropertyBag * getIPersistPropertyBag() - { - if(m_IPersistPropertyBag) - return m_IPersistPropertyBag; - - m_IUnknown->QueryInterface(&m_IPersistPropertyBag); - return m_IPersistPropertyBag; - } - - IPersistStorage * getIPersistStorage() - { - if(m_IPersistStorage) - return m_IPersistStorage; - - m_IUnknown->QueryInterface(&m_IPersistStorage); - return m_IPersistStorage; - } - - IPersistStreamInit * getIPersistStreamInit() - { - if(m_IPersistStreamInit) - return m_IPersistStreamInit; - - m_IUnknown->QueryInterface(&m_IPersistStreamInit); - return m_IPersistStreamInit; - } - - IProvideClassInfo * getIProvideClassInfo() - { - if(m_IProvideClassInfo) - return m_IProvideClassInfo; - - if(m_IProvideClassInfo2) - m_IProvideClassInfo = m_IProvideClassInfo2; - - if(m_IProvideClassInfo) - { - m_IProvideClassInfo->AddRef(); - return m_IProvideClassInfo; - } - - m_IUnknown->QueryInterface(&m_IProvideClassInfo); - return m_IProvideClassInfo; - } - - IProvideClassInfo2 * getIProvideClassInfo2() - { - if(m_IProvideClassInfo2) - return m_IProvideClassInfo2; - - m_IUnknown->QueryInterface(&m_IProvideClassInfo2); - return m_IProvideClassInfo2; - } - - IQuickActivate * getIQuickActivate() - { - if(m_IQuickActivate) - return m_IQuickActivate; - - m_IUnknown->QueryInterface(&m_IQuickActivate); - return m_IQuickActivate; - } - - ISpecifyPropertyPages * getISpecifyPropertyPages() - { - if(m_ISpecifyPropertyPages) - return m_ISpecifyPropertyPages; - - m_IUnknown->QueryInterface(&m_ISpecifyPropertyPages); - return m_ISpecifyPropertyPages; - } - - IViewObject * getIViewObject() - { - if(m_IViewObject) - return m_IViewObject; - - if(m_IViewObject2) - m_IViewObject = m_IViewObject2; - - if(m_IViewObject) - { - m_IViewObject->AddRef(); - return m_IViewObject; - } - - m_IUnknown->QueryInterface(&m_IViewObject); - return m_IViewObject; - } - - IViewObject2 * getIViewObject2() - { - if(m_IViewObject2) - return m_IViewObject2; - - m_IUnknown->QueryInterface(&m_IViewObject2); - return m_IViewObject2; - } - - IMsRdpClient * getIMsRdpClient() - { - if(m_IMsRdpClient) - return m_IMsRdpClient; - - if(m_IMsRdpClient2) - m_IMsRdpClient = m_IMsRdpClient2; - else if(m_IMsRdpClient3) - m_IMsRdpClient = m_IMsRdpClient3; - else if(m_IMsRdpClient4) - m_IMsRdpClient = m_IMsRdpClient4; - - if(m_IMsRdpClient) - { - m_IMsRdpClient->AddRef(); - return m_IMsRdpClient; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClient); - return m_IMsRdpClient; - } - - IMsRdpClient2 * getIMsRdpClient2() - { - if(m_IMsRdpClient2) - return m_IMsRdpClient2; - - if(m_IMsRdpClient3) - m_IMsRdpClient2 = m_IMsRdpClient3; - else if(m_IMsRdpClient4) - m_IMsRdpClient2 = m_IMsRdpClient4; - - if(m_IMsRdpClient2) - { - m_IMsRdpClient2->AddRef(); - return m_IMsRdpClient2; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClient2); - return m_IMsRdpClient2; - } - - IMsRdpClient3 * getIMsRdpClient3() - { - if(m_IMsRdpClient3) - return m_IMsRdpClient3; - - if(m_IMsRdpClient4) - m_IMsRdpClient3 = m_IMsRdpClient4; - - if(m_IMsRdpClient3) - { - m_IMsRdpClient3->AddRef(); - return m_IMsRdpClient3; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClient3); - return m_IMsRdpClient3; - } - - IMsRdpClient4 * getIMsRdpClient4() - { - if(m_IMsRdpClient4) - return m_IMsRdpClient4; - - m_IUnknown->QueryInterface(&m_IMsRdpClient4); - return m_IMsRdpClient4; - } - - IMsTscAx * getIMsTscAx() - { - if(m_IMsTscAx) - return m_IMsTscAx; - - if(m_IMsRdpClient) - m_IMsTscAx = m_IMsRdpClient; - else if(m_IMsRdpClient2) - m_IMsTscAx = m_IMsRdpClient2; - else if(m_IMsRdpClient3) - m_IMsTscAx = m_IMsRdpClient3; - else if(m_IMsRdpClient4) - m_IMsTscAx = m_IMsRdpClient4; - - if(m_IMsTscAx) - { - m_IMsTscAx->AddRef(); - return m_IMsTscAx; - } - - m_IUnknown->QueryInterface(&m_IMsTscAx); - return m_IMsTscAx; - } - - IMsTscNonScriptable * getIMsTscNonScriptable() - { - if(m_IMsTscNonScriptable) - return m_IMsTscNonScriptable; - - if(m_IMsRdpClientNonScriptable) - m_IMsTscNonScriptable = m_IMsRdpClientNonScriptable; - else if(m_IMsRdpClientNonScriptable2) - m_IMsTscNonScriptable = m_IMsRdpClientNonScriptable2; - - if(m_IMsTscNonScriptable) - { - m_IMsTscNonScriptable->AddRef(); - return m_IMsTscNonScriptable; - } - - m_IUnknown->QueryInterface(&m_IMsTscNonScriptable); - return m_IMsTscNonScriptable; - } - - IMsRdpClientNonScriptable * getIMsRdpClientNonScriptable() - { - if(m_IMsRdpClientNonScriptable) - return m_IMsRdpClientNonScriptable; - - if(m_IMsRdpClientNonScriptable2) - m_IMsRdpClientNonScriptable = m_IMsRdpClientNonScriptable2; - - if(m_IMsRdpClientNonScriptable) - { - m_IMsRdpClientNonScriptable->AddRef(); - return m_IMsRdpClientNonScriptable; - } - - m_IUnknown->QueryInterface(&m_IMsRdpClientNonScriptable); - return m_IMsRdpClientNonScriptable; - } - - IMsRdpClientNonScriptable2 * getIMsRdpClientNonScriptable2() - { - if(m_IMsRdpClientNonScriptable2) - return m_IMsRdpClientNonScriptable2; - - m_IUnknown->QueryInterface(&m_IMsRdpClientNonScriptable2); - return m_IMsRdpClientNonScriptable2; - } - - private: - IUnknown * m_outer; - - HRESULT queryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr; - IUnknown * pvObject = NULL; - - dbgprintf(TEXT("IUnknown::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - -#define QIBEGIN() \ - if(riid == IID_IUnknown) \ - { \ - assert(0); \ - } - -#define QI(I) \ - else if(riid == IID_ ## I) \ - { \ - if(m_ ## I) \ - { \ - m_ ## I->AddRef(); \ - hr = S_OK; \ - } \ - else \ - { \ - hr = m_IUnknown->QueryInterface(&m_ ## I); \ - } \ - \ - if(SUCCEEDED(hr)) \ - pvObject = static_cast(this); \ - } - -#define QIEND() \ - else \ - { \ - hr = E_NOINTERFACE; \ - pvObject = NULL; \ - } - - QIBEGIN() - - /* Standard interfaces */ - QI(IDispatch) - QI(IConnectionPointContainer) - QI(IDataObject) - QI(IObjectSafety) - QI(IOleControl) - QI(IOleInPlaceActiveObject) - QI(IOleInPlaceObject) - QI(IOleObject) - QI(IOleWindow) - QI(IPersist) - QI(IPersistPropertyBag) - QI(IPersistStorage) - QI(IPersistStreamInit) - QI(IProvideClassInfo) - QI(IProvideClassInfo2) - QI(IQuickActivate) - QI(ISpecifyPropertyPages) - QI(IViewObject) - QI(IViewObject2) - - /* Terminal services client */ - QI(IMsRdpClient) - QI(IMsRdpClient2) - QI(IMsRdpClient3) - QI(IMsRdpClient4) - QI(IMsTscAx) - QI(IMsTscNonScriptable) - QI(IMsRdpClientNonScriptable) - QI(IMsRdpClientNonScriptable2) - QIEND() - -#undef QIBEGIN -#undef QIEND -#undef QI - - if(SUCCEEDED(hr)) - { - assert(pvObject); - pvObject->AddRef(); - } - else - { - assert(pvObject == NULL); - } - - *ppvObject = pvObject; - - dbgprintf(TEXT("IUnknown::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - ULONG addRef() - { - return InterlockedIncrement(&m_refCount); - } - - ULONG release() - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - friend class CoClassInner; - - class CoClassInner: public IUnknown - { - public: - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - if(riid == IID_IUnknown) - { - AddRef(); - *ppvObject = this; - return S_OK; - } - - return InnerToOuter(this)->queryInterface(riid, ppvObject); - } - - virtual ULONG STDMETHODCALLTYPE AddRef() - { - return InnerToOuter(this)->addRef(); - } - - virtual ULONG STDMETHODCALLTYPE Release() - { - return InnerToOuter(this)->release(); - } - } - m_inner; - - static CoClass * InnerToOuter(CoClassInner * inner) - { - return CONTAINING_RECORD(inner, CoClass, m_inner); - } - - private: - CoClass(IUnknown * pUnknw, IUnknown * pUnkOuter): - m_refCount(1), - m_outer(pUnkOuter), - m_IUnknown(pUnknw), - m_IDispatch(NULL), - m_IConnectionPointContainer(NULL), - m_IDataObject(NULL), - m_IObjectSafety(NULL), - m_IOleControl(NULL), - m_IOleInPlaceActiveObject(NULL), - m_IOleInPlaceObject(NULL), - m_IOleObject(NULL), - m_IOleWindow(NULL), - m_IPersist(NULL), - m_IPersistPropertyBag(NULL), - m_IPersistStorage(NULL), - m_IPersistStreamInit(NULL), - m_IProvideClassInfo(NULL), - m_IProvideClassInfo2(NULL), - m_IQuickActivate(NULL), - m_ISpecifyPropertyPages(NULL), - m_IViewObject(NULL), - m_IViewObject2(NULL), - m_IMsRdpClient(NULL), - m_IMsRdpClient2(NULL), - m_IMsRdpClient3(NULL), - m_IMsRdpClient4(NULL), - m_IMsTscAx(NULL), - m_IMsTscNonScriptable(NULL), - m_IMsRdpClientNonScriptable(NULL), - m_IMsRdpClientNonScriptable2(NULL) - { - if(m_outer == NULL) - m_outer = &m_inner; - } - - public: - static HRESULT CreateInstance(IUnknown * pUnknw, IUnknown * pUnkOuter, REFIID riid, void ** ppvObject) - { - HRESULT hr = S_OK; - - if(pUnkOuter && riid != IID_IUnknown) - hr = CLASS_E_NOAGGREGATION; - else - { - CoClass * p = new CoClass(pUnknw, pUnkOuter); - - if(p == NULL) - hr = E_OUTOFMEMORY; - else - { - hr = p->m_inner.QueryInterface(riid, ppvObject); - - if(FAILED(hr)) - delete p; - else - p->m_inner.Release(); - } - } - - if(FAILED(hr)) - pUnknw->Release(); - - return hr; - } - - private: - ~CoClass() - { - if(m_IUnknown) - m_IUnknown->Release(); - - if(m_IDispatch) - m_IDispatch->Release(); - - if(m_IConnectionPointContainer) - m_IConnectionPointContainer->Release(); - - if(m_IDataObject) - m_IDataObject->Release(); - - if(m_IObjectSafety) - m_IObjectSafety->Release(); - - if(m_IOleControl) - m_IOleControl->Release(); - - if(m_IOleInPlaceActiveObject) - m_IOleInPlaceActiveObject->Release(); - - if(m_IOleInPlaceObject) - m_IOleInPlaceObject->Release(); - - if(m_IOleObject) - m_IOleObject->Release(); - - if(m_IOleWindow) - m_IOleWindow->Release(); - - if(m_IPersist) - m_IPersist->Release(); - - if(m_IPersistPropertyBag) - m_IPersistPropertyBag->Release(); - - if(m_IPersistStorage) - m_IPersistStorage->Release(); - - if(m_IPersistStreamInit) - m_IPersistStreamInit->Release(); - - if(m_IProvideClassInfo) - m_IProvideClassInfo->Release(); - - if(m_IProvideClassInfo2) - m_IProvideClassInfo2->Release(); - - if(m_IQuickActivate) - m_IQuickActivate->Release(); - - if(m_ISpecifyPropertyPages) - m_ISpecifyPropertyPages->Release(); - - if(m_IViewObject) - m_IViewObject->Release(); - - if(m_IViewObject2) - m_IViewObject2->Release(); - - if(m_IMsRdpClient) - m_IMsRdpClient->Release(); - - if(m_IMsRdpClient2) - m_IMsRdpClient2->Release(); - - if(m_IMsRdpClient3) - m_IMsRdpClient3->Release(); - - if(m_IMsRdpClient4) - m_IMsRdpClient4->Release(); - - if(m_IMsTscAx) - m_IMsTscAx->Release(); - - if(m_IMsTscNonScriptable) - m_IMsTscNonScriptable->Release(); - - if(m_IMsRdpClientNonScriptable) - m_IMsRdpClientNonScriptable->Release(); - - if(m_IMsRdpClientNonScriptable2) - m_IMsRdpClientNonScriptable2->Release(); - } - - /* IUnknown */ - public: - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - return m_outer->QueryInterface(riid, ppvObject); - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return m_outer->AddRef(); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - return m_outer->Release(); - } - - /* IDispatch */ - private: - static void FreeExcepInfo(const EXCEPINFO& excepInfo) - { - if(excepInfo.bstrSource) - SysFreeString(excepInfo.bstrSource); - - if(excepInfo.bstrDescription) - SysFreeString(excepInfo.bstrDescription); - - if(excepInfo.bstrHelpFile) - SysFreeString(excepInfo.bstrHelpFile); - } - - static std::basic_string ExcepInfoToString(const EXCEPINFO& excepInfo) - { - std::basic_ostringstream o; - - o << "{"; - o << " code: " << excepInfo.wCode << " from: " << std::basic_string(excepInfo.bstrSource, excepInfo.bstrSource + SysStringLen(excepInfo.bstrSource)); - - BSTR bstrDescription = NULL; - - if(excepInfo.bstrDescription) - bstrDescription = excepInfo.bstrDescription; - else if(excepInfo.pfnDeferredFillIn) - { - EXCEPINFO excepInfoCopy = excepInfo; - - if(SUCCEEDED(excepInfoCopy.pfnDeferredFillIn(&excepInfoCopy)) && excepInfoCopy.bstrDescription) - { - bstrDescription = excepInfoCopy.bstrDescription; - excepInfoCopy.bstrDescription = NULL; - } - - if(excepInfoCopy.bstrSource == excepInfo.bstrSource) - excepInfoCopy.bstrSource = NULL; - - if(excepInfoCopy.bstrHelpFile == excepInfo.bstrDescription) - excepInfoCopy.bstrDescription = NULL; - - FreeExcepInfo(excepInfoCopy); - } - - if(bstrDescription) - { - o << " msg: " << std::basic_string(bstrDescription, bstrDescription + SysStringLen(bstrDescription)); - - if(excepInfo.bstrDescription == NULL) - SysFreeString(bstrDescription); - } - - o << " }"; - - return o.str().c_str(); - } - - public: - virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount(UINT * pctinfo) - { - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("IDispatch::GetTypeInfoCount(%p)"), pctinfo); - HRESULT hr = pIDispatch->GetTypeInfoCount(pctinfo); - dbgprintf(TEXT("IDispatch::GetTypeInfoCount -> %08X, ctinfo = %lu"), hr, *pctinfo); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo ** ppTInfo) - { - IDispatch * pIDispatch = getIDispatch(); - dbgprintf(TEXT("IDispatch::GetTypeInfo(%lu, %08X, %p)"), iTInfo, lcid, ppTInfo); - HRESULT hr = pIDispatch->GetTypeInfo(iTInfo, lcid, ppTInfo); - dbgprintf(TEXT("IDispatch::GetTypeInfo -> %08X, pTInfo = %p"), hr, *ppTInfo); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId) - { - IDispatch * pIDispatch = getIDispatch(); - std::wstring strtemp; - - std::wostringstream strtempo; - - strtemp.resize(0); - strtemp += L"[ "; - - for(UINT i = 0; i < cNames; ++ i) - { - if(i) - strtemp += L", "; - - strtemp += rgszNames[i]; - } - - strtemp += L" ]"; - - dbgprintf(TEXT("IDispatch::GetIDsOfNames(%ls, %ls, %lu, %08X, %p)"), UUIDToString(riid).c_str(), strtemp.c_str(), cNames, lcid, rgDispId); - HRESULT hr = pIDispatch->GetIDsOfNames(riid, rgszNames, cNames, lcid, rgDispId); - - strtemp.resize(0); - strtempo.str(strtemp); - - strtempo << L"[ "; - - for(UINT i = 0; i < cNames; ++ i) - { - if(i) - strtempo << L", "; - - strtempo << rgDispId[i]; - } - - strtempo << L" ]"; - - dbgprintf(TEXT("IDispatch::GetIDsOfNames -> %08X, rgDispId = %ls"), hr, strtempo.str().c_str()); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS * pDispParams, VARIANT * pVarResult, EXCEPINFO * pExcepInfo, UINT * puArgErr) - { - IDispatch * pIDispatch = getIDispatch(); - - std::basic_ostringstream strtempo; - - strtempo << L"{"; - - for(unsigned int i = pDispParams->cArgs, j = pDispParams->cNamedArgs; j < pDispParams->cArgs; -- i, ++ j) - { - strtempo << L" "; - strtempo << VariantToString(pDispParams->rgvarg[i - 1]); - strtempo << L","; - } - - for(unsigned int i = pDispParams->cArgs - pDispParams->cNamedArgs; i > 0; -- i) - { - strtempo << L" "; - strtempo << L"["; strtempo << pDispParams->rgdispidNamedArgs[i - 1]; strtempo << L"] => "; - strtempo << VariantToString(pDispParams->rgvarg[i - 1]); - strtempo << L","; - } - - strtempo << L" }"; - - dbgprintf(TEXT("IDispatch::Invoke(%ld, %ls, %08X, %04X, %s, %p, %p, %p)"), dispIdMember, UUIDToString(riid).c_str(), lcid, wFlags, strtempo.str().c_str(), pVarResult, pExcepInfo, puArgErr); - - VARIANT VarResult = { }; - EXCEPINFO ExcepInfo = { }; - - if(pVarResult == NULL) - pVarResult = &VarResult; - - if(pExcepInfo == NULL) - pExcepInfo = &ExcepInfo; - - HRESULT hr = pIDispatch->Invoke(dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr); - - dbgprintf(TEXT("IDispatch::Invoke -> %08X, returns %s, throws %s"), hr, VariantToString(*pVarResult).c_str(), ExcepInfoToString(*pExcepInfo).c_str()); - - FreeExcepInfo(ExcepInfo); - - return hr; - } - - /* IConnectionPointContainer */ - public: - virtual HRESULT STDMETHODCALLTYPE EnumConnectionPoints(IEnumConnectionPoints ** ppEnum) - { - IConnectionPointContainer * pIConnectionPointContainer = getIConnectionPointContainer(); - dbgprintf(TEXT("IConnectionPointContainer::EnumConnectionPoints(%p)"), ppEnum); - HRESULT hr = pIConnectionPointContainer->EnumConnectionPoints(ppEnum); - dbgprintf(TEXT("IConnectionPointContainer::EnumConnectionPoints -> %08X, pEnum = %p"), hr, *ppEnum); - - if(SUCCEEDED(hr)) - *ppEnum = HookIEnumConnectionPoints(*ppEnum); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE FindConnectionPoint(REFIID riid, IConnectionPoint ** ppCP) - { - IConnectionPointContainer * pIConnectionPointContainer = getIConnectionPointContainer(); - dbgprintf(TEXT("IConnectionPointContainer::FindConnectionPoint(%ls, %p)"), UUIDToString(riid).c_str(), ppCP); - HRESULT hr = pIConnectionPointContainer->FindConnectionPoint(riid, ppCP); - dbgprintf(TEXT("IConnectionPointContainer::FindConnectionPoint -> %08X, pCP = %p"), hr, *ppCP); - - if(SUCCEEDED(hr)) - *ppCP = HookIConnectionPoint(*ppCP); - - return hr; - } - - /* IDataObject */ - private: - static std::basic_string TargetDeviceToString(const DVTARGETDEVICE& targetdev) - { - if(&targetdev == NULL) - return TEXT(""); - - std::basic_ostringstream o; - - o << "{"; - o << LPCWSTR(targetdev.tdData[targetdev.tdDriverNameOffset]); - - if(targetdev.tdDeviceNameOffset) - { - o << ","; - o << LPCWSTR(targetdev.tdData[targetdev.tdDeviceNameOffset]); - } - - if(targetdev.tdPortNameOffset) - { - o << ","; - o << LPCWSTR(targetdev.tdData[targetdev.tdPortNameOffset]); - } - - o << " }"; - - return o.str(); - } - - static LPCTSTR AspectToString(DWORD aspect) - { - switch(aspect) - { - case DVASPECT_CONTENT: return TEXT("content"); - case DVASPECT_THUMBNAIL: return TEXT("thumbnail"); - case DVASPECT_ICON: return TEXT("icon"); - case DVASPECT_DOCPRINT: return TEXT("printable"); - default: return TEXT(""); - } - } - - static LPCTSTR TymedToString(DWORD tymed) - { - switch(tymed) - { - case TYMED_HGLOBAL: return TEXT("memory"); - case TYMED_FILE: return TEXT("file"); - case TYMED_ISTREAM: return TEXT("IStream"); - case TYMED_ISTORAGE: return TEXT("IStorage"); - case TYMED_GDI: return TEXT("bitmap"); - case TYMED_MFPICT: return TEXT("metafile"); - case TYMED_ENHMF: return TEXT("enhanced metafile"); - case TYMED_NULL: return TEXT(""); - default: return TEXT(""); - } - } - - static std::basic_string FormatEtcToString(const FORMATETC& formatetc) - { - std::basic_ostringstream o; - - o << "{"; - - // cfFormat - o << " format: "; - - switch(formatetc.cfFormat) - { - case CF_TEXT: o << "ANSI text"; break; - case CF_BITMAP: o << "bitmap"; break; - case CF_METAFILEPICT: o << "metafile"; break; - case CF_SYLK: o << "symlink"; break; - case CF_DIF: o << "DIF"; break; - case CF_TIFF: o << "TIFF"; break; - case CF_OEMTEXT: o << "OEM text"; break; - case CF_DIB: o << "DIBv4"; break; - case CF_PALETTE: o << "palette"; break; - case CF_PENDATA: o << "pen data"; break; - case CF_RIFF: o << "RIFF"; break; - case CF_WAVE: o << "WAV"; break; - case CF_UNICODETEXT: o << "Unicode text"; break; - case CF_ENHMETAFILE: o << "enhanced metafile"; break; - case CF_HDROP: o << "list of files"; break; - case CF_LOCALE: o << "LCID"; break; - case CF_DIBV5: o << "DIBv5"; break; - case CF_OWNERDISPLAY: o << ""; break; - case CF_DSPTEXT: o << ""; break; - case CF_DSPBITMAP: o << ""; break; - case CF_DSPMETAFILEPICT: o << ""; break; - case CF_DSPENHMETAFILE: o << ""; break; - - default: - o << "<"; - - if(formatetc.cfFormat >= CF_PRIVATEFIRST && formatetc.cfFormat <= CF_PRIVATELAST) - o << "private"; - else if(formatetc.cfFormat >= CF_GDIOBJFIRST && formatetc.cfFormat <= CF_GDIOBJLAST) - o << "GDI object"; - else - o << "unknown"; - - o << " " << std::hex << formatetc.cfFormat << std::dec << ">"; - } - - // ptd - if(formatetc.ptd) - o << " device: " << TargetDeviceToString(*formatetc.ptd); - - // dwAspect - o << " aspect: " << AspectToString(formatetc.dwAspect); - - // lindex - if(formatetc.dwAspect == DVASPECT_CONTENT || formatetc.dwAspect == DVASPECT_DOCPRINT) - o << " page split: " << formatetc.lindex; - - // tymed - o << " medium: " << TymedToString(formatetc.tymed); - - return o.str(); - } - - static std::basic_string MediumToString(const STGMEDIUM& medium) - { - std::basic_ostringstream o; - - o << "{ "; - o << TymedToString(medium.tymed); - o << " }"; - - return o.str(); - } - - public: - virtual HRESULT STDMETHODCALLTYPE GetData(FORMATETC * pformatetcIn, STGMEDIUM * pmedium) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::GetData(%s, %p)"), FormatEtcToString(*pformatetcIn).c_str(), pmedium); - HRESULT hr = pIDataObject->GetData(pformatetcIn, pmedium); - dbgprintf(TEXT("IDataObject::GetData -> %08X, %s"), hr, MediumToString(*pmedium).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetDataHere(FORMATETC * pformatetc, STGMEDIUM * pmedium) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::GetDataHere(%s, %p)"), FormatEtcToString(*pformatetc).c_str(), pmedium); - HRESULT hr = pIDataObject->GetDataHere(pformatetc, pmedium); - dbgprintf(TEXT("IDataObject::GetDataHere -> %08X, medium = %s"), hr, MediumToString(*pmedium).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE QueryGetData(FORMATETC * pformatetc) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::QueryGetData(%s)"), FormatEtcToString(*pformatetc).c_str()); - HRESULT hr = pIDataObject->QueryGetData(pformatetc); - dbgprintf(TEXT("IDataObject::QueryGetData -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetCanonicalFormatEtc(FORMATETC * pformatectIn, FORMATETC * pformatetcOut) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::GetCanonicalFormatEtc(%s, %p)"), FormatEtcToString(*pformatectIn).c_str(), pformatetcOut); - HRESULT hr = pIDataObject->GetCanonicalFormatEtc(pformatectIn, pformatetcOut); - dbgprintf(TEXT("IDataObject::GetCanonicalFormatEtc -> %08X, formatetcOut = %s"), hr, FormatEtcToString(*pformatetcOut).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetData(FORMATETC * pformatetc, STGMEDIUM * pmedium, BOOL fRelease) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::SetData(%s, %p, %s)"), FormatEtcToString(*pformatetc).c_str(), MediumToString(*pmedium).c_str(), fRelease ? TEXT("true") : TEXT("false")); - HRESULT hr = pIDataObject->SetData(pformatetc, pmedium, fRelease); - dbgprintf(TEXT("IDataObject::SetData -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC ** ppenumFormatEtc) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::EnumFormatEtc(%lu, %p)"), dwDirection, ppenumFormatEtc); - HRESULT hr = pIDataObject->EnumFormatEtc(dwDirection, ppenumFormatEtc); - dbgprintf(TEXT("IDataObject::EnumFormatEtc -> %08X, penumFormatEtc = %p"), hr, *ppenumFormatEtc); - // TODO: hook - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE DAdvise(FORMATETC * pformatetc, DWORD advf, IAdviseSink * pAdvSink, DWORD * pdwConnection) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::DAdvise(%s, %lu, %p, %p)"), FormatEtcToString(*pformatetc).c_str(), advf, pAdvSink, pdwConnection); - HRESULT hr = pIDataObject->DAdvise(pformatetc, advf, pAdvSink, pdwConnection); - dbgprintf(TEXT("IDataObject::DAdvise -> %08X, dwConnection = %lu"), hr, *pdwConnection); - // TODO: hook - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE DUnadvise(DWORD dwConnection) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::DUnadvise(%lu)"), dwConnection); - HRESULT hr = pIDataObject->DUnadvise(dwConnection); - dbgprintf(TEXT("IDataObject::DUnadvise -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnumDAdvise(IEnumSTATDATA ** ppenumAdvise) - { - IDataObject * pIDataObject = getIDataObject(); - dbgprintf(TEXT("IDataObject::EnumDAdvise(%p)"), ppenumAdvise); - HRESULT hr = pIDataObject->EnumDAdvise(ppenumAdvise); - dbgprintf(TEXT("IDataObject::EnumDAdvise -> %08X, penumAdvise = %p"), hr, *ppenumAdvise); - // TODO: hook - return hr; - } - - /* IObjectSafety */ - public: - virtual HRESULT STDMETHODCALLTYPE IObjectSafety::GetInterfaceSafetyOptions(REFIID riid, DWORD * pdwSupportedOptions, DWORD * pdwEnabledOptions) - { - IObjectSafety * pIObjectSafety = getIObjectSafety(); - dbgprintf(TEXT("IObjectSafety::GetInterfaceSafetyOptions(%ls, %p, %p)"), UUIDToString(riid).c_str(), pdwSupportedOptions, pdwEnabledOptions); - HRESULT hr = pIObjectSafety->GetInterfaceSafetyOptions(riid, pdwSupportedOptions, pdwEnabledOptions); - dbgprintf(TEXT("IObjectSafety::GetInterfaceSafetyOptions -> %08X, dwSupportedOptions = %08X, dwEnabledOptions = %08X"), hr, *pdwSupportedOptions, *pdwEnabledOptions); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IObjectSafety::SetInterfaceSafetyOptions(REFIID riid, DWORD dwOptionSetMask, DWORD dwEnabledOptions) - { - IObjectSafety * pIObjectSafety = getIObjectSafety(); - dbgprintf(TEXT("IObjectSafety::SetInterfaceSafetyOptions(%ls, %08X, %08X)"), UUIDToString(riid).c_str(), dwOptionSetMask, dwEnabledOptions); - HRESULT hr = pIObjectSafety->SetInterfaceSafetyOptions(riid, dwOptionSetMask, dwEnabledOptions); - dbgprintf(TEXT("IObjectSafety::SetInterfaceSafetyOptions -> %08X"), hr); - return hr; - } - - /* IOleControl */ - private: - std::basic_string ControlInfoToString(const CONTROLINFO& ci) - { - std::basic_ostringstream o; - - int firstdone = 0; - - o << "{ "; - - if(ci.cAccel && ci.hAccel) - { - LPACCEL pAccel = static_cast(GlobalLock(ci.hAccel)); - - if(pAccel) - { - for(USHORT i = 0; i < ci.cAccel; ++ i) - { - if(i) - o << ", "; - - if(pAccel[i].fVirt & FSHIFT) - o << "SHIFT + "; - - if(pAccel[i].fVirt & FCONTROL) - o << "CONTROL + "; - - if(pAccel[i].fVirt & FALT) - o << "ALT + "; - - if(pAccel[i].fVirt & FVIRTKEY) - o << ""; - else - o << wchar_t(pAccel[i].key); - - o << " " << std::hex << pAccel[i].cmd << std::dec; - } - - firstdone = ci.cAccel; - - GlobalUnlock(pAccel); - } - } - - if(ci.dwFlags & CTRLINFO_EATS_RETURN) - { - if(!firstdone) - { - o << ", "; - ++ firstdone; - } - - o << "ENTER"; - } - - if(ci.dwFlags & CTRLINFO_EATS_ESCAPE) - { - if(!firstdone) - { - o << ", "; - ++ firstdone; - } - - o << "ESC"; - } - - if(firstdone) - o << " "; - - o << "}"; - - return o.str(); - } - - std::basic_string MnemonicToString(const MSG& msg) - { - std::basic_ostringstream o; - - o << "["; - - switch(msg.message) - { - case WM_SYSKEYDOWN: - o << "ALT + "; - - case WM_KEYDOWN: - TCHAR sz[1024]; - GetKeyNameText(LONG(msg.lParam), sz, ARRAYSIZE(sz)); - o << sz; - - default: - o << ""; - } - - o << "]"; - - return o.str(); - } - - public: - virtual HRESULT STDMETHODCALLTYPE GetControlInfo(CONTROLINFO * pCI) - { - IOleControl * pIOleControl = getIOleControl(); - dbgprintf(TEXT("IOleControl::GetControlInfo(%p)"), pCI); - HRESULT hr = pIOleControl->GetControlInfo(pCI); - dbgprintf(TEXT("IOleControl::GetControlInfo -> %08X, %s"), hr, ControlInfoToString(*pCI).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE OnMnemonic(MSG * pMsg) - { - IOleControl * pIOleControl = getIOleControl(); - dbgprintf(TEXT("IOleControl::OnMnemonic(%s)"), MnemonicToString(*pMsg).c_str()); - HRESULT hr = pIOleControl->OnMnemonic(pMsg); - dbgprintf(TEXT("IOleControl::OnMnemonic -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE OnAmbientPropertyChange(DISPID dispID) - { - IOleControl * pIOleControl = getIOleControl(); - dbgprintf(TEXT("IOleControl::OnAmbientPropertyChange(%08X)"), dispID); - HRESULT hr = pIOleControl->OnAmbientPropertyChange(dispID); - dbgprintf(TEXT("IOleControl::OnAmbientPropertyChange -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE FreezeEvents(BOOL bFreeze) - { - IOleControl * pIOleControl = getIOleControl(); - dbgprintf(TEXT("IOleControl::FreezeEvents(%s)"), BooleanToString(bFreeze)); - HRESULT hr = pIOleControl->FreezeEvents(bFreeze); - dbgprintf(TEXT("IOleControl::FreezeEvents -> %08X"), hr); - return hr; - } - - /* IOleInPlaceActiveObject */ - public: - virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(LPMSG lpmsg) - { - IOleInPlaceActiveObject * pIOleInPlaceActiveObject = getIOleInPlaceActiveObject(); - dbgprintf(TEXT("IOleInPlaceActiveObject::TranslateAccelerator(%s)"), MnemonicToString(*lpmsg).c_str()); - HRESULT hr = pIOleInPlaceActiveObject->TranslateAccelerator(lpmsg); - dbgprintf(TEXT("IOleInPlaceActiveObject::TranslateAccelerator -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE OnFrameWindowActivate(BOOL fActivate) - { - IOleInPlaceActiveObject * pIOleInPlaceActiveObject = getIOleInPlaceActiveObject(); - dbgprintf(TEXT("IOleInPlaceActiveObject::OnFrameWindowActivate(%s)"), BooleanToString(fActivate)); - HRESULT hr = pIOleInPlaceActiveObject->OnFrameWindowActivate(fActivate); - dbgprintf(TEXT("IOleInPlaceActiveObject::OnFrameWindowActivate -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE OnDocWindowActivate(BOOL fActivate) - { - IOleInPlaceActiveObject * pIOleInPlaceActiveObject = getIOleInPlaceActiveObject(); - dbgprintf(TEXT("IOleInPlaceActiveObject::OnDocWindowActivate(%s)"), BooleanToString(fActivate)); - HRESULT hr = pIOleInPlaceActiveObject->OnDocWindowActivate(fActivate); - dbgprintf(TEXT("IOleInPlaceActiveObject::OnDocWindowActivate -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE ResizeBorder(LPCRECT prcBorder, IOleInPlaceUIWindow * pUIWindow, BOOL fFrameWindow) - { - // TODO: hook pUIWindow - IOleInPlaceActiveObject * pIOleInPlaceActiveObject = getIOleInPlaceActiveObject(); - dbgprintf(TEXT("IOleInPlaceActiveObject::ResizeBorder(%s)"), RectToString(*prcBorder).c_str(), pUIWindow, BooleanToString(fFrameWindow)); - HRESULT hr = pIOleInPlaceActiveObject->ResizeBorder(prcBorder, pUIWindow, fFrameWindow); - dbgprintf(TEXT("IOleInPlaceActiveObject::ResizeBorder -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnableModeless(BOOL fEnable) - { - IOleInPlaceActiveObject * pIOleInPlaceActiveObject = getIOleInPlaceActiveObject(); - dbgprintf(TEXT("IOleInPlaceActiveObject::EnableModeless(%s)"), BooleanToString(fEnable)); - HRESULT hr = pIOleInPlaceActiveObject->EnableModeless(fEnable); - dbgprintf(TEXT("IOleInPlaceActiveObject::EnableModeless -> %08X"), hr); - return hr; - } - - /* IOleInPlaceObject */ - public: - virtual HRESULT STDMETHODCALLTYPE InPlaceDeactivate(void) - { - IOleInPlaceObject * pIOleInPlaceObject = getIOleInPlaceObject(); - dbgprintf(TEXT("IOleInPlaceObject::InPlaceDeactivate()")); - HRESULT hr = pIOleInPlaceObject->InPlaceDeactivate(); - dbgprintf(TEXT("IOleInPlaceObject::InPlaceDeactivate -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE UIDeactivate(void) - { - IOleInPlaceObject * pIOleInPlaceObject = getIOleInPlaceObject(); - dbgprintf(TEXT("IOleInPlaceObject::UIDeactivate()")); - HRESULT hr = pIOleInPlaceObject->UIDeactivate(); - dbgprintf(TEXT("IOleInPlaceObject::UIDeactivate -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetObjectRects(LPCRECT lprcPosRect, LPCRECT lprcClipRect) - { - IOleInPlaceObject * pIOleInPlaceObject = getIOleInPlaceObject(); - dbgprintf(TEXT("IOleInPlaceObject::SetObjectRects(%s, %s)"), RectToString(*lprcPosRect).c_str(), RectToString(*lprcClipRect).c_str()); - HRESULT hr = pIOleInPlaceObject->SetObjectRects(lprcPosRect, lprcClipRect); - dbgprintf(TEXT("IOleInPlaceObject::SetObjectRects -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE ReactivateAndUndo(void) - { - IOleInPlaceObject * pIOleInPlaceObject = getIOleInPlaceObject(); - dbgprintf(TEXT("IOleInPlaceObject::ReactivateAndUndo()")); - HRESULT hr = pIOleInPlaceObject->ReactivateAndUndo(); - dbgprintf(TEXT("IOleInPlaceObject::ReactivateAndUndo -> %08X"), hr); - return hr; - } - - /* IOleWindow */ - public: - virtual HRESULT STDMETHODCALLTYPE GetWindow(HWND * phwnd) - { - IOleWindow * pIOleWindow = getIOleWindow(); - dbgprintf(TEXT("IOleWindow::GetWindow(%p)"), phwnd); - HRESULT hr = pIOleWindow->GetWindow(phwnd); - dbgprintf(TEXT("IOleWindow::GetWindow -> %08X, hwnd = %X"), hr, *phwnd); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL fEnterMode) - { - IOleWindow * pIOleWindow = getIOleWindow(); - dbgprintf(TEXT("IOleWindow::ContextSensitiveHelp(%s)"), BooleanToString(fEnterMode)); - HRESULT hr = pIOleWindow->ContextSensitiveHelp(fEnterMode); - dbgprintf(TEXT("IOleWindow::ContextSensitiveHelp -> %08X"), hr); - return hr; - } - - /* IOleObject */ - public: - virtual HRESULT STDMETHODCALLTYPE SetClientSite(IOleClientSite * pClientSite) - { - // TODO: hook pClientSite - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::SetClientSite(%p)"), pClientSite); - HRESULT hr = pIOleObject->SetClientSite(pClientSite); - dbgprintf(TEXT("IOleObject::SetClientSite -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetClientSite(IOleClientSite ** ppClientSite) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetClientSite(%s)"), ppClientSite); - HRESULT hr = pIOleObject->GetClientSite(ppClientSite); - dbgprintf(TEXT("IOleObject::GetClientSite -> %08X"), hr, ppClientSite); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetHostNames(LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::SetHostNames(%ls, %ls)"), szContainerApp, szContainerObj); - HRESULT hr = pIOleObject->SetHostNames(szContainerApp, szContainerObj); - dbgprintf(TEXT("IOleObject::SetHostNames -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Close(DWORD dwSaveOption) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::Close(%lu)"), dwSaveOption); - HRESULT hr = pIOleObject->Close(dwSaveOption); - dbgprintf(TEXT("IOleObject::Close -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetMoniker(DWORD dwWhichMoniker, IMoniker * pmk) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::SetMoniker(%lu, %p)"), dwWhichMoniker, MonikerToString(pmk).c_str()); - HRESULT hr = pIOleObject->SetMoniker(dwWhichMoniker, pmk); - dbgprintf(TEXT("IOleObject::SetMoniker -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetMoniker(DWORD dwAssign, DWORD dwWhichMoniker, IMoniker ** ppmk) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetMoniker(%lu, %lu, %p)"), dwAssign, dwWhichMoniker, ppmk); - HRESULT hr = pIOleObject->GetMoniker(dwAssign, dwWhichMoniker, ppmk); - dbgprintf(TEXT("IOleObject::GetMoniker -> %08X, pmk = %s"), hr, SUCCEEDED(hr) ? MonikerToString(*ppmk).c_str() : TEXT("")); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE InitFromData(IDataObject * pDataObject, BOOL fCreation, DWORD dwReserved) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::InitFromData(%p, %s, %lu)"), pDataObject, BooleanToString(fCreation), dwReserved); - HRESULT hr = pIOleObject->InitFromData(pDataObject, fCreation, dwReserved); - dbgprintf(TEXT("IOleObject::InitFromData -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetClipboardData(DWORD dwReserved, IDataObject ** ppDataObject) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetClipboardData(%lu, %p)"), dwReserved, ppDataObject); - HRESULT hr = pIOleObject->GetClipboardData(dwReserved, ppDataObject); - dbgprintf(TEXT("IOleObject::GetClipboardData -> %08X, pDataObject = %p"), hr, *ppDataObject); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE DoVerb(LONG iVerb, LPMSG lpmsg, IOleClientSite * pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::DoVerb(%ld, %p, %p, %ld, %p, %s)"), iVerb, lpmsg, pActiveSite, lindex, hwndParent, RectToString(*lprcPosRect).c_str()); - HRESULT hr = pIOleObject->DoVerb(iVerb, lpmsg, pActiveSite, lindex, hwndParent, lprcPosRect); - dbgprintf(TEXT("IOleObject::DoVerb -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnumVerbs(IEnumOLEVERB ** ppEnumOleVerb) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::EnumVerbs(%p)"), ppEnumOleVerb); - HRESULT hr = pIOleObject->EnumVerbs(ppEnumOleVerb); - dbgprintf(TEXT("IOleObject::EnumVerbs -> %08X, pEnumOleVerb = %p"), hr, *ppEnumOleVerb); - // TODO: hook - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Update(void) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::Update(%s)")); - HRESULT hr = pIOleObject->Update(); - dbgprintf(TEXT("IOleObject::Update -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IsUpToDate(void) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::IsUpToDate(%s)")); - HRESULT hr = pIOleObject->IsUpToDate(); - dbgprintf(TEXT("IOleObject::IsUpToDate -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetUserClassID(CLSID * pClsid) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetUserClassID(%p)"), pClsid); - HRESULT hr = pIOleObject->GetUserClassID(pClsid); - dbgprintf(TEXT("IOleObject::GetUserClassID -> %08X, Clsid = %ls"), hr, UUIDToString(*pClsid).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetUserType(DWORD dwFormOfType, LPOLESTR * pszUserType) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetUserType(%lu, %p)"), dwFormOfType, pszUserType); - HRESULT hr = pIOleObject->GetUserType(dwFormOfType, pszUserType); - dbgprintf(TEXT("IOleObject::GetUserType -> %08X, szUserType = %s"), hr, *pszUserType); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetExtent(DWORD dwDrawAspect, SIZEL * psizel) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::SetExtent(%lu, %s)"), dwDrawAspect, SizeToString(*psizel).c_str()); - HRESULT hr = pIOleObject->SetExtent(dwDrawAspect, psizel); - dbgprintf(TEXT("IOleObject::SetExtent -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetExtent(DWORD dwDrawAspect, SIZEL * psizel) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetExtent(%lu, %p)"), dwDrawAspect, psizel); - HRESULT hr = pIOleObject->GetExtent(dwDrawAspect, psizel); - dbgprintf(TEXT("IOleObject::GetExtent -> %08X"), hr, SizeToString(*psizel).c_str()); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Advise(IAdviseSink * pAdvSink, DWORD * pdwConnection) - { - // TODO: hook pAdvSink - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::Advise(%p, %p)"), pAdvSink, pdwConnection); - HRESULT hr = pIOleObject->Advise(pAdvSink, pdwConnection); - dbgprintf(TEXT("IOleObject::Advise -> %08X, dwConnection = %lu"), hr, *pdwConnection); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Unadvise(DWORD dwConnection) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::Unadvise(%lu)"), dwConnection); - HRESULT hr = pIOleObject->Unadvise(dwConnection); - dbgprintf(TEXT("IOleObject::Unadvise -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE EnumAdvise(IEnumSTATDATA ** ppenumAdvise) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::EnumAdvise(%p)"), ppenumAdvise); - HRESULT hr = pIOleObject->EnumAdvise(ppenumAdvise); - dbgprintf(TEXT("IOleObject::EnumAdvise -> %08X, penumAdvise = %p"), hr, *ppenumAdvise); - // TODO: hook - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE GetMiscStatus(DWORD dwAspect, DWORD * pdwStatus) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::GetMiscStatus(%lu, %p)"), dwAspect, pdwStatus); - HRESULT hr = pIOleObject->GetMiscStatus(dwAspect, pdwStatus); - dbgprintf(TEXT("IOleObject::GetMiscStatus -> %08X, dwStatus = %08X"), hr, *pdwStatus); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SetColorScheme(LOGPALETTE * pLogpal) - { - IOleObject * pIOleObject = getIOleObject(); - dbgprintf(TEXT("IOleObject::SetColorScheme(%p)"), pLogpal); - HRESULT hr = pIOleObject->SetColorScheme(pLogpal); - dbgprintf(TEXT("IOleObject::SetColorScheme -> %08X"), hr); - return hr; - } - - /* IPersist */ - public: - virtual HRESULT STDMETHODCALLTYPE GetClassID(CLSID * pClassID) - { - IPersist * pIPersist = getIPersist(); - dbgprintf(TEXT("IPersist::GetClassID(%p)"), pClassID); - HRESULT hr = pIPersist->GetClassID(pClassID); - dbgprintf(TEXT("IPersist::GetClassID -> %08X, ClassId = %ls"), hr, UUIDToString(*pClassID).c_str()); - return hr; - } - - /* IPersistPropertyBag */ - public: - virtual HRESULT STDMETHODCALLTYPE InitNew(void) - { - IPersistPropertyBag * pIPersistPropertyBag = getIPersistPropertyBag(); - dbgprintf(TEXT("IPersistPropertyBag::InitNew()")); - HRESULT hr = pIPersistPropertyBag->InitNew(); - dbgprintf(TEXT("IPersistPropertyBag::InitNew -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Load(IPropertyBag * pPropBag, IErrorLog * pErrorLog) - { - // TODO: hook pPropBag, pErrorLog - IPersistPropertyBag * pIPersistPropertyBag = getIPersistPropertyBag(); - dbgprintf(TEXT("IPersistPropertyBag::Load(%p, %p)"), pPropBag, pErrorLog); - HRESULT hr = pIPersistPropertyBag->Load(pPropBag, pErrorLog); - dbgprintf(TEXT("IPersistPropertyBag::Load -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE Save(IPropertyBag * pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) - { - // TODO: hook pPropBag - IPersistPropertyBag * pIPersistPropertyBag = getIPersistPropertyBag(); - dbgprintf(TEXT("IPersistPropertyBag::Save(%p, %s, %s)"), pPropBag, BooleanToString(fClearDirty), BooleanToString(fSaveAllProperties)); - HRESULT hr = pIPersistPropertyBag->Save(pPropBag, fClearDirty, fSaveAllProperties); - dbgprintf(TEXT("IPersistPropertyBag::Save -> %08X"), hr); - return hr; - } - - /* IPersistStorage */ - public: - virtual HRESULT STDMETHODCALLTYPE IPersistStorage::IsDirty(void) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::IsDirty()")); - HRESULT hr = pIPersistStorage->IsDirty(); - dbgprintf(TEXT("IPersistStorage::IsDirty -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStorage::InitNew(IStorage * pStg) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::InitNew(%p)"), pStg); - HRESULT hr = pIPersistStorage->InitNew(pStg); - dbgprintf(TEXT("IPersistStorage::InitNew -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStorage::Load(IStorage * pStg) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::Load(%p)"), pStg); - HRESULT hr = pIPersistStorage->Load(pStg); - dbgprintf(TEXT("IPersistStorage::Load -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStorage::Save(IStorage * pStgSave, BOOL fSameAsLoad) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::Save(%p, %s)"), pStgSave, BooleanToString(fSameAsLoad)); - HRESULT hr = pIPersistStorage->Save(pStgSave, fSameAsLoad); - dbgprintf(TEXT("IPersistStorage::Save -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE SaveCompleted(IStorage * pStgNew) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::SaveCompleted(%p)"), pStgNew); - HRESULT hr = pIPersistStorage->SaveCompleted(pStgNew); - dbgprintf(TEXT("IPersistStorage::SaveCompleted -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE HandsOffStorage(void) - { - IPersistStorage * pIPersistStorage = getIPersistStorage(); - dbgprintf(TEXT("IPersistStorage::HandsOffStorage()")); - HRESULT hr = pIPersistStorage->HandsOffStorage(); - dbgprintf(TEXT("IPersistStorage::HandsOffStorage -> %08X"), hr); - return hr; - } - - /* IPersistStreamInit */ - public: - virtual HRESULT STDMETHODCALLTYPE IPersistStreamInit::IsDirty(void) - { - IPersistStreamInit * pIPersistStreamInit = getIPersistStreamInit(); - dbgprintf(TEXT("IPersistStreamInit::IsDirty()")); - HRESULT hr = pIPersistStreamInit->IsDirty(); - dbgprintf(TEXT("IPersistStreamInit::IsDirty -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStreamInit::Load(LPSTREAM pStm) - { - IPersistStreamInit * pIPersistStreamInit = getIPersistStreamInit(); - dbgprintf(TEXT("IPersistStreamInit::Load(%p)"), pStm); - HRESULT hr = pIPersistStreamInit->Load(pStm); - dbgprintf(TEXT("IPersistStreamInit::Load -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStreamInit::Save(LPSTREAM pStm, BOOL fClearDirty) - { - IPersistStreamInit * pIPersistStreamInit = getIPersistStreamInit(); - dbgprintf(TEXT("IPersistStreamInit::Save(%p, %s)"), pStm, BooleanToString(fClearDirty)); - HRESULT hr = pIPersistStreamInit->Save(pStm, fClearDirty); - dbgprintf(TEXT("IPersistStreamInit::Save -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStreamInit::GetSizeMax(ULARGE_INTEGER * pCbSize) - { - IPersistStreamInit * pIPersistStreamInit = getIPersistStreamInit(); - dbgprintf(TEXT("IPersistStreamInit::GetSizeMax(%p)"), pCbSize); - HRESULT hr = pIPersistStreamInit->GetSizeMax(pCbSize); - dbgprintf(TEXT("IPersistStreamInit::GetSizeMax -> %08X, CbSize = %llu"), hr, pCbSize->QuadPart); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IPersistStreamInit::InitNew(void) - { - IPersistStreamInit * pIPersistStreamInit = getIPersistStreamInit(); - dbgprintf(TEXT("IPersistStreamInit::InitNew()")); - HRESULT hr = pIPersistStreamInit->InitNew(); - dbgprintf(TEXT("IPersistStreamInit::InitNew -> %08X"), hr); - return hr; - } - - /* IProvideClassInfo */ - public: - virtual HRESULT STDMETHODCALLTYPE GetClassInfo(ITypeInfo ** ppTI) - { - IProvideClassInfo * pIProvideClassInfo = getIProvideClassInfo(); - dbgprintf(TEXT("IProvideClassInfo::GetClassInfo(%p)"), ppTI); - HRESULT hr = pIProvideClassInfo->GetClassInfo(ppTI); - dbgprintf(TEXT("IProvideClassInfo::GetClassInfo -> %08X, pTI = %p"), hr, *ppTI); - return hr; - } - - /* IProvideClassInfo2 */ - public: - virtual HRESULT STDMETHODCALLTYPE IProvideClassInfo2::GetGUID(DWORD dwGuidKind, GUID * pGUID) - { - IProvideClassInfo2 * pIProvideClassInfo2 = getIProvideClassInfo2(); - dbgprintf(TEXT("IProvideClassInfo2::GetGUID(%lu, %p)"), dwGuidKind, pGUID); - HRESULT hr = pIProvideClassInfo2->GetGUID(dwGuidKind, pGUID); - dbgprintf(TEXT("IProvideClassInfo2::GetGUID -> %08X, GUID = %ls"), hr, UUIDToString(*pGUID).c_str()); - return hr; - } - - /* IQuickActivate */ - public: - virtual HRESULT STDMETHODCALLTYPE IQuickActivate::QuickActivate(QACONTAINER * pQaContainer, QACONTROL * pQaControl) // TODO - { - IQuickActivate * pIQuickActivate = getIQuickActivate(); - - std::basic_stringstream o1; - - o1 << "{ "; - o1 << "pClientSite = " << (void *)pQaContainer->pClientSite << ", "; - o1 << "pAdviseSink = " << (void *)pQaContainer->pAdviseSink << ", "; - o1 << "pPropertyNotifySink = " << (void *)pQaContainer->pPropertyNotifySink << ", "; - o1 << "pUnkEventSink = " << (void *)pQaContainer->pUnkEventSink << ", "; - - o1 << std::hex; - o1 << "dwAmbientFlags = " << pQaContainer->dwAmbientFlags << ", "; - o1 << "colorFore = " << pQaContainer->colorFore << ", "; - o1 << "colorBack = " << pQaContainer->colorBack << ", "; - o1 << std::dec; - - o1 << "pFont = " << (void *)pQaContainer->pFont << ", "; - o1 << "pUndoMgr = " << (void *)pQaContainer->pUndoMgr << ", "; - - o1 << std::hex; - o1 << "dwAppearance = " << pQaContainer->dwAppearance << ", "; - o1 << "lcid = " << pQaContainer->lcid << ", "; - o1 << std::dec; - - o1 << "hpal = " << (void *)pQaContainer->hpal << ", "; - o1 << "pBindHost = " << (void *)pQaContainer->pBindHost << ", "; - o1 << "pOleControlSite = " << (void *)pQaContainer->pOleControlSite << ", "; - o1 << "pServiceProvider = " << (void *)pQaContainer->pServiceProvider << ", "; - o1 << "}"; - - dbgprintf(TEXT("IQuickActivate::QuickActivate(%s, %p)"), o1.str().c_str(), pQaControl); - - HRESULT hr = pIQuickActivate->QuickActivate(pQaContainer, pQaControl); - - std::basic_stringstream o2; - - o2 << "{ "; - o2 << std::hex; - o2 << "dwMiscStatus = " << pQaControl->dwMiscStatus << ", "; - o2 << "dwViewStatus = " << pQaControl->dwViewStatus << ", "; - o2 << "dwEventCookie = " << pQaControl->dwEventCookie << ", "; - o2 << "dwPropNotifyCookie = " << pQaControl->dwPropNotifyCookie << ", "; - o2 << "dwPointerActivationPolicy = " << pQaControl->dwPointerActivationPolicy << ", "; - o2 << std::dec; - o2 << "}"; - - dbgprintf(TEXT("IQuickActivate::QuickActivate -> %08X, QaControl = %s"), hr, o2.str().c_str()); - - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IQuickActivate::SetContentExtent(LPSIZEL pSizel) - { - IQuickActivate * pIQuickActivate = getIQuickActivate(); - dbgprintf(TEXT("IQuickActivate::SetContentExtent(%s)"), SizeToString(*pSizel).c_str()); - HRESULT hr = pIQuickActivate->SetContentExtent(pSizel); - dbgprintf(TEXT("IQuickActivate::SetContentExtent -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IQuickActivate::GetContentExtent(LPSIZEL pSizel) - { - IQuickActivate * pIQuickActivate = getIQuickActivate(); - dbgprintf(TEXT("IQuickActivate::GetContentExtent(%p)"), pSizel); - HRESULT hr = pIQuickActivate->GetContentExtent(pSizel); - dbgprintf(TEXT("IQuickActivate::GetContentExtent -> %08X, Sizel = %s"), hr, SizeToString(*pSizel).c_str()); - return hr; - } - - /* ISpecifyPropertyPages */ - private: - std::basic_string CauuidToString(const CAUUID& cauuid) - { - std::basic_ostringstream o; - - o << "{"; - - for(ULONG i = 0; i < cauuid.cElems; ++ i) - { - if(i) - o << ", "; - else - o << " "; - - o << UUIDToString(cauuid.pElems[i]); - } - - o << " }"; - - return o.str(); - } - - public: - virtual HRESULT STDMETHODCALLTYPE ISpecifyPropertyPages::GetPages(CAUUID * pPages) - { - ISpecifyPropertyPages * pISpecifyPropertyPages = getISpecifyPropertyPages(); - dbgprintf(TEXT("ISpecifyPropertyPages::GetPages(%p)"), pPages); - HRESULT hr = pISpecifyPropertyPages->GetPages(pPages); - dbgprintf(TEXT("ISpecifyPropertyPages::GetPages -> %08X, Pages = %s"), hr, CauuidToString(*pPages).c_str()); - return hr; - } - - /* IViewObject */ - public: - virtual HRESULT STDMETHODCALLTYPE IViewObject::Draw(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DVTARGETDEVICE * ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE * pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::Draw(%s, %ld, %p, %s, %p, %p, %s, %s, %p, %p)"), AspectToString(dwDrawAspect), lindex, pvAspect, TargetDeviceToString(*ptd).c_str(), hdcTargetDev, hdcDraw, RectToString(*lprcBounds).c_str(), RectToString(*lprcWBounds).c_str(), pfnContinue, dwContinue); - HRESULT hr = pIViewObject->Draw(dwDrawAspect, lindex, pvAspect, ptd, hdcTargetDev, hdcDraw, lprcBounds, lprcWBounds, pfnContinue, dwContinue); - dbgprintf(TEXT("IViewObject::Draw -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IViewObject::GetColorSet(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DVTARGETDEVICE * ptd, HDC hicTargetDev, LOGPALETTE ** ppColorSet) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::GetColorSet(%s, %ld, %p, %s, %p, %p)"), AspectToString(dwDrawAspect), lindex, pvAspect, TargetDeviceToString(*ptd).c_str(), hicTargetDev, ppColorSet); - HRESULT hr = pIViewObject->GetColorSet(dwDrawAspect, lindex, pvAspect, ptd, hicTargetDev, ppColorSet); - dbgprintf(TEXT("IViewObject::GetColorSet -> %08X, pColorSet = %p"), hr, *ppColorSet); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IViewObject::Freeze(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DWORD * pdwFreeze) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::Freeze(%s, %ld, %p, %p)"), AspectToString(dwDrawAspect), lindex, pvAspect, pdwFreeze); - HRESULT hr = pIViewObject->Freeze(dwDrawAspect, lindex, pvAspect, pdwFreeze); - dbgprintf(TEXT("IViewObject::Freeze -> %08X, dwFreeze = %08X"), hr, *pdwFreeze); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IViewObject::Unfreeze(DWORD dwFreeze) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::Unfreeze(%08X)"), dwFreeze); - HRESULT hr = pIViewObject->Unfreeze(dwFreeze); - dbgprintf(TEXT("IViewObject::Unfreeze -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IViewObject::SetAdvise(DWORD aspects, DWORD advf, IAdviseSink * pAdvSink) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::SetAdvise(%s, %08X, %p)"), AspectToString(aspects), advf, pAdvSink); - HRESULT hr = pIViewObject->SetAdvise(aspects, advf, pAdvSink); - dbgprintf(TEXT("IViewObject::SetAdvise -> %08X"), hr); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE IViewObject::GetAdvise(DWORD * pAspects, DWORD * pAdvf, IAdviseSink ** ppAdvSink) - { - IViewObject * pIViewObject = getIViewObject(); - dbgprintf(TEXT("IViewObject::GetAdvise(%p, %p, %p)"), pAspects, pAdvf, ppAdvSink); - HRESULT hr = pIViewObject->GetAdvise(pAspects, pAdvf, ppAdvSink); - dbgprintf(TEXT("IViewObject::GetAdvise -> %08X, aspects = %s, advf = %08X, pAdvSink %p"), hr, AspectToString(*pAspects), *pAdvf, *ppAdvSink); - return hr; - } - - /* IViewObject2 */ - public: - virtual HRESULT STDMETHODCALLTYPE IViewObject2::GetExtent(DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE * ptd, LPSIZEL lpsizel) - { - IViewObject2 * pIViewObject2 = getIViewObject2(); - dbgprintf(TEXT("IViewObject2::GetExtent(%s, %ld, %s, %p)"), AspectToString(dwDrawAspect), lindex, TargetDeviceToString(*ptd).c_str(), lpsizel); - HRESULT hr = pIViewObject2->GetExtent(dwDrawAspect, lindex, ptd, lpsizel); - dbgprintf(TEXT("IViewObject2::GetExtent -> %08X, sizel = %s"), hr, SizeToString(*lpsizel).c_str()); - return hr; - } - - /* IMsTscAx */ - public: - virtual HRESULT __stdcall put_Server(BSTR pServer) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_Server(%ls)"), pServer); - HRESULT hr = pIMsTscAx->put_Server(pServer); - dbgprintf(TEXT("IMsTscAx::put_Server -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_Server(BSTR * pServer) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_Server()"), pServer); - HRESULT hr = pIMsTscAx->get_Server(pServer); - dbgprintf(TEXT("IMsTscAx::get_Server -> %08X, server = %ls"), hr, *pServer); - return hr; - } - - virtual HRESULT __stdcall put_Domain(BSTR pDomain) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_Domain(%ls)"), pDomain); - HRESULT hr = pIMsTscAx->put_Domain(pDomain); - dbgprintf(TEXT("IMsTscAx::put_Domain -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_Domain(BSTR * pDomain) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_Domain(%p)"), pDomain); - HRESULT hr = pIMsTscAx->get_Domain(pDomain); - dbgprintf(TEXT("IMsTscAx::get_Domain -> %08X, Domain = %ls"), hr, *pDomain); - return hr; - } - - virtual HRESULT __stdcall put_UserName(BSTR pUserName) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_UserName(%ls)"), pUserName); - HRESULT hr = pIMsTscAx->put_UserName(pUserName); - dbgprintf(TEXT("IMsTscAx::put_UserName -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_UserName(BSTR * pUserName) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_UserName(%p)"), pUserName); - HRESULT hr = pIMsTscAx->get_UserName(pUserName); - dbgprintf(TEXT("IMsTscAx::get_UserName -> %08X, UserName = %ls"), hr, *pUserName); - return hr; - } - - virtual HRESULT __stdcall put_DisconnectedText(BSTR pDisconnectedText) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_DisconnectedText(%ls)"), pDisconnectedText); - HRESULT hr = pIMsTscAx->put_DisconnectedText(pDisconnectedText); - dbgprintf(TEXT("IMsTscAx::put_DisconnectedText -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_DisconnectedText(BSTR * pDisconnectedText) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_DisconnectedText(%p)"), pDisconnectedText); - HRESULT hr = pIMsTscAx->get_DisconnectedText(pDisconnectedText); - dbgprintf(TEXT("IMsTscAx::get_DisconnectedText -> %08X, DisconnectedText = %ls"), hr, *pDisconnectedText); - return hr; - } - - virtual HRESULT __stdcall put_ConnectingText(BSTR pConnectingText) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_ConnectingText(%ls)"), pConnectingText); - HRESULT hr = pIMsTscAx->put_ConnectingText(pConnectingText); - dbgprintf(TEXT("IMsTscAx::put_ConnectingText -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_ConnectingText(BSTR * pConnectingText) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_ConnectingText(%p)"), pConnectingText); - HRESULT hr = pIMsTscAx->get_ConnectingText(pConnectingText); - dbgprintf(TEXT("IMsTscAx::get_ConnectingText -> %08X, ConnectingText = %ls"), hr, *pConnectingText); - return hr; - } - - virtual HRESULT __stdcall get_Connected(short * pIsConnected) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_Connected(%p)"), pIsConnected); - HRESULT hr = pIMsTscAx->get_Connected(pIsConnected); - dbgprintf(TEXT("IMsTscAx::get_Connected -> %08X, IsConnected = %s"), hr, BooleanToString(*pIsConnected)); - return hr; - } - - virtual HRESULT __stdcall put_DesktopWidth(long pVal) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_DesktopWidth(%ld)"), pVal); - HRESULT hr = pIMsTscAx->put_DesktopWidth(pVal); - dbgprintf(TEXT("IMsTscAx::put_DesktopWidth -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_DesktopWidth(long * pVal) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_DesktopWidth(%p)"), pVal); - HRESULT hr = pIMsTscAx->get_DesktopWidth(pVal); - dbgprintf(TEXT("IMsTscAx::get_DesktopWidth -> %08X, Val = %lu"), hr, *pVal); - return hr; - } - - virtual HRESULT __stdcall put_DesktopHeight(long pVal) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_DesktopHeight(%ld)"), pVal); - HRESULT hr = pIMsTscAx->put_DesktopHeight(pVal); - dbgprintf(TEXT("IMsTscAx::put_DesktopHeight -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_DesktopHeight(long * pVal) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_DesktopHeight(%p)"), pVal); - HRESULT hr = pIMsTscAx->get_DesktopHeight(pVal); - dbgprintf(TEXT("IMsTscAx::get_DesktopHeight -> %08X, Val = %lu"), hr, *pVal); - return hr; - } - - virtual HRESULT __stdcall put_StartConnected(long pfStartConnected) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_StartConnected(%s)"), BooleanToString(pfStartConnected)); - HRESULT hr = pIMsTscAx->put_StartConnected(pfStartConnected); - dbgprintf(TEXT("IMsTscAx::put_StartConnected -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_StartConnected(long * pfStartConnected) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_StartConnected(%p)"), pfStartConnected); - HRESULT hr = pIMsTscAx->get_StartConnected(pfStartConnected); - dbgprintf(TEXT("IMsTscAx::get_StartConnected -> %08X, fStartConnected = %s"), hr, BooleanToString(*pfStartConnected)); - return hr; - } - - virtual HRESULT __stdcall get_HorizontalScrollBarVisible(long * pfHScrollVisible) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_HorizontalScrollBarVisible(%p)"), pfHScrollVisible); - HRESULT hr = pIMsTscAx->get_HorizontalScrollBarVisible(pfHScrollVisible); - dbgprintf(TEXT("IMsTscAx::get_HorizontalScrollBarVisible -> %08X, fHScrollVisible = %s"), hr, BooleanToString(*pfHScrollVisible)); - return hr; - } - - virtual HRESULT __stdcall get_VerticalScrollBarVisible(long * pfVScrollVisible) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_VerticalScrollBarVisible(%p)"), pfVScrollVisible); - HRESULT hr = pIMsTscAx->get_VerticalScrollBarVisible(pfVScrollVisible); - dbgprintf(TEXT("IMsTscAx::get_VerticalScrollBarVisible -> %08X, fVScrollVisible"), hr, *pfVScrollVisible); - return hr; - } - - virtual HRESULT __stdcall put_FullScreenTitle(BSTR _arg1) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::put_FullScreenTitle(%ls)"), _arg1); - HRESULT hr = pIMsTscAx->put_FullScreenTitle(_arg1); - dbgprintf(TEXT("IMsTscAx::put_FullScreenTitle -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_CipherStrength(long * pCipherStrength) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_CipherStrength(%p)"), pCipherStrength); - HRESULT hr = pIMsTscAx->get_CipherStrength(pCipherStrength); - dbgprintf(TEXT("IMsTscAx::get_CipherStrength -> %08X, CipherStrength = %ld"), hr, *pCipherStrength); - return hr; - } - - virtual HRESULT __stdcall get_Version(BSTR * pVersion) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_Version(%p)"), pVersion); - HRESULT hr = pIMsTscAx->get_Version(pVersion); - dbgprintf(TEXT("IMsTscAx::get_Version -> %08X, Version = %ls"), hr, *pVersion); - return hr; - } - - virtual HRESULT __stdcall get_SecuredSettingsEnabled(long * pSecuredSettingsEnabled) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_SecuredSettingsEnabled(%p)"), pSecuredSettingsEnabled); - HRESULT hr = pIMsTscAx->get_SecuredSettingsEnabled(pSecuredSettingsEnabled); - dbgprintf(TEXT("IMsTscAx::get_SecuredSettingsEnabled -> %08X, SecuredSettingsEnabled = %s"), hr, BooleanToString(*pSecuredSettingsEnabled)); - return hr; - } - - virtual HRESULT __stdcall get_SecuredSettings(IMsTscSecuredSettings ** ppSecuredSettings) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_SecuredSettings(%p)"), ppSecuredSettings); - HRESULT hr = pIMsTscAx->get_SecuredSettings(ppSecuredSettings); - dbgprintf(TEXT("IMsTscAx::get_SecuredSettings -> %08X, pSecuredSettings = %p"), hr, *ppSecuredSettings); - return hr; - } - - virtual HRESULT __stdcall get_AdvancedSettings(IMsTscAdvancedSettings ** ppAdvSettings) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_AdvancedSettings(%p)"), ppAdvSettings); - HRESULT hr = pIMsTscAx->get_AdvancedSettings(ppAdvSettings); - dbgprintf(TEXT("IMsTscAx::get_AdvancedSettings -> %08X, pAdvSettings = %p"), hr, *ppAdvSettings); - - if(SUCCEEDED(hr)) - *ppAdvSettings = new CAdvancedSettings(*ppAdvSettings); - - return hr; - } - - virtual HRESULT __stdcall get_Debugger(IMsTscDebug ** ppDebugger) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::get_Debugger(%p)"), ppDebugger); - HRESULT hr = pIMsTscAx->get_Debugger(ppDebugger); - dbgprintf(TEXT("IMsTscAx::get_Debugger -> %08X, pDebugger = %p"), hr, *ppDebugger); - return hr; - } - - virtual HRESULT __stdcall Connect() - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::Connect()")); - HRESULT hr = pIMsTscAx->Connect(); - dbgprintf(TEXT("IMsTscAx::Connect -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall Disconnect() - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::Disconnect()")); - HRESULT hr = pIMsTscAx->Disconnect(); - dbgprintf(TEXT("IMsTscAx::Disconnect -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall CreateVirtualChannels(BSTR newVal) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::CreateVirtualChannels(%ls)"), newVal); - HRESULT hr = pIMsTscAx->CreateVirtualChannels(newVal); - dbgprintf(TEXT("IMsTscAx::CreateVirtualChannels -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall SendOnVirtualChannel(BSTR chanName, BSTR ChanData) - { - IMsTscAx * pIMsTscAx = getIMsTscAx(); - dbgprintf(TEXT("IMsTscAx::SendOnVirtualChannel(%ls, %p)"), chanName, ChanData); - HRESULT hr = pIMsTscAx->SendOnVirtualChannel(chanName, ChanData); - dbgprintf(TEXT("IMsTscAx::SendOnVirtualChannel -> %08X"), hr); - return hr; - } - - /* IMsRdpClient */ - public: - virtual HRESULT __stdcall put_ColorDepth(long pcolorDepth) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::put_ColorDepth(%ld)"), pcolorDepth); - HRESULT hr = pIMsRdpClient->put_ColorDepth(pcolorDepth); - dbgprintf(TEXT("IMsRdpClient::put_ColorDepth -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_ColorDepth(long * pcolorDepth) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::get_ColorDepth(%p)"), pcolorDepth); - HRESULT hr = pIMsRdpClient->get_ColorDepth(pcolorDepth); - dbgprintf(TEXT("IMsRdpClient::get_ColorDepth -> %08X, colorDepth = %ld"), hr, *pcolorDepth); - return hr; - } - - virtual HRESULT __stdcall get_AdvancedSettings2(IMsRdpClientAdvancedSettings ** ppAdvSettings) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::get_AdvancedSettings2(%p)"), ppAdvSettings); - HRESULT hr = pIMsRdpClient->get_AdvancedSettings2(ppAdvSettings); - dbgprintf(TEXT("IMsRdpClient::get_AdvancedSettings2 -> %08X, pAdvSettings = %p"), hr, *ppAdvSettings); - - if(SUCCEEDED(hr)) - *ppAdvSettings = new CAdvancedSettings(*ppAdvSettings); - - return hr; - } - - virtual HRESULT __stdcall get_SecuredSettings2(IMsRdpClientSecuredSettings ** ppSecuredSettings) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::get_SecuredSettings2(%p)"), ppSecuredSettings); - HRESULT hr = pIMsRdpClient->get_SecuredSettings2(ppSecuredSettings); - dbgprintf(TEXT("IMsRdpClient::get_SecuredSettings2 -> %08X, pSecuredSettings = %p"), hr, *ppSecuredSettings); - return hr; - } - - virtual HRESULT __stdcall get_ExtendedDisconnectReason(ExtendedDisconnectReasonCode * pExtendedDisconnectReason) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::get_ExtendedDisconnectReason(%p)"), pExtendedDisconnectReason); - HRESULT hr = pIMsRdpClient->get_ExtendedDisconnectReason(pExtendedDisconnectReason); - dbgprintf(TEXT("IMsRdpClient::get_ExtendedDisconnectReason -> %08X, ExtendedDisconnectReason = %u"), hr, *pExtendedDisconnectReason); - return hr; - } - - virtual HRESULT __stdcall put_FullScreen(VARIANT_BOOL pfFullScreen) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::put_FullScreen(%s)"), BooleanToString(pfFullScreen)); - HRESULT hr = pIMsRdpClient->put_FullScreen(pfFullScreen); - dbgprintf(TEXT("IMsRdpClient::put_FullScreen -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_FullScreen(VARIANT_BOOL * pfFullScreen) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::get_FullScreen(%p)"), pfFullScreen); - HRESULT hr = pIMsRdpClient->get_FullScreen(pfFullScreen); - dbgprintf(TEXT("IMsRdpClient::get_FullScreen -> %08X, pfFullScreen = %s"), hr, BooleanToString(*pfFullScreen)); - return hr; - } - - virtual HRESULT __stdcall SetVirtualChannelOptions(BSTR chanName, long chanOptions) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::SetVirtualChannelOptions(%ls, %08X)"), chanName, chanOptions); - HRESULT hr = pIMsRdpClient->SetVirtualChannelOptions(chanName, chanOptions); - dbgprintf(TEXT("IMsRdpClient::SetVirtualChannelOptions -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall GetVirtualChannelOptions(BSTR chanName, long * pChanOptions) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::GetVirtualChannelOptions(%ls, %p)"), chanName, pChanOptions); - HRESULT hr = pIMsRdpClient->GetVirtualChannelOptions(chanName, pChanOptions); - dbgprintf(TEXT("IMsRdpClient::GetVirtualChannelOptions -> %08X, ChanOptions = %08X"), hr, *pChanOptions); - return hr; - } - - virtual HRESULT __stdcall RequestClose(ControlCloseStatus * pCloseStatus) - { - IMsRdpClient * pIMsRdpClient = getIMsRdpClient(); - dbgprintf(TEXT("IMsRdpClient::RequestClose(%p)"), pCloseStatus); - HRESULT hr = pIMsRdpClient->RequestClose(pCloseStatus); - dbgprintf(TEXT("IMsRdpClient::RequestClose -> %08X, CloseStatus = %ld"), hr, *pCloseStatus); - return hr; - } - - /* IMsRdpClient2 */ - public: - virtual HRESULT __stdcall get_AdvancedSettings3(IMsRdpClientAdvancedSettings2 ** ppAdvSettings) - { - IMsRdpClient2 * pIMsRdpClient2 = getIMsRdpClient2(); - dbgprintf(TEXT("IMsRdpClient2::get_AdvancedSettings3(%p)"), ppAdvSettings); - HRESULT hr = pIMsRdpClient2->get_AdvancedSettings3(ppAdvSettings); - dbgprintf(TEXT("IMsRdpClient2::get_AdvancedSettings3 -> %08X, pAdvSettings = %p"), hr, *ppAdvSettings); - - if(SUCCEEDED(hr)) - *ppAdvSettings = new CAdvancedSettings(*ppAdvSettings); - - return hr; - } - - virtual HRESULT __stdcall put_ConnectedStatusText(BSTR pConnectedStatusText) - { - IMsRdpClient2 * pIMsRdpClient2 = getIMsRdpClient2(); - dbgprintf(TEXT("IMsRdpClient2::put_ConnectedStatusText(%ls)"), pConnectedStatusText); - HRESULT hr = pIMsRdpClient2->put_ConnectedStatusText(pConnectedStatusText); - dbgprintf(TEXT("IMsRdpClient2::put_ConnectedStatusText -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_ConnectedStatusText(BSTR * pConnectedStatusText) - { - IMsRdpClient2 * pIMsRdpClient2 = getIMsRdpClient2(); - dbgprintf(TEXT("IMsRdpClient2::get_ConnectedStatusText(%p)"), pConnectedStatusText); - HRESULT hr = pIMsRdpClient2->get_ConnectedStatusText(pConnectedStatusText); - dbgprintf(TEXT("IMsRdpClient2::get_ConnectedStatusText -> %08X, ConnectedStatusText = %ls"), hr, *pConnectedStatusText); - return hr; - } - - /* IMsRdpClient3 */ - public: - virtual HRESULT __stdcall get_AdvancedSettings4(IMsRdpClientAdvancedSettings3 ** ppAdvSettings) - { - IMsRdpClient3 * pIMsRdpClient3 = getIMsRdpClient3(); - dbgprintf(TEXT("IMsRdpClient3::get_AdvancedSettings4(%p)"), ppAdvSettings); - HRESULT hr = pIMsRdpClient3->get_AdvancedSettings4(ppAdvSettings); - dbgprintf(TEXT("IMsRdpClient3::get_AdvancedSettings4 -> %08X, pAdvSettings = %p"), hr, *ppAdvSettings); - - if(SUCCEEDED(hr)) - *ppAdvSettings = new CAdvancedSettings(*ppAdvSettings); - - return hr; - } - - /* IMsRdpClient4 */ - public: - virtual HRESULT __stdcall get_AdvancedSettings5(IMsRdpClientAdvancedSettings4 ** ppAdvSettings5) - { - IMsRdpClient4 * pIMsRdpClient4 = getIMsRdpClient4(); - dbgprintf(TEXT("IMsRdpClient4::get_AdvancedSettings5(%p)"), ppAdvSettings5); - HRESULT hr = pIMsRdpClient4->get_AdvancedSettings5(ppAdvSettings5); - dbgprintf(TEXT("IMsRdpClient4::get_AdvancedSettings5 -> %08X, pAdvSettings5 = %p"), hr, *ppAdvSettings5); - - if(SUCCEEDED(hr)) - *ppAdvSettings5 = new CAdvancedSettings(*ppAdvSettings5); - - return hr; - } - - /* IMsTscNonScriptable */ - public: - virtual HRESULT __stdcall put_ClearTextPassword(BSTR _arg1) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::put_ClearTextPassword(%ls)"), _arg1); - HRESULT hr = pIMsTscNonScriptable->put_ClearTextPassword(_arg1); - dbgprintf(TEXT("IMsTscNonScriptable::put_ClearTextPassword -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall put_PortablePassword(BSTR pPortablePass) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::put_PortablePassword(%ls)"), pPortablePass); - HRESULT hr = pIMsTscNonScriptable->put_PortablePassword(pPortablePass); - dbgprintf(TEXT("IMsTscNonScriptable::put_PortablePassword -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_PortablePassword(BSTR * pPortablePass) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::get_PortablePassword(%p)"), pPortablePass); - HRESULT hr = pIMsTscNonScriptable->get_PortablePassword(pPortablePass); - dbgprintf(TEXT("IMsTscNonScriptable::get_PortablePassword -> %08X, PortablePass = %ls"), hr, *pPortablePass); - return hr; - } - - virtual HRESULT __stdcall put_PortableSalt(BSTR pPortableSalt) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::put_PortableSalt(%ls)"), pPortableSalt); - HRESULT hr = pIMsTscNonScriptable->put_PortableSalt(pPortableSalt); - dbgprintf(TEXT("IMsTscNonScriptable::put_PortableSalt -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_PortableSalt(BSTR * pPortableSalt) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::get_PortableSalt()"), pPortableSalt); - HRESULT hr = pIMsTscNonScriptable->get_PortableSalt(pPortableSalt); - dbgprintf(TEXT("IMsTscNonScriptable::get_PortableSalt -> %08X, PortableSalt = %ls"), hr, *pPortableSalt); - return hr; - } - - virtual HRESULT __stdcall put_BinaryPassword(BSTR pBinaryPassword) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::put_BinaryPassword(%p)"), pBinaryPassword); - HRESULT hr = pIMsTscNonScriptable->put_BinaryPassword(pBinaryPassword); - dbgprintf(TEXT("IMsTscNonScriptable::put_BinaryPassword -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_BinaryPassword(BSTR * pBinaryPassword) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::get_BinaryPassword()"), pBinaryPassword); - HRESULT hr = pIMsTscNonScriptable->get_BinaryPassword(pBinaryPassword); - dbgprintf(TEXT("IMsTscNonScriptable::get_BinaryPassword -> %08X, BinaryPassword = %ls"), hr, *pBinaryPassword); - return hr; - } - - virtual HRESULT __stdcall put_BinarySalt(BSTR pSalt) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::put_BinarySalt(%p)"), pSalt); - HRESULT hr = pIMsTscNonScriptable->put_BinarySalt(pSalt); - dbgprintf(TEXT("IMsTscNonScriptable::put_BinarySalt -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall get_BinarySalt(BSTR * pSalt) - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::get_BinarySalt()"), pSalt); - HRESULT hr = pIMsTscNonScriptable->get_BinarySalt(pSalt); - dbgprintf(TEXT("IMsTscNonScriptable::get_BinarySalt -> %08X, pSalt = %ls"), hr, *pSalt); - return hr; - } - - virtual HRESULT __stdcall ResetPassword() - { - IMsTscNonScriptable * pIMsTscNonScriptable = getIMsTscNonScriptable(); - dbgprintf(TEXT("IMsTscNonScriptable::ResetPassword()")); - HRESULT hr = pIMsTscNonScriptable->ResetPassword(); - dbgprintf(TEXT("IMsTscNonScriptable::ResetPassword -> %08X"), hr); - return hr; - } - - - /* IMsRdpClientNonScriptable */ - public: - virtual HRESULT __stdcall IMsRdpClientNonScriptable::NotifyRedirectDeviceChange(UINT_PTR wParam, LONG_PTR lParam) - { - IMsRdpClientNonScriptable * pIMsRdpClientNonScriptable = getIMsRdpClientNonScriptable(); - dbgprintf(TEXT("IMsRdpClientNonScriptable::NotifyRedirectDeviceChange(%p, %p)"), wParam, lParam); - HRESULT hr = pIMsRdpClientNonScriptable->NotifyRedirectDeviceChange(wParam, lParam); - dbgprintf(TEXT("IMsRdpClientNonScriptable::NotifyRedirectDeviceChange -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall IMsRdpClientNonScriptable::SendKeys(long numKeys, VARIANT_BOOL * pbArrayKeyUp, long * plKeyData) // TBD - { - IMsRdpClientNonScriptable * pIMsRdpClientNonScriptable = getIMsRdpClientNonScriptable(); - dbgprintf(TEXT("IMsRdpClientNonScriptable::SendKeys(%ld, %p, %p)"), numKeys, pbArrayKeyUp, plKeyData); - HRESULT hr = pIMsRdpClientNonScriptable->SendKeys(numKeys, pbArrayKeyUp, plKeyData); - dbgprintf(TEXT("IMsRdpClientNonScriptable::SendKeys -> %08X"), hr); - return hr; - } - - /* IMsRdpClientNonScriptable2 */ - public: - virtual HRESULT __stdcall IMsRdpClientNonScriptable2::put_UIParentWindowHandle(wireHWND phwndUIParentWindowHandle) - { - IMsRdpClientNonScriptable2 * pIMsRdpClientNonScriptable2 = getIMsRdpClientNonScriptable2(); - dbgprintf(TEXT("IMsRdpClientNonScriptable2::put_UIParentWindowHandle(%p)"), phwndUIParentWindowHandle); - HRESULT hr = pIMsRdpClientNonScriptable2->put_UIParentWindowHandle(phwndUIParentWindowHandle); - dbgprintf(TEXT("IMsRdpClientNonScriptable2::put_UIParentWindowHandle -> %08X"), hr); - return hr; - } - - virtual HRESULT __stdcall IMsRdpClientNonScriptable2::get_UIParentWindowHandle(wireHWND * phwndUIParentWindowHandle) - { - IMsRdpClientNonScriptable2 * pIMsRdpClientNonScriptable2 = getIMsRdpClientNonScriptable2(); - dbgprintf(TEXT("IMsRdpClientNonScriptable2::get_UIParentWindowHandle(%p)"), phwndUIParentWindowHandle); - HRESULT hr = pIMsRdpClientNonScriptable2->get_UIParentWindowHandle(phwndUIParentWindowHandle); - dbgprintf(TEXT("IMsRdpClientNonScriptable2::get_UIParentWindowHandle -> %08X, hwndUIParentWindowHandle = %p"), hr, *phwndUIParentWindowHandle); - return hr; - } - - /* - { - * p = m_; - dbgprintf(TEXT("::()"), ); - HRESULT hr = p->(); - dbgprintf(TEXT(":: -> %08X, "), hr, ); - return hr; - } - */ - }; - - class ClassFactory: public IClassFactory2 - { - private: - LONG m_refCount; - IUnknown * m_IUnknown; - IClassFactory * m_IClassFactory; - IClassFactory2 * m_IClassFactory2; - - IClassFactory * getIClassFactory() - { - if(m_IClassFactory) - return m_IClassFactory; - - if(m_IClassFactory2) - m_IClassFactory = m_IClassFactory2; - - if(m_IClassFactory) - { - m_IClassFactory->AddRef(); - return m_IClassFactory; - } - - m_IUnknown->QueryInterface(&m_IClassFactory); - return m_IClassFactory; - } - - IClassFactory2 * getIClassFactory2() - { - if(m_IClassFactory2) - return m_IClassFactory2; - - m_IUnknown->QueryInterface(&m_IClassFactory2); - return m_IClassFactory2; - } - - public: - ClassFactory(IUnknown * pUnknwn): - m_refCount(1), - m_IUnknown(pUnknwn), - m_IClassFactory(NULL), - m_IClassFactory2(NULL) - { - m_IUnknown->AddRef(); - } - - ~ClassFactory() - { - if(m_IUnknown) - m_IUnknown->Release(); - - if(m_IClassFactory) - m_IClassFactory->Release(); - - if(m_IClassFactory2) - m_IClassFactory2->Release(); - } - - /* IUnknown */ - public: - virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void ** ppvObject) - { - HRESULT hr; - IUnknown * pvObject = NULL; - - dbgprintf(TEXT("IUnknown::QueryInterface(%ls, %p)"), UUIDToString(riid).c_str(), ppvObject); - -#define QIBEGIN() \ - if(riid == IID_IUnknown) \ - { \ - hr = S_OK; \ - pvObject = (IUnknown *)(this); \ - } - -#define QI(I) \ - else if(riid == IID_ ## I) \ - { \ - if(m_ ## I) \ - { \ - m_ ## I->AddRef(); \ - hr = S_OK; \ - } \ - else \ - { \ - hr = m_IUnknown->QueryInterface(&m_ ## I); \ - } \ - \ - if(SUCCEEDED(hr)) \ - pvObject = static_cast(this); \ - } - -#define QIEND() \ - else \ - { \ - hr = E_NOINTERFACE; \ - pvObject = NULL; \ - } - - QIBEGIN() - QI(IClassFactory) - QI(IClassFactory2) - QIEND() - -#undef QIBEGIN -#undef QIEND -#undef QI - - if(SUCCEEDED(hr)) - { - assert(pvObject); - pvObject->AddRef(); - } - else - { - assert(pvObject == NULL); - } - - *ppvObject = pvObject; - - dbgprintf(TEXT("IUnknown::QueryInterface -> %08X, ppvObject = %p"), hr, *ppvObject); - return hr; - } - - virtual ULONG STDMETHODCALLTYPE AddRef(void) - { - return InterlockedIncrement(&m_refCount); - } - - virtual ULONG STDMETHODCALLTYPE Release(void) - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - /* IClassFactory */ - public: - virtual HRESULT STDMETHODCALLTYPE CreateInstance(IUnknown * pUnkOuter, REFIID riid, void ** ppvObject) - { - IClassFactory * pIClassFactory = getIClassFactory(); - dbgprintf(TEXT("IClassFactory::CreateInstance(%p, %ls, %p)"), pUnkOuter, UUIDToString(riid).c_str(), ppvObject); - HRESULT hr = pIClassFactory->CreateInstance(NULL, riid, ppvObject); - dbgprintf(TEXT("IClassFactory::CreateInstance -> %08X, pvObject = %p"), hr, *ppvObject); - return CoClass::CreateInstance((IUnknown *)*ppvObject, pUnkOuter, riid, ppvObject); - } - - virtual HRESULT STDMETHODCALLTYPE LockServer(BOOL fLock) - { - IClassFactory * pIClassFactory = getIClassFactory(); - dbgprintf(TEXT("IClassFactory::LockServer(%s)"), BooleanToString(fLock)); - HRESULT hr = pIClassFactory->LockServer(fLock); - dbgprintf(TEXT("IClassFactory::LockServer -> %08X"), hr); - return hr; - } - - /* IClassFactory2 */ - public: - virtual HRESULT STDMETHODCALLTYPE GetLicInfo(LICINFO * pLicInfo) - { - IClassFactory2 * pIClassFactory2 = getIClassFactory2(); - dbgprintf(TEXT("IClassFactory2::GetLicInfo(%p)"), pLicInfo); - HRESULT hr = pIClassFactory2->GetLicInfo(pLicInfo); - dbgprintf(TEXT("IClassFactory2::GetLicInfo -> %08X, LicInfo = %p"), hr, pLicInfo); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE RequestLicKey(DWORD dwReserved, BSTR * pBstrKey) - { - IClassFactory2 * pIClassFactory2 = getIClassFactory2(); - dbgprintf(TEXT("IClassFactory2::RequestLicKey(%lu, %p)"), dwReserved, pBstrKey); - HRESULT hr = pIClassFactory2->RequestLicKey(dwReserved, pBstrKey); - dbgprintf(TEXT("IClassFactory2::RequestLicKey -> %08X, bstrKey = %ls"), hr, *pBstrKey); - return hr; - } - - virtual HRESULT STDMETHODCALLTYPE CreateInstanceLic(IUnknown * pUnkOuter, IUnknown * pUnkReserved, REFIID riid, BSTR bstrKey, PVOID * ppvObj) - { - IClassFactory2 * pIClassFactory2 = getIClassFactory2(); - dbgprintf(TEXT("IClassFactory2::CreateInstanceLic(%p, %p, %ls, %ls, %p)"), pUnkOuter, pUnkReserved, UUIDToString(riid).c_str(), bstrKey, ppvObj); - HRESULT hr = pIClassFactory2->CreateInstanceLic(NULL, pUnkReserved, riid, bstrKey, ppvObj); - dbgprintf(TEXT("IClassFactory2::CreateInstanceLic -> %08X, pvObj = %p"), hr, *ppvObj); - return CoClass::CreateInstance((IUnknown *)*ppvObj, pUnkOuter, riid, ppvObj); - } - }; - - STDAPI DllGetClassObject(IN REFCLSID rclsid, IN REFIID riid, OUT LPVOID * ppv) - { - init(); - - dbgprintf(TEXT("DllGetClassObject(%ls, %ls, %p)"), UUIDToString(rclsid).c_str(), UUIDToString(riid).c_str(), ppv); - HRESULT hr = pfnDllGetClassObject(rclsid, IID_IUnknown, ppv); - dbgprintf(TEXT("DllGetClassObject -> %08X, pv = %p"), hr, *ppv); - - IUnknown * pv = NULL; - - if(SUCCEEDED(hr)) - { - IUnknown * punk = (IUnknown *)*ppv; - - if(rclsid == CLSID_MsTscAx || rclsid == CLSID_MsRdpClient || rclsid == CLSID_MsRdpClient2 || rclsid == CLSID_MsRdpClient3 || rclsid == CLSID_MsRdpClient4) - pv = new ClassFactory(punk); - else - hr = CLASS_E_CLASSNOTAVAILABLE; - - punk->Release(); - } - - if(pv) - { - hr = pv->QueryInterface(riid, ppv); - - if(FAILED(hr)) - pv->Release(); - } - - return hr; - } - - STDAPI DllCanUnloadNow(void) - { - init(); - - dbgprintf(TEXT("DllCanUnloadNow()")); - HRESULT hr = pfnDllCanUnloadNow(); - dbgprintf(TEXT("DllCanUnloadNow -> %08X"), hr); - - return hr; - } - - STDAPI_(ULONG) DllGetTscCtlVer(void) - { - init(); - - dbgprintf(TEXT("DllGetTscCtlVer()")); - ULONG ul = pfnDllGetTscCtlVer(); - dbgprintf(TEXT("DllGetTscCtlVer-> %08X"), ul); - - return ul; - } -} - -// EOF diff --git a/base/applications/tsclient/porting-tools/mstscax/mstscax.def b/base/applications/tsclient/porting-tools/mstscax/mstscax.def deleted file mode 100644 index 5da85892a99..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/mstscax.def +++ /dev/null @@ -1,14 +0,0 @@ -LIBRARY mstscax.dll - -EXPORTS - ; OLE inproc server - DllGetClassObject PRIVATE - DllCanUnloadNow PRIVATE - - ; OLE self-registration - ; TODO - - ; Private APIs - DllGetTscCtlVer - -; EOF diff --git a/base/applications/tsclient/porting-tools/mstscax/mstscax.sln b/base/applications/tsclient/porting-tools/mstscax/mstscax.sln deleted file mode 100644 index 2abaf3db1b1..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/mstscax.sln +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 9.00 -# Visual C++ Express 2005 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mstscax", "mstscax.vcproj", "{933B2293-F12F-4B01-98B4-BF635B8B4F36}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {933B2293-F12F-4B01-98B4-BF635B8B4F36}.Debug|Win32.ActiveCfg = Debug|Win32 - {933B2293-F12F-4B01-98B4-BF635B8B4F36}.Debug|Win32.Build.0 = Debug|Win32 - {933B2293-F12F-4B01-98B4-BF635B8B4F36}.Release|Win32.ActiveCfg = Release|Win32 - {933B2293-F12F-4B01-98B4-BF635B8B4F36}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/base/applications/tsclient/porting-tools/mstscax/mstscax.vcproj b/base/applications/tsclient/porting-tools/mstscax/mstscax.vcproj deleted file mode 100644 index 7e3def8edf7..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/mstscax.vcproj +++ /dev/null @@ -1,229 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/base/applications/tsclient/porting-tools/mstscax/stdafx.cpp b/base/applications/tsclient/porting-tools/mstscax/stdafx.cpp deleted file mode 100644 index fd4f341c7b2..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/stdafx.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "stdafx.h" diff --git a/base/applications/tsclient/porting-tools/mstscax/stdafx.h b/base/applications/tsclient/porting-tools/mstscax/stdafx.h deleted file mode 100644 index 9c317402891..00000000000 --- a/base/applications/tsclient/porting-tools/mstscax/stdafx.h +++ /dev/null @@ -1,33 +0,0 @@ -#pragma once - -#include -#include -#include - -#include -#include -#include -#include - -#define WIN32_LEAN_AND_MEAN -#define STRICT -#define NOMINMAX - -#include -#include -#include - -#include - -#include - -#import "./rdesktop-core-tester.tlb" \ - exclude("LONG_PTR", "UINT_PTR", "wireHWND", "_RemotableHandle", "__MIDL_IWinTypes_0009") \ - named_guids \ - no_implementation \ - no_smart_pointers \ - raw_dispinterfaces \ - raw_interfaces_only \ - raw_native_types - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/activex.cpp b/base/applications/tsclient/porting-tools/rdesktop-core-tester/activex.cpp deleted file mode 100644 index 80a03b6a379..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/activex.cpp +++ /dev/null @@ -1,6095 +0,0 @@ -#include "stdafx.h" - -namespace MSTSCLib -{ -#include "mstsclib_h.h" -}; - -namespace MSTSCLib_Redist -{ -// extremely ew, but actually the cleanest way to import the alternate UUIDs -#include "mstsclib_redist_i.c" -}; - -#include "rdesktop/rdesktop.h" -#include "rdesktop/proto.h" - -namespace -{ -#ifdef _MSC_VER -extern "C" char __ImageBase; -#endif - -HMODULE GetCurrentModule() -{ - return reinterpret_cast(&__ImageBase); -} - -} - -namespace -{ - -LONG g_moduleRefCount = 0; - -void lockServer() -{ - InterlockedIncrement(&g_moduleRefCount); -} - -void unlockServer() -{ - InterlockedDecrement(&g_moduleRefCount); -} - -bool canUnloadServer() -{ - return g_moduleRefCount == 0; -} - -} - -namespace -{ - -void FreeLpsz(LPSTR lpsz) -{ - if(lpsz) - delete[] lpsz; -} - -LPSTR AllocLpsz(const CHAR * lpsz, size_t cb) -{ - LPSTR lpszNew = new CHAR[cb + 1]; - - if(lpszNew == NULL) - return NULL; - - CopyMemory(lpszNew, lpsz, cb); - lpszNew[cb] = 0; - - return lpszNew; -} - -LPSTR AllocLpsz(const WCHAR * lpwsz, int cchIn) -{ - int cch = WideCharToMultiByte(CP_ACP, 0, lpwsz, cchIn, NULL, 0, NULL, NULL); - - if(cch <= 0) - return NULL; - - LPSTR lpsz = new CHAR[cch]; - - if(lpsz == NULL) - return NULL; - - cch = WideCharToMultiByte(CP_ACP, 0, lpwsz, cchIn, lpsz, cch, NULL, NULL); - - if(cch <= 0) - { - FreeLpsz(lpsz); - return NULL; - } - - return lpsz; -} - -LPSTR BstrToLpsz(BSTR bstr) -{ - return AllocLpsz(bstr, SysStringLen(bstr)); -} - -BSTR LpszToBstr(LPSTR lpsz) -{ - int cch = MultiByteToWideChar(CP_ACP, 0, lpsz, -1, NULL, 0); - - if(cch <= 0) - return NULL; - - BSTR bstr = SysAllocStringLen(NULL, cch); - - if(bstr == NULL) - return NULL; - - cch = MultiByteToWideChar(CP_ACP, 0, lpsz, -1, bstr, cch); - - if(cch <= 0) - { - SysFreeString(bstr); - return NULL; - } - - return bstr; -} - -} - -namespace -{ - -template T aligndown(const T& X, const U& align) -{ - return X & ~(T(align) - 1); -} - -template T alignup(const T& X, const U& align) -{ - return aligndown(X + (align - 1), align); -} - -/* Convert between bitmap formats */ -uint8 * win32_convert_scanlines(int width, int height, int bitcount, int fromalign, int toalign, const uint8 * data, uint8 ** buffer) -{ - // TBD: profile & optimize the most common cases - assert(width > 0); - assert(height); - assert(bitcount && bitcount <= 32); - assert(fromalign <= toalign); - assert(data); - assert(buffer); - - bool flipped = height < 0; - - if(flipped) - height = - height; - - int bytesperrow = alignup(width * bitcount, 8) / 8; - int fromstride = alignup(bytesperrow, fromalign); - int tostride = alignup(bytesperrow, toalign); - assert(fromstride <= tostride); - - int datasize = tostride * height; - - uint8 * dibits = new uint8[datasize]; - - const uint8 * src = data; - uint8 * dest = dibits; - - const int pad = tostride - fromstride; - - assert(pad < 4); - __assume(pad < 4); - - if(flipped) - { - dest += (height - 1) * tostride; - tostride = - tostride; - } - - for(int i = 0; i < height; ++ i) - { - memcpy(dest, src, fromstride); - memset(dest + fromstride, 0, pad); - src += fromstride; - dest += tostride; - } - - *buffer = dibits; - return dibits; -} - -/* Creates bitmaps */ -HBITMAP win32_create_dib(LONG width, LONG height, WORD bitcount, const BYTE * data) -{ - struct b_ - { - BITMAPINFO bmi; - RGBQUAD colormap[256 - ARRAYSIZE(RTL_FIELD_TYPE(BITMAPINFO, bmiColors))]; - } - b; - - b.bmi.bmiHeader.biSize = sizeof(b.bmi.bmiHeader); - b.bmi.bmiHeader.biWidth = width; - b.bmi.bmiHeader.biHeight = height; - b.bmi.bmiHeader.biPlanes = 1; - b.bmi.bmiHeader.biBitCount = bitcount; - b.bmi.bmiHeader.biCompression = BI_RGB; - b.bmi.bmiHeader.biSizeImage = 0; - b.bmi.bmiHeader.biXPelsPerMeter = 0; - b.bmi.bmiHeader.biYPelsPerMeter = 0; - - if(bitcount > 8) - { - b.bmi.bmiHeader.biClrUsed = 0; - b.bmi.bmiHeader.biClrImportant = 0; - } - else - { - b.bmi.bmiHeader.biClrUsed = 2 << bitcount; - b.bmi.bmiHeader.biClrImportant = 2 << bitcount; - - // TODO: palette - } - - // FIXME: beyond ugly - HDC hdc = CreateCompatibleDC(NULL); - - if(hdc == NULL) - return NULL; - - HBITMAP hbm = CreateDIBitmap(hdc, &b.bmi.bmiHeader, CBM_INIT, data, &b.bmi, DIB_RGB_COLORS); - - if(hbm == NULL) - error("CreateDIBitmap %dx%dx%d failed\n", width, height, bitcount); - - DeleteDC(hdc); - return hbm; -} - -/* Creates brushes */ -HBRUSH win32_create_brush(BRUSH * brush, COLORREF fgcolour) -{ - if(brush == NULL) - return (HBRUSH)GetStockObject(NULL_BRUSH); - - switch(brush->style) - { - case BS_SOLID: - case BS_NULL: - case BS_HATCHED: - case BS_PATTERN: - case BS_PATTERN8X8: - break; - - default: - return NULL; - } - - switch(brush->style) - { - case BS_SOLID: - return CreateSolidBrush(fgcolour); - - case BS_HATCHED: - return CreateHatchBrush(brush->pattern[0], fgcolour); - - case BS_NULL: - return (HBRUSH)GetStockObject(NULL_BRUSH); - - case BS_PATTERN: - case BS_PATTERN8X8: - { - uint16 pattern[8]; - - for(size_t i = 0; i < 8; ++ i) - pattern[i] = brush->pattern[i]; - - HBITMAP hpattern = CreateBitmap(8, 8, 1, 1, pattern); - HBRUSH hbr = CreatePatternBrush(hpattern); - DeleteObject(hpattern); - return hbr; - } - - DEFAULT_UNREACHABLE; - } -} -}; - -/* - "sealed" can improve optimizations by asserting a class cannot be derived - from, optimizing out accesses to the v-table from inside the class -*/ -#if defined(_MSC_VER) && _MSC_VER >= 1400 -#define SEALED_ sealed -#else -#define SEALED_ -#endif - - -/* Class that implements the RDP client GUI */ -class RdpClientUI -{ -public: - // TODO: pass the client settings relevant to the GUI here - HRESULT Initialize(HWND hwndParent) - { - // TODO: create the various windows - // TODO: create display window thread - // TODO: create input thread - return E_FAIL; - } - -public: - static BOOL Startup() - { - WNDCLASSEX wcexUI = { sizeof(wcexUI) }; - WNDCLASSEX wcexConsole = { sizeof(wcexConsole) }; - WNDCLASSEX wcexDisplay = { sizeof(wcexDisplay) }; - WNDCLASSEX wcexInput = { sizeof(wcexInput) }; - - HBRUSH nullBrush = (HBRUSH)GetStockObject(HOLLOW_BRUSH); - - wcexUI.lpfnWndProc = NULL; // TODO - wcexUI.hInstance = GetCurrentModule(); - wcexUI.hCursor = LoadCursor(NULL, IDC_ARROW); - wcexUI.hbrBackground = nullBrush; - wcexUI.lpszClassName = TEXT("MissTosca_UI"); - - wcexConsole.style = CS_VREDRAW | CS_HREDRAW; - wcexConsole.lpfnWndProc = NULL; // TODO - wcexConsole.hInstance = GetCurrentModule(); - wcexConsole.hCursor = LoadCursor(NULL, IDC_ARROW); - wcexConsole.hbrBackground = nullBrush; - wcexConsole.lpszClassName = TEXT("MissTosca_Console"); - - wcexDisplay.style = CS_VREDRAW | CS_HREDRAW; - wcexDisplay.lpfnWndProc = NULL; // TODO - wcexDisplay.hInstance = GetCurrentModule(); - wcexDisplay.hCursor = LoadCursor(NULL, IDC_ARROW); - wcexDisplay.hbrBackground = nullBrush; - wcexDisplay.lpszClassName = TEXT("MissTosca_Display"); - - wcexInput.style = CS_VREDRAW | CS_HREDRAW; - wcexInput.lpfnWndProc = NULL; // TODO - wcexInput.hInstance = GetCurrentModule(); - wcexInput.hCursor = NULL; - wcexInput.hbrBackground = nullBrush; - wcexInput.lpszClassName = TEXT("MissTosca_Input"); - - return - RegisterClassEx(&wcexUI) && - RegisterClassEx(&wcexConsole) && - RegisterClassEx(&wcexDisplay) && - RegisterClassEx(&wcexInput); - } - - static void Shutdown() - { - // TODO - } - - /* - This is the main UI window. It's the direct child of the control - window, it fills its whole extent and it contains the scrollbars. - When activated, it will move keyboard focus to the input window - */ -private: - HWND m_uiWindow; - LONG m_scrollHPos; - LONG m_scrollVPos; - - LRESULT UIWindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam) - { - switch(uMsg) - { - // Keep the keyboard focus on the input window - case WM_ACTIVATE: - switch(LOWORD(wParam)) - { - case WA_INACTIVE: - break; - - case WA_ACTIVE: - case WA_CLICKACTIVE: - if(!HIWORD(wParam)) - SetFocus(m_inputWindow); - } - - return 0; - - // Resized: rearrange children windows, adjust scrollbars - case WM_SIZE: - { - if(IsIconic(m_uiWindow)) - break; - - RECT rcClient; - GetWindowRect(m_uiWindow, &rcClient); - - if(m_smartSizing) - { - // we are not supposed to maintain aspect ratio. Container has to do that - m_consoleX = 0; - m_consoleY = 0; - m_consoleWidth = rcClient.right; - m_consoleHeight = rcClient.bottom; - } - else - { - // center horizontally, no horizontal scrollbar - if(rcClient.right >= m_consoleWidth) - m_consoleX = (m_consoleWidth - rcClient.right) / 2; - - // center vertically, no vertical scrollbar - if(rcClient.bottom >= m_consoleHeight) - m_consoleY = (m_consoleHeight - rcClient.right) / 2; - } - - SCROLLINFO scroll = { sizeof(scroll), SIF_ALL, 0 }; - - // update the horizontal scrollbar - scroll.nMax = m_consoleWidth; - scroll.nPage = rcClient.right; - scroll.nPos = 0 - m_consoleX; - SetScrollInfo(m_uiWindow, SB_HORZ, &scroll, TRUE); - - // update the vertical scrollbar - scroll.nMax = m_consoleHeight; - scroll.nPage = rcClient.bottom; - scroll.nPos = 0 - m_consoleY; - SetScrollInfo(m_uiWindow, SB_VERT, &scroll, TRUE); - - // move/resize the console window - MoveWindow(m_consoleWindow, m_consoleX, m_consoleY, m_consoleWidth, m_consoleHeight, TRUE); - } - - return 0; - - case WM_HSCROLL: - { - SCROLLINFO scroll = { sizeof(scroll), SIF_TRACKPOS }; - GetScrollInfo(m_uiWindow, SB_HORZ, &scroll); - m_consoleX = - scroll.nTrackPos; - MoveWindow(m_consoleWindow, m_consoleX, m_consoleY, m_consoleWidth, m_consoleHeight, TRUE); - } - - return 0; - - case WM_VSCROLL: - { - SCROLLINFO scroll = { sizeof(scroll), SIF_TRACKPOS }; - GetScrollInfo(m_uiWindow, SB_VERT, &scroll); - m_consoleY = - scroll.nTrackPos; - MoveWindow(m_consoleWindow, m_consoleX, m_consoleY, m_consoleWidth, m_consoleHeight, TRUE); - } - - return 0; - - default: - break; - } - - return DefWindowProc(m_uiWindow, uMsg, wParam, lParam); - } - - /* - This is the full-screen title bar. It's displayed at the top of the - main UI window while in full-screen mode, and it contains two toolbars - with the pin, minimize, restore and close buttons - */ - HWND m_fullScreenBarWindow; - - /* - This is the console window. It has the same extent as the display on - the remote computer, or it fills the UI window in smart resizing mode, - and it contains the input and display windows - */ -private: - HWND m_consoleWindow; - LONG m_consoleX; - LONG m_consoleY; - LONG m_consoleWidth; - LONG m_consoleHeight; - bool m_smartSizing; - - LRESULT ConsoleWindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam) - { - switch(uMsg) - { - case WM_SIZE: - { - RECT rcClient; - GetClientRect(m_consoleWindow, &rcClient); - - MoveWindow(m_inputWindow, 0, 0, rcClient.right, rcClient.bottom, TRUE); - MoveWindow(m_displayWindow, 0, 0, rcClient.right, rcClient.bottom, TRUE); - } - - return 0; - - default: - break; - } - - return DefWindowProc(m_consoleWindow, uMsg, wParam, lParam); - } - - /* - This is the display window. It represents the virtual display of the - remote computer. It completely fills its parent, the console window, - and it runs in its own thread for performance reasons - */ -private: - HWND m_displayWindow; - LONG m_displayBufferWidth; - LONG m_displayBufferHeight; - HDC m_displayBuffer; - void * m_displayBufferRaw; - int m_displayBufferSave; - int m_displayBufferBitDepth; - int m_displayBufferByteDepth; - int m_displayBufferStride; - RECT m_displayBufferClip; - CRITICAL_SECTION m_displayBufferMutex; - - LRESULT DisplayWindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam) - { - switch(uMsg) - { - case WM_DESTROY: - PostQuitMessage(0); - return 0; - - case WM_PRINTCLIENT: - if(wParam == 0) - break; - - case WM_PAINT: - { - HDC hdc = (HDC)wParam; - - EnterCriticalSection(&m_displayBufferMutex); - - if(hdc) - { - RECT rc; - GetClientRect(m_displayWindow, &rc); - BitBlt(hdc, 0, 0, rc.right, rc.bottom, m_displayBuffer, 0, 0, SRCCOPY); - } - else - { - PAINTSTRUCT ps; - hdc = BeginPaint(m_displayWindow, &ps); - - if(!m_smartSizing) - { - BitBlt - ( - hdc, - ps.rcPaint.left, - ps.rcPaint.top, - ps.rcPaint.right - ps.rcPaint.left, - ps.rcPaint.bottom - ps.rcPaint.top, - m_displayBuffer, - ps.rcPaint.left, - ps.rcPaint.top, - SRCCOPY - ); - } - else - { - // bleh. There has to be a better way - SetStretchBltMode(hdc, HALFTONE); - - StretchBlt - ( - hdc, - 0, - 0, - m_consoleWidth, - m_consoleHeight, - m_displayBuffer, - 0, - 0, - m_displayBufferWidth, - m_displayBufferHeight, - SRCCOPY - ); - } - - EndPaint(m_displayWindow, &ps); - } - - LeaveCriticalSection(&m_displayBufferMutex); - } - - return 0; - - default: - break; - } - - return DefWindowProc(m_displayWindow, uMsg, wParam, lParam); - } - - /* Screen repainting */ - void Display_RepaintRect(const RECT * lprc) - { - if(m_smartSizing) - return Display_RepaintAll(); - - RECT rcDamage; - IntersectRect(&rcDamage, lprc, &m_displayBufferClip); - InvalidateRect(m_displayWindow, &rcDamage, FALSE); - } - - void Display_RepaintArea(int x, int y, int cx, int cy) - { - if(m_smartSizing) - return Display_RepaintAll(); - - RECT rcDamage; - rcDamage.left = x; - rcDamage.top = y; - rcDamage.right = x + cx; - rcDamage.bottom = y + cy; - Display_RepaintRect(&rcDamage); - } - - void Display_RepaintPolygon(POINT * point, int npoints, int linewidth) - { - if(m_smartSizing) - return Display_RepaintAll(); - - RECT rcDamage; - - rcDamage.left = MAXLONG; - rcDamage.top = MAXLONG; - rcDamage.right = 0; - rcDamage.bottom = 0; - - for(int i = 0; i < npoints; ++ i) - { - if(point[i].x < rcDamage.left) - rcDamage.left = point[i].x; - - if(point[i].y < rcDamage.top) - rcDamage.top = point[i].y; - - if(point[i].x > rcDamage.right) - rcDamage.right = point[i].x; - - if(point[i].y > rcDamage.bottom) - rcDamage.bottom = point[i].y; - } - - InflateRect(&rcDamage, linewidth, linewidth); - Display_RepaintRect(&rcDamage); - } - - void Display_RepaintAll() - { - InvalidateRgn(m_displayWindow, NULL, FALSE); - } - -public: - void Display_SetClip(int x, int y, int cx, int cy) - { - m_displayBufferClip.left = x; - m_displayBufferClip.top = y; - m_displayBufferClip.right = x + cx + 1; - m_displayBufferClip.bottom = y + cy + 1; - - HRGN hrgn = CreateRectRgnIndirect(&m_displayBufferClip); - SelectClipRgn(m_displayBuffer, hrgn); - DeleteObject(hrgn); - } - - void Display_ResetClip() - { - m_displayBufferClip.left = 0; - m_displayBufferClip.top = 0; - m_displayBufferClip.right = m_displayBufferWidth; - m_displayBufferClip.bottom = m_displayBufferHeight; - SelectClipRgn(m_displayBuffer, NULL); - } - - void Display_PaintBitmap(int x, int y, int cx, int cy, int width, int height, uint8 * data) - { - GdiFlush(); - - int fromstride = alignup(width * m_displayBufferByteDepth, 4); - int sizex = cx * m_displayBufferByteDepth; - - const uint8 * src = data; - - uint8 * dst = - (uint8 *)m_displayBufferRaw + - (m_displayBufferHeight - y - cy) * m_displayBufferStride + - x * m_displayBufferByteDepth; - - for(int i = 0; i < cy; ++ i) - { - memcpy(dst, src, sizex); - src += fromstride; - dst += m_displayBufferStride; - } - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_DestBlt(uint8 opcode, int x, int y, int cx, int cy) - { - int dcsave = SaveDC(m_displayBuffer); - SelectObject(m_displayBuffer, GetStockObject(BLACK_BRUSH)); - PatBlt(m_displayBuffer, x, y, cx, cy, MAKELONG(0, opcode)); - RestoreDC(m_displayBuffer, dcsave); - Display_RepaintArea(x, y, cx, cy); - } - - void Display_PatBlt(uint8 opcode, int x, int y, int cx, int cy, BRUSH * brush, int bgcolour, int fgcolour) - { - HBRUSH hbr = win32_create_brush(brush, fgcolour); - - int dcsave = SaveDC(m_displayBuffer); - - SetBkColor(m_displayBuffer, bgcolour); - SetTextColor(m_displayBuffer, fgcolour); - SetBrushOrgEx(m_displayBuffer, brush->xorigin, brush->yorigin, NULL); - SelectObject(m_displayBuffer, hbr); - - PatBlt(m_displayBuffer, x, y, cx, cy, MAKELONG(0, opcode)); - - RestoreDC(m_displayBuffer, dcsave); - - DeleteObject(hbr); - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_ScreenBlt(uint8 opcode, int x, int y, int cx, int cy, int srcx, int srcy) - { - BitBlt(m_displayBuffer, x, y, cx, cy, m_displayBuffer, srcx, srcy, MAKELONG(0, opcode)); - Display_RepaintArea(x, y, cx, cy); - } - - void Display_MemBlt(uint8 opcode, int x, int y, int cx, int cy, HBITMAP src, int srcx, int srcy) - { - HDC hdcSrc = CreateCompatibleDC(m_displayBuffer); - HGDIOBJ hOld = SelectObject(hdcSrc, src); - - BitBlt(m_displayBuffer, x, y, cx, cy, hdcSrc, srcx, srcy, MAKELONG(0, opcode)); - - SelectObject(hdcSrc, hOld); - DeleteDC(hdcSrc); - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_TriBlt(uint8 opcode, int x, int y, int cx, int cy, HBITMAP src, int srcx, int srcy, BRUSH * brush, int bgcolour, int fgcolour) - { - // TODO - HDC hdcSrc = CreateCompatibleDC(m_displayBuffer); - HGDIOBJ hOld = SelectObject(hdcSrc, src); - - //SELECT_BRUSH(brush, bgcolour, fgcolour); - - BitBlt(m_displayBuffer, x, y, cx, cy, hdcSrc, srcx, srcy, MAKELONG(0, opcode)); - - //RESET_BRUSH(); - - SelectObject(hdcSrc, hOld); - DeleteDC(hdcSrc); - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_Line(uint8 opcode, int startx, int starty, int endx, int endy, PEN * pen) - { - HPEN hpen = CreatePen(pen->style, pen->width, pen->colour); - - int dcsave = SaveDC(m_displayBuffer); - - SetROP2(m_displayBuffer, opcode); - SelectObject(m_displayBuffer, hpen); - MoveToEx(m_displayBuffer, startx, starty, NULL); - - LineTo(m_displayBuffer, endx, endy); - - RestoreDC(m_displayBuffer, dcsave); - - DeleteObject(hpen); - - RECT rcDamage; - - if(startx < endx) - { - rcDamage.left = startx; - rcDamage.right = endx; - } - else - { - rcDamage.left = endx; - rcDamage.right = startx; - } - - if(starty < endy) - { - rcDamage.top = starty; - rcDamage.bottom = endy; - } - else - { - rcDamage.top = endy; - rcDamage.bottom = starty; - } - - InflateRect(&rcDamage, pen->width, pen->width); - Display_RepaintRect(&rcDamage); - } - - void Display_Rect(int x, int y, int cx, int cy, int colour) - { - HBRUSH hbr = CreateSolidBrush(colour); - - int dcsave = SaveDC(m_displayBuffer); - - SelectObject(m_displayBuffer, hbr); - SelectObject(m_displayBuffer, GetStockObject(NULL_PEN)); - - Rectangle(m_displayBuffer, x, y, x + cx + 1, y + cy + 1); - - RestoreDC(m_displayBuffer, dcsave); - - DeleteObject(hbr); - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_Polygon(uint8 opcode, uint8 fillmode, POINT * point, int npoints, BRUSH * brush, int bgcolour, int fgcolour) - { - HBRUSH hbr = win32_create_brush(brush, fgcolour); - - int dcsave = SaveDC(m_displayBuffer); - - SetBkColor(m_displayBuffer, bgcolour); - SetTextColor(m_displayBuffer, fgcolour); - SetPolyFillMode(m_displayBuffer, fillmode); - SelectObject(m_displayBuffer, hbr); - - Polygon(m_displayBuffer, point, npoints); - - RestoreDC(m_displayBuffer, dcsave); - - Display_RepaintPolygon(point, npoints, 0); - } - - void Display_Polyline(uint8 opcode, POINT * points, int npoints, PEN * pen) - { - POINT last = points[0]; - - for(int i = 1; i < npoints; ++ i) - { - points[i].x += last.x; - points[i].y += last.y; - last = points[i]; - } - - HPEN hpen = CreatePen(pen->style, pen->width, pen->colour); - - int dcsave = SaveDC(m_displayBuffer); - - SetROP2(m_displayBuffer, opcode); - SelectObject(m_displayBuffer, hpen); - - Polyline(m_displayBuffer, points, npoints); - - RestoreDC(m_displayBuffer, dcsave); - - DeleteObject(hpen); - - Display_RepaintPolygon(points, npoints, pen->width); - } - - void Display_Ellypse(uint8 opcode, uint8 fillmode, int x, int y, int cx, int cy, BRUSH * brush, int bgcolour, int fgcolour) - { - // TODO - - Display_RepaintArea(x, y, cx, cy); - } - - // TBD: optimize text drawing - void Display_DrawGlyph(int mixmode, int x, int y, int cx, int cy, HGLYPH glyph, int srcx, int srcy, int bgcolour, int fgcolour) - { - HBITMAP hbmGlyph = (HBITMAP)glyph; - HDC hdcGlyph = CreateCompatibleDC(m_displayBuffer); - HGDIOBJ hOld = SelectObject(hdcGlyph, hbmGlyph); - - int dcsave = SaveDC(m_displayBuffer); - - switch(mixmode) - { - case MIX_TRANSPARENT: - { - /* - ROP is DSPDxax: - - where the glyph (S) is white, D is set to the foreground color (P) - - where the glyph (S) is black, D is left untouched - - This paints a transparent glyph in the specified color - */ - HBRUSH hbr = CreateSolidBrush(fgcolour); - SelectObject(m_displayBuffer, hbr); - BitBlt(m_displayBuffer, x, y, cx, cy, hdcGlyph, srcx, srcy, MAKELONG(0, 0xe2)); - DeleteObject(hbr); - } - - break; - - case MIX_OPAQUE: - { - /* Curiously, glyphs are inverted (white-on-black) */ - SetBkColor(m_displayBuffer, fgcolour); - SetTextColor(m_displayBuffer, bgcolour); - BitBlt(m_displayBuffer, x, y, cx, cy, hdcGlyph, srcx, srcy, SRCCOPY); - } - - break; - } - - RestoreDC(m_displayBuffer, dcsave); - - SelectObject(hdcGlyph, hOld); - DeleteDC(hdcGlyph); - - Display_RepaintArea(x, y, cx, cy); - } - - void Display_DoGlyph(uint8 font, uint8 flags, int mixmode, int& x, int& y, int bgcolour, int fgcolour, const uint8 * ttext, int& idx) - { - FONTGLYPH * glyph; - - glyph = cache_get_font(/*This*/NULL, font, ttext[idx]); - - if(!(flags & TEXT2_IMPLICIT_X)) - { - int xyoffset = ttext[++ idx]; - - if((xyoffset & 0x80)) - { - if (flags & TEXT2_VERTICAL) - y += ttext[idx + 1] | (ttext[idx + 2] << 8); - else - x += ttext[idx + 1] | (ttext[idx + 2] << 8); - - idx += 2; - } - else - { - if (flags & TEXT2_VERTICAL) - y += xyoffset; - else - x += xyoffset; - } - } - - if(glyph) - { - Display_DrawGlyph - ( - mixmode, - x + (short)glyph->offset, - y + (short)glyph->baseline, - glyph->width, - glyph->height, - glyph->pixmap, - 0, - 0, - bgcolour, - fgcolour - ); - - if(flags & TEXT2_IMPLICIT_X) - x += glyph->width; - } - } - - void Display_DrawText - ( - uint8 font, - uint8 flags, - uint8 opcode, - int mixmode, - int x, - int y, - int clipx, - int clipy, - int clipcx, - int clipcy, - int boxx, - int boxy, - int boxcx, - int boxcy, - BRUSH * brush, - int bgcolour, - int fgcolour, - uint8 * text, - uint8 length - ) - { - int i, j; - DATABLOB *entry; - - HBRUSH hbr = CreateSolidBrush(bgcolour); - HGDIOBJ holdbrush = SelectObject(m_displayBuffer, hbr); - HGDIOBJ holdpen = SelectObject(m_displayBuffer, GetStockObject(NULL_PEN)); - - if (boxcx > 1) - Rectangle(m_displayBuffer, boxx, boxy, boxx + boxcx + 1, boxy + boxcy + 1); - else if (mixmode == MIX_OPAQUE) - Rectangle(m_displayBuffer, clipx, clipy, clipx + clipcx + 1, clipy + clipcy + 1); - - SelectObject(m_displayBuffer, holdpen); - SelectObject(m_displayBuffer, holdbrush); - - DeleteObject(hbr); - - if(boxcx > 1) - Display_RepaintArea(boxx, boxy, boxcx, boxcy); - else - Display_RepaintArea(clipx, clipy, clipcx, clipcy); - - /* Paint text, character by character */ - for (i = 0; i < length;) - { - switch (text[i]) - { - case 0xff: - /* At least two bytes needs to follow */ - if (i + 3 > length) - { - warning("Skipping short 0xff command:"); - for (j = 0; j < length; j++) - fprintf(stderr, "%02x ", text[j]); - fprintf(stderr, "\n"); - i = length = 0; - break; - } - cache_put_text(NULL /* TODO */, text[i + 1], text, text[i + 2]); - i += 3; - length -= i; - /* this will move pointer from start to first character after FF command */ - text = &(text[i]); - i = 0; - break; - - case 0xfe: - /* At least one byte needs to follow */ - if (i + 2 > length) - { - warning("Skipping short 0xfe command:"); - for (j = 0; j < length; j++) - fprintf(stderr, "%02x ", text[j]); - fprintf(stderr, "\n"); - i = length = 0; - break; - } - entry = cache_get_text(/*This*/NULL, text[i + 1]); - if (entry->data != NULL) - { - if ((((uint8 *) (entry->data))[1] == 0) - && (!(flags & TEXT2_IMPLICIT_X)) && (i + 2 < length)) - { - if (flags & TEXT2_VERTICAL) - y += text[i + 2]; - else - x += text[i + 2]; - } - for (j = 0; j < entry->size; j++) - Display_DoGlyph(font, flags, mixmode, x, y, bgcolour, fgcolour, ((uint8 *) (entry->data)), j); - } - if (i + 2 < length) - i += 3; - else - i += 2; - length -= i; - /* this will move pointer from start to first character after FE command */ - text = &(text[i]); - i = 0; - break; - - default: - Display_DoGlyph(font, flags, mixmode, x, y, bgcolour, fgcolour, text, i); - i++; - break; - } - } - } - - void Display_SaveDesktop(uint32 offset, int x, int y, int cx, int cy) - { - GdiFlush(); - - uint8 * data = - (uint8 *)m_displayBufferRaw + - x * m_displayBufferByteDepth + - (m_displayBufferHeight - y - cy) * m_displayBufferStride; - - cache_put_desktop - ( - /*This*/NULL, - offset * m_displayBufferByteDepth, - cx, - cy, - m_displayBufferStride, - m_displayBufferByteDepth, - data - ); - } - - void Display_RestoreDesktop(uint32 offset, int x, int y, int cx, int cy) - { - int fromstride = cx * m_displayBufferByteDepth; - - const uint8 * src = cache_get_desktop(/*This*/NULL, offset, cx, cy, m_displayBufferByteDepth); - - uint8 * dst = - (uint8 *)m_displayBufferRaw + - x * m_displayBufferByteDepth + - (m_displayBufferHeight - y - cy) * m_displayBufferStride; - - GdiFlush(); - - for(int i = 0; i < cy; ++ i) - { - memcpy(dst, src, fromstride); - src += fromstride; - dst += m_displayBufferStride; - } - - Display_RepaintArea(x, y, cx, cy); - } - - - void Display_BeginUpdate() - { - EnterCriticalSection(&m_displayBufferMutex); - m_displayBufferSave = SaveDC(m_displayBuffer); - } - - void Display_EndUpdate() - { - RestoreDC(m_displayBuffer, m_displayBufferSave); - LeaveCriticalSection(&m_displayBufferMutex); - } - - /* - This is the input window. It receives the keyboard and mouse input from - the user, and it's the only window that can receive the keyboard focus. - It completely fills its parent, the console window, and it runs in its - own thread for performance reasons and because of technical reasons - involving keyboard hooks in full-screen mode - */ - HWND m_inputWindow; - HCURSOR m_inputCursor; - - LRESULT InputWindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam) - { - switch(uMsg) - { - case WM_DESTROY: - PostQuitMessage(0); - return 0; - - /* Keyboard stuff */ - // TODO: we need a good way to post output cross-thread - case WM_SYSKEYDOWN: - case WM_KEYDOWN: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_SCANCODE, RDP_KEYPRESS | (lparam & 0x1000000 ? KBD_FLAG_EXT : 0), LOBYTE(HIWORD(lparam)), 0); - break; - - case WM_SYSKEYUP: - case WM_KEYUP: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_SCANCODE, RDP_KEYRELEASE | (lparam & 0x1000000 ? KBD_FLAG_EXT : 0), LOBYTE(HIWORD(lparam)), 0); - break; - - /* Mouse stuff */ - // Cursor shape - case WM_SETCURSOR: - if(LOWORD(lParam) == HTCLIENT) - { - SetCursor(m_inputCursor); - return TRUE; - } - - break; - - // Movement - case WM_MOUSEMOVE: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_MOVE, LOWORD(lparam), HIWORD(lparam)); - break; - - // Buttons - // TODO: X buttons - case WM_LBUTTONDOWN: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON1 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_RBUTTONDOWN: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON2 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_MBUTTONDOWN: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON3 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_LBUTTONUP: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON1, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_RBUTTONUP: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON2, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_MBUTTONUP: - //rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON3, LOWORD(lparam), HIWORD(lparam)); - break; - - // Wheel - case WM_MOUSEWHEEL: - //mstsc_mousewheel(This, (SHORT)HIWORD(wparam), lparam); - break; - } - - return DefWindowProc(m_inputWindow, uMsg, wParam, lParam); - } - -public: -}; - -#pragma warning(push) -#pragma warning(disable: 4584) - -/* The ActiveX control */ -class RdpClient SEALED_: - /* COM basics */ - public IUnknown, - public IDispatch, - - /* ActiveX stuff */ - public IConnectionPointContainer, - public IDataObject, - public IObjectSafety, - public IOleControl, - public IOleInPlaceActiveObject, - public IOleInPlaceObject, - public IOleObject, - public IOleWindow, - public IPersist, - public IPersistPropertyBag, - public IPersistStorage, - public IPersistStreamInit, - public IProvideClassInfo, - public IProvideClassInfo2, - public IQuickActivate, - public IViewObject, - public IViewObject2, - - // NOTE: the original has a vestigial, non-functional implementation of this, which we omit - // ISpecifyPropertyPages - - // Hidden interfaces, not available through QueryInterface - public IConnectionPoint, - - /* RDP client interface */ - public MSTSCLib::IMsRdpClient4, - public MSTSCLib::IMsRdpClientNonScriptable2 - - // NOTE: implemented by inner classes due to requiring distinct IDispatch implementations - // IMsRdpClientAdvancedSettings4 - // IMsRdpClientSecuredSettings -{ -private: - /* An endless amount of COM glue */ - // Reference counting - LONG m_refCount; - -#ifdef _DEBUG - DWORD m_apartmentThreadId; - - bool InsideApartment() const - { - return GetCurrentThreadId() == m_apartmentThreadId; - } -#endif - - // Aggregation support - IUnknown * m_punkOuter; - - class RdpClientInner: public IUnknown - { - private: - RdpClient * Outer() - { - return InnerToOuter(this); - } - - public: - virtual STDMETHODIMP IUnknown::QueryInterface(REFIID riid, void ** ppvObject) - { - return Outer()->queryInterface(riid, ppvObject); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::AddRef() - { - return Outer()->addRef(); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::Release() - { - return Outer()->release(); - } - - } - m_inner; - - // Persistence support - CLSID m_classId; - - // Late binding support - unsigned m_typeLibIndex; - ITypeLib * m_typeLib; - ITypeInfo * m_dispTypeInfo; - - // Event sinks - size_t m_EventSinksCount; - - union - { - MSTSCLib::IMsTscAxEvents * m_EventSinksStatic[1]; - MSTSCLib::IMsTscAxEvents ** m_EventSinks; - }; - - // OLE control glue - HWND m_controlWindow; - IOleClientSite * m_clientSite; - IOleInPlaceSite * m_inPlaceSite; - IOleAdviseHolder * m_adviseHolder; - LONG m_freezeEvents; - bool m_uiActive; - - // UrlMon security - DWORD m_SafetyOptions; - - bool IsSafeForScripting() const - { - return m_SafetyOptions & INTERFACESAFE_FOR_UNTRUSTED_CALLER; - } - - /* Glue to interface to rdesktop-core */ - RdpClientUI * m_clientUI; - RDPCLIENT m_protocolState; - HANDLE m_protocolThread; - HANDLE m_protocolThreadWaitingReconnection; - bool m_reconnectAborted; - bool m_actuallyConnected; - bool m_loggedIn; - - /* Properties */ - // Storage fields - // NOTE: keep sorted by alignment (pointers and handles, integers, enumerations, booleans) - BSTR m_Domain; - BSTR m_UserName; - BSTR m_DisconnectedText; - BSTR m_ConnectingText; - BSTR m_FullScreenTitle; - BSTR m_StartProgram; - BSTR m_WorkDir; - BSTR m_ConnectedStatusText; - BSTR m_ClearTextPassword; // FIXME! dangerous, shouldn't store in cleartext! - BSTR m_RdpdrLocalPrintingDocName; - BSTR m_RdpdrClipCleanTempDirString; - BSTR m_RdpdrClipPasteInfoString; - BSTR m_KeyboardLayoutString; - LPSTR m_Server; - LPSTR m_LoadBalanceInfo; - // TODO: plugin DLLs - HWND m_UIParentWindowHandle; - long m_DesktopWidth; - long m_DesktopHeight; - long m_StartConnected; - long m_ColorDepth; - long m_KeyboardHookMode; - long m_AudioRedirectionMode; - long m_TransportType; - long m_SasSequence; - long m_RDPPort; - long m_HotKeyFullScreen; - long m_HotKeyAltEsc; - long m_HotKeyAltShiftTab; - long m_HotKeyAltSpace; - long m_HotKeyAltTab; - long m_HotKeyCtrlAltDel; - long m_HotKeyCtrlEsc; - long m_orderDrawThresold; - long m_BitmapCacheSize; - long m_BitmapVirtualCacheSize; - long m_NumBitmapCaches; - long m_brushSupportLevel; - long m_minInputSendInterval; - long m_InputEventsAtOnce; - long m_maxEventCount; - long m_keepAliveInternal; - long m_shutdownTimeout; - long m_overallConnectionTimeout; - long m_singleConnectionTimeout; - long m_MinutesToIdleTimeout; - long m_BitmapVirtualCache16BppSize; - long m_BitmapVirtualCache24BppSize; - long m_PerformanceFlags; - long m_MaxReconnectAttempts; - unsigned int m_AuthenticationLevel; - - MSTSCLib::ExtendedDisconnectReasonCode m_ExtendedDisconnectReason; - - bool m_Connected; - bool m_Compress; - bool m_BitmapPersistence; - bool m_allowBackgroundInput; - bool m_ContainerHandledFullScreen; - bool m_DisableRdpdr; - bool m_SecuredSettingsEnabled; - bool m_FullScreen; - bool m_AcceleratorPassthrough; - bool m_ShadowBitmap; - bool m_EncryptionEnabled; - bool m_DedicatedTerminal; - bool m_DisableCtrlAltDel; - bool m_EnableWindowsKey; - bool m_DoubleClickDetect; - bool m_MaximizeShell; - bool m_ScaleBitmapCachesByBpp; - bool m_CachePersistenceActive; - bool m_ConnectToServerConsole; - bool m_SmartSizing; // FIXME: this can be set while the control is connected - bool m_DisplayConnectionBar; - bool m_PinConnectionBar; - bool m_GrabFocusOnConnect; - bool m_RedirectDrives; - bool m_RedirectPrinters; - bool m_RedirectPorts; - bool m_RedirectSmartCards; - bool m_NotifyTSPublicKey; - bool m_CanAutoReconnect; - bool m_EnableAutoReconnect; - bool m_ConnectionBarShowMinimizeButton; - bool m_ConnectionBarShowRestoreButton; - - // Generic getters/setters - HRESULT GetProperty(BSTR& prop, BSTR * retVal) const - { - assert(InsideApartment()); - - if(retVal == NULL) - return E_POINTER; - - *retVal = SysAllocStringLen(prop, SysStringLen(prop)); - - if(*retVal == NULL) - return E_OUTOFMEMORY; - - return S_OK; - } - - HRESULT GetProperty(LPSTR& prop, BSTR * retVal) const - { - assert(InsideApartment()); - - if(retVal == NULL) - return E_POINTER; - - *retVal = LpszToBstr(prop); - - if(*retVal == NULL) - return E_OUTOFMEMORY; - - return S_OK; - } - - HRESULT SetProperty(BSTR& prop, BSTR newValue) - { - assert(InsideApartment()); - - if(m_Connected) - return E_FAIL; - - SysFreeString(prop); - - UINT len = SysStringLen(newValue); - - if(len) - { - // no embedded NULs, please - if(len != lstrlenW(newValue)) - return E_INVALIDARG; - - prop = SysAllocStringLen(newValue, len); - - if(prop == NULL) - return E_OUTOFMEMORY; - } - else - prop = NULL; - - return S_OK; - } - - HRESULT ReplaceProperty(BSTR& prop, BSTR newValue) - { - assert(InsideApartment()); - assert((prop == NULL && newValue == NULL) || prop != newValue); - - SysFreeString(prop); - prop = newValue; - return S_OK; - } - - HRESULT SetProperty(LPSTR& prop, BSTR newValue) - { - assert(InsideApartment()); - - if(m_Connected) - return E_FAIL; - - delete[] prop; - - if(SysStringLen(newValue)) - { - prop = BstrToLpsz(newValue); - - if(prop == NULL) - return E_OUTOFMEMORY; - } - else - prop = NULL; - - return S_OK; - } - - HRESULT ReplaceProperty(LPSTR& prop, LPSTR newValue) - { - assert(InsideApartment()); - assert((prop == NULL && newValue == NULL) || prop != newValue); - - if(prop) - delete[] prop; - - prop = newValue; - return S_OK; - } - - template HRESULT SetProperty(bool& prop, const Type& newValue) - { - assert(InsideApartment()); - - if(m_Connected) - return E_FAIL; - - prop = !!newValue; - return S_OK; - } - - template HRESULT SetProperty(Type& prop, const Type& newValue) - { - assert(InsideApartment()); - - if(m_Connected) - return E_FAIL; - - prop = newValue; - return S_OK; - } - - template HRESULT GetProperty(const bool& prop, Type * retVal) const - { - assert(InsideApartment()); - - if(retVal == NULL) - return E_POINTER; - - *retVal = prop ? VARIANT_TRUE : VARIANT_FALSE; - return S_OK; - } - - template HRESULT GetProperty(const Type& prop, Type * retVal) const - { - assert(InsideApartment()); - - if(retVal == NULL) - return E_POINTER; - - *retVal = prop; - return S_OK; - } - - /* Events */ - MSTSCLib::IMsTscAxEvents ** GetSinks() const - { - if(m_EventSinksCount > 1) - return m_EventSinks; - else - return const_cast(m_EventSinksStatic); - } - - // Event freezing - void UnfreezeEvents() - { - // Just in case - } - - // Generic event riser & helpers - void InvokeSinks(DISPID eventId, VARIANTARG rgvarg[], unsigned int cArgs, VARIANTARG * retval) - { - assert(InsideApartment()); - - DISPPARAMS params; - - params.rgvarg = rgvarg; - params.rgdispidNamedArgs = NULL; - params.cArgs = cArgs; - params.cNamedArgs = 0; - - MSTSCLib::IMsTscAxEvents ** sinks = GetSinks(); - - for(size_t i = 0; i < m_EventSinksCount; ++ i) - sinks[i]->Invoke(eventId, IID_NULL, 0, DISPATCH_METHOD, ¶ms, retval, NULL, NULL); - } - - typedef void (RdpClient::* AsyncEventCallback) - ( - DISPID eventId, - VARIANTARG * rgvarg, - unsigned int cArgs, - VARIANTARG * retVal - ); - - void CleanupEventArgumentsCallback - ( - DISPID eventId, - VARIANTARG * rgvarg, - unsigned int cArgs, - VARIANTARG * retVal - ) - { - assert((rgvarg == NULL) == (cArgs == 0)); - - for(unsigned int i = 0; i < cArgs; ++ i) - VariantClear(&rgvarg[i]); - - if(retVal) - VariantClear(retVal); - } - - // synchronous call from inside the apartment that owns the object - void FireEventInsideApartment - ( - DISPID eventId, - VARIANTARG * rgvarg = NULL, - unsigned int cArgs = 0, - VARIANTARG * retval = NULL, - AsyncEventCallback callback = NULL - ) - { - assert(InsideApartment()); - - if(retval == NULL && callback) - { - VARIANTARG localRetval = { }; - retval = &localRetval; - } - - InvokeSinks(eventId, rgvarg, cArgs, retval); - - if(callback) - (this->*callback)(eventId, rgvarg, cArgs, retval); - } - - struct EventArguments - { - DISPID eventId; - VARIANTARG * rgvarg; - unsigned int cArgs; - VARIANTARG * retval; - AsyncEventCallback callback; - }; - - struct RedirectArguments - { - uint32 flags; - uint32 server_len; - wchar_t * server; - uint32 cookie_len; - char * cookie; - uint32 username_len; - wchar_t * username; - uint32 domain_len; - wchar_t * domain; - uint32 password_len; - wchar_t * password; - }; - - enum - { - RDPC_WM_ = WM_USER, - RDPC_WM_SYNC_EVENT, - RDPC_WM_ASYNC_EVENT, - RDPC_WM_DISCONNECT, - RDPC_WM_REQUEST_CLOSE, - RDPC_WM_REDIRECT, - }; - - static VOID CALLBACK DisconnectAPC(ULONG_PTR) - { - // no need to do anything. The interruption will be enough - } - - bool HandleEvent(UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& result) - { - result = 0; - - switch(uMsg) - { - /* Regular event to be dispatched to the container's sink */ - case RDPC_WM_SYNC_EVENT: - assert(InSendMessage()); - - case RDPC_WM_ASYNC_EVENT: - { - const EventArguments * eventArgs = reinterpret_cast(lParam); - assert(eventArgs); - - FireEventInsideApartment - ( - eventArgs->eventId, - eventArgs->rgvarg, - eventArgs->cArgs, - eventArgs->retval, - eventArgs->callback - ); - - if(uMsg == RDPC_WM_ASYNC_EVENT) - delete eventArgs; - } - - break; - - /* The protocol thread is about to die: prepare for disconnection */ - case RDPC_WM_DISCONNECT: - { - assert(m_Connected); - assert(InsideApartment()); - assert(InSendMessage()); - - // Unblock the protocol thread and wait for it to terminate - ReplyMessage(0); - JoinProtocolThread(); - - // Finish disconnecting - PerformDisconnect(static_cast(wParam)); - } - - break; - - case RDPC_WM_REDIRECT: - { - assert(InSendMessage()); - assert(lParam); - assert(m_Connected); - assert(m_protocolState.redirect); - - RedirectArguments * redirectArgs = reinterpret_cast(lParam); - - // BUGBUG: this is extremely messy and more prone to out-of-memory than it should be - LPSTR lpszNewServer = NULL; - LPSTR lpszNewCookie = NULL; - BSTR strNewUsername = NULL; - BSTR strNewDomain = NULL; - BSTR strNewPassword = NULL; - HRESULT hr = S_OK; - - for(;;) - { - // Allocate the new properties - hr = E_OUTOFMEMORY; - - // FIXME: convert the hostname to Punycode, not the ANSI codepage - lpszNewServer = AllocLpsz(redirectArgs->server, redirectArgs->server_len / sizeof(OLECHAR)); - - if(lpszNewServer == NULL && redirectArgs->server_len) - break; - - lpszNewCookie = AllocLpsz(redirectArgs->cookie, redirectArgs->cookie_len); - - if(lpszNewCookie == NULL && redirectArgs->cookie_len) - break; - - strNewUsername = SysAllocStringLen(redirectArgs->username, redirectArgs->username_len / sizeof(OLECHAR)); - - if(strNewUsername == NULL && redirectArgs->username_len) - break; - - strNewDomain = SysAllocStringLen(redirectArgs->domain, redirectArgs->domain_len / sizeof(OLECHAR)); - - if(strNewDomain == NULL && redirectArgs->domain_len) - break; - - strNewPassword = SysAllocStringLen(redirectArgs->password, redirectArgs->password_len / sizeof(OLECHAR)); - - if(strNewPassword == NULL && redirectArgs->password_len) - break; - - hr = S_OK; - break; - } - - // Success - if(SUCCEEDED(hr)) - { - // set the new properties - ReplaceProperty(m_Server, lpszNewServer); - ReplaceProperty(m_LoadBalanceInfo, lpszNewCookie); - ReplaceProperty(m_UserName, strNewUsername); - ReplaceProperty(m_Domain, strNewDomain); - ReplaceProperty(m_ClearTextPassword, strNewPassword); - } - // Failure - else - { - // free the buffers - FreeLpsz(lpszNewServer); - FreeLpsz(lpszNewCookie); - SysFreeString(strNewUsername); - SysFreeString(strNewDomain); - SysFreeString(strNewPassword); - - // signal the error - m_protocolState.disconnect_reason = 262; - m_protocolState.redirect = False; - result = -1; - } - } - - break; - - // BUGBUG: this could potentially disconnect an unrelated connection established later... - case RDPC_WM_REQUEST_CLOSE: - { - assert(!InSendMessage()); - - if(m_Connected) - { - // Ask confirmation to the container in case we are logged in - if(m_loggedIn && !FireConfirmClose()) - break; - - // For reentrancy (OnConfirmClose could deviously call Disconnect) - if(m_protocolThread == NULL) - break; - - // Terminate the protocol thread. It will fire the Disconnected event on exit - TerminateProtocolThread(); - } - } - - break; - - default: - return false; - } - - // If the calling thread is blocked, unblock it ASAP - if(InSendMessage()) - ReplyMessage(result); - - return true; - } - - // synchronous call from outside the apartment - void FireEventOutsideApartment - ( - DISPID eventId, - VARIANTARG * rgvarg = NULL, - unsigned int cArgs = 0, - VARIANTARG * retval = NULL, - AsyncEventCallback callback = NULL - ) - { - assert(!InsideApartment()); - EventArguments syncEvent = { eventId, rgvarg, cArgs, retval, callback }; - SendMessage(m_controlWindow, RDPC_WM_SYNC_EVENT, 0, reinterpret_cast(&syncEvent)); - } - - // asynchronous call from outside the apartment - HRESULT FireEventOutsideApartmentAsync - ( - DISPID eventId, - VARIANTARG * rgvarg = NULL, - unsigned int cArgs = 0, - VARIANTARG * retval = NULL, - AsyncEventCallback callback = NULL - ) - { - assert(!InsideApartment()); - - EventArguments * asyncEvent = new EventArguments(); - - if(asyncEvent == NULL) - return E_OUTOFMEMORY; - - asyncEvent->eventId = eventId; - asyncEvent->rgvarg = rgvarg; - asyncEvent->cArgs = cArgs; - asyncEvent->retval = NULL; - - if(!PostMessage(m_controlWindow, RDPC_WM_ASYNC_EVENT, 0, reinterpret_cast(asyncEvent))) - { - delete asyncEvent; - return HRESULT_FROM_WIN32(GetLastError()); - } - - return S_OK; - } - - // Specific events - void FireConnecting() - { - // Source: protocol - FireEventOutsideApartment(1); - } - - void FireConnected() - { - // Source: protocol - FireEventOutsideApartment(2); - } - - void FireLoginComplete() - { - // Source: protocol - FireEventOutsideApartment(3); - } - - void FireDisconnected(long reason) - { - // Source: protocol. Special handling - SendMessage(m_controlWindow, RDPC_WM_DISCONNECT, reason, 0); - } - - void FireEnterFullScreenMode() - { - // Source: UI window - FireEventInsideApartment(5); - } - - void FireLeaveFullScreenMode() - { - // Source: UI window - FireEventInsideApartment(6); - } - - HRESULT FireChannelReceivedData(char (& chanName)[CHANNEL_NAME_LEN + 1], void * chanData, unsigned int chanDataSize) - { - // BUGBUG: what to do when we run out of memory? - - OLECHAR wchanName[ARRAYSIZE(chanName)]; - std::copy(chanName + 0, chanName + ARRAYSIZE(chanName), wchanName); - - BSTR bstrChanName = SysAllocString(wchanName); - - if(bstrChanName == NULL) - return E_OUTOFMEMORY; - - BSTR bstrChanData = SysAllocStringByteLen(NULL, chanDataSize); - - if(bstrChanData == NULL) - { - SysFreeString(bstrChanName); - return E_OUTOFMEMORY; - } - - CopyMemory(bstrChanData, chanData, chanDataSize); - - VARIANTARG args[2] = { }; - - args[1].vt = VT_BSTR; - args[1].bstrVal = bstrChanName; - - args[0].vt = VT_BSTR; - args[0].bstrVal = bstrChanData; - - // Source: protocol - HRESULT hr = FireEventOutsideApartmentAsync(7, args, ARRAYSIZE(args), NULL, &RdpClient::CleanupEventArgumentsCallback); - - if(FAILED(hr)) - CleanupEventArgumentsCallback(7, args, ARRAYSIZE(args), NULL); - - return hr; - } - - void FireRequestGoFullScreen() - { - // Source: UI window - FireEventInsideApartment(8); - } - - void FireRequestLeaveFullScreen() - { - // Source: UI window - FireEventInsideApartment(9); - } - - void FireFatalError(long errorCode) - { - VARIANTARG arg = { }; - - arg.vt = VT_I4; - arg.lVal = errorCode; - - // Source: protocol - FireEventOutsideApartment(10, &arg, 1); - } - - void FireFatalErrorFromApartment(long errorCode) - { - VARIANTARG arg = { }; - - arg.vt = VT_I4; - arg.lVal = errorCode; - - // Source: control - FireEventInsideApartment(10, &arg, 1); - } - - void FireWarning(long warningCode) - { - VARIANTARG arg = { }; - - arg.vt = VT_I4; - arg.lVal = warningCode; - - // Source: protocol - FireEventOutsideApartment(11, &arg, 1); - } - - void FireRemoteDesktopSizeChange(long width, long height) - { - VARIANTARG args[2] = { }; - - args[1].vt = VT_I4; - args[1].lVal = width; - - args[0].vt = VT_I4; - args[0].lVal = height; - - // Source: UI window - FireEventInsideApartment(12, args, ARRAYSIZE(args)); - } - - void FireIdleTimeoutNotification() - { - // Source: input thread - FireEventOutsideApartment(13); - } - - void FireRequestContainerMinimize() - { - // Source: UI window - FireEventInsideApartment(14); - } - - bool FireConfirmClose() - { - VARIANTARG retval = { }; - VARIANT_BOOL allowClose = VARIANT_TRUE; - - retval.vt = VT_BYREF | VT_BOOL; - retval.pboolVal = &allowClose; - - // Source: control - FireEventInsideApartment(15, NULL, 0, &retval); - - return allowClose != VARIANT_FALSE; - } - - HRESULT FireReceivedTSPublicKey(void * publicKey, unsigned int publicKeyLength) - { - assert(m_Connected); - - if(!m_NotifyTSPublicKey) - return S_OK; - - BSTR bstrPublicKey = SysAllocStringByteLen(NULL, publicKeyLength); - - if(bstrPublicKey == NULL) - return E_OUTOFMEMORY; - - CopyMemory(bstrPublicKey, publicKey, publicKeyLength); - - VARIANT_BOOL continueLogon = VARIANT_TRUE; - VARIANTARG arg = { }; - VARIANTARG retval = { }; - - arg.vt = VT_BSTR; - arg.bstrVal = bstrPublicKey; - - retval.vt = VT_BYREF | VT_BOOL; - retval.pboolVal = &continueLogon; - - // Source: protocol - FireEventOutsideApartment(16, &arg, 1, &retval); - - return continueLogon ? S_OK : S_FALSE; - } - - LONG FireAutoReconnecting(long disconnectReason, long attemptCount) - { - LONG continueStatus = MSTSCLib::autoReconnectContinueAutomatic; - VARIANTARG args[2] = { }; - VARIANTARG retval = { }; - - args[1].vt = VT_I4; - args[1].lVal = disconnectReason; - - args[0].vt = VT_I4; - args[0].lVal = attemptCount; - - retval.vt = VT_BYREF | VT_I4; - retval.plVal = &continueStatus; - - // Source: protocol - FireEventOutsideApartment(17, args, ARRAYSIZE(args), &retval); - - return continueStatus; - } - - void FireAuthenticationWarningDisplayed() - { - // Source: protocol - FireEventOutsideApartment(18); - } - - void FireAuthenticationWarningDismissed() - { - // Source: protocol - FireEventOutsideApartment(19); - } - - /* Actual IUnknown implementation */ - HRESULT queryInterface(REFIID riid, void ** ppvObject) - { - IUnknown * pvObject = NULL; - - using namespace MSTSCLib; - - if(riid == IID_IUnknown) - pvObject = static_cast(&m_inner); - else if(riid == IID_IConnectionPointContainer) - pvObject = static_cast(this); - else if(riid == IID_IDataObject) - pvObject = static_cast(this); - else if(riid == IID_IObjectSafety) - pvObject = static_cast(this); - else if(riid == IID_IOleControl) - pvObject = static_cast(this); - else if(riid == IID_IOleInPlaceActiveObject) - pvObject = static_cast(this); - else if(riid == IID_IOleInPlaceObject) - pvObject = static_cast(this); - else if(riid == IID_IOleObject) - pvObject = static_cast(this); - else if(riid == IID_IOleWindow) - pvObject = static_cast(this); - else if(riid == IID_IPersist) - pvObject = static_cast(this); - else if(riid == IID_IPersistPropertyBag) - pvObject = static_cast(this); - else if(riid == IID_IPersistStorage) - pvObject = static_cast(this); - else if(riid == IID_IPersistStreamInit) - pvObject = static_cast(this); - else if(riid == IID_IQuickActivate) - pvObject = static_cast(this); - else if(riid == IID_IViewObject) - pvObject = static_cast(this); - else if(riid == IID_IViewObject2) - pvObject = static_cast(this); - else if(riid == IID_IMsTscAx || riid == MSTSCLib_Redist::IID_IMsTscAx) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClient) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClient2) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClient3) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClient4) - pvObject = static_cast(this); - else if(riid == IID_IMsTscNonScriptable) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClientNonScriptable) - pvObject = static_cast(this); - else if(riid == IID_IMsRdpClientNonScriptable2) - pvObject = static_cast(this); - - *ppvObject = pvObject; - - if(pvObject) - { - pvObject->AddRef(); - return S_OK; - } - - return E_NOINTERFACE; - } - - ULONG addRef() - { - return InterlockedIncrement(&m_refCount); - } - - ULONG release() - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - /* Constructor */ - RdpClient(REFCLSID classId, unsigned libIndex, IUnknown * punkOuter): - // COM/OLE internals - m_refCount(0), - m_punkOuter(punkOuter), - m_classId(classId), - m_typeLibIndex(libIndex), - m_typeLib(), - m_dispTypeInfo(), - m_controlWindow(NULL), - m_clientSite(), - m_inPlaceSite(), - m_adviseHolder(), - m_freezeEvents(0), - m_uiActive(false), - m_SafetyOptions(), - -#ifdef _DEBUG - m_apartmentThreadId(GetCurrentThreadId()), -#endif - - // rdesktop-core interface - m_protocolState(), - m_protocolThread(), - - // Properties - m_Server(), - m_Domain(), - m_UserName(), - m_DisconnectedText(), - m_ConnectingText(), - m_FullScreenTitle(), - m_StartProgram(), - m_WorkDir(), - m_LoadBalanceInfo(), - m_ConnectedStatusText(), - m_ClearTextPassword(), - m_RdpdrLocalPrintingDocName(), - m_RdpdrClipCleanTempDirString(), - m_RdpdrClipPasteInfoString(), - m_UIParentWindowHandle(), - m_DesktopWidth(), - m_DesktopHeight(), - m_StartConnected(), - m_ColorDepth(16), - m_KeyboardHookMode(2), - m_AudioRedirectionMode(0), - m_TransportType(1), // BUGBUG: ??? what's this ??? - m_SasSequence(0xAA03), // BUGBUG: ??? what's this ??? - m_RDPPort(3389), - m_HotKeyFullScreen(VK_CANCEL), - m_HotKeyAltEsc(VK_INSERT), - m_HotKeyAltShiftTab(VK_NEXT), - m_HotKeyAltSpace(VK_DELETE), - m_HotKeyAltTab(VK_PRIOR), - m_HotKeyCtrlAltDel(VK_END), - m_HotKeyCtrlEsc(VK_HOME), - m_orderDrawThresold(0), - m_BitmapCacheSize(1500), - m_BitmapVirtualCacheSize(10), - m_brushSupportLevel(), - m_minInputSendInterval(), - m_InputEventsAtOnce(), - m_maxEventCount(), - m_keepAliveInternal(0), - m_shutdownTimeout(10), - m_overallConnectionTimeout(120), - m_singleConnectionTimeout(30), - m_MinutesToIdleTimeout(0), - m_BitmapVirtualCache16BppSize(20), - m_BitmapVirtualCache24BppSize(30), - m_PerformanceFlags(), - m_MaxReconnectAttempts(20), - m_AuthenticationLevel(0), - m_ExtendedDisconnectReason(MSTSCLib::exDiscReasonNoInfo), - m_Connected(false), - m_Compress(true), - m_BitmapPersistence(true), - m_allowBackgroundInput(false), - m_ContainerHandledFullScreen(false), - m_DisableRdpdr(false), - m_SecuredSettingsEnabled(true), - m_FullScreen(false), - m_AcceleratorPassthrough(true), - m_ShadowBitmap(true), - m_EncryptionEnabled(true), - m_DedicatedTerminal(false), - m_DisableCtrlAltDel(true), - m_EnableWindowsKey(true), - m_DoubleClickDetect(false), - m_MaximizeShell(true), - m_ScaleBitmapCachesByBpp(false), - m_CachePersistenceActive(false), - m_ConnectToServerConsole(false), - m_SmartSizing(false), - m_DisplayConnectionBar(true), - m_PinConnectionBar(true), - m_GrabFocusOnConnect(true), - m_RedirectDrives(false), - m_RedirectPrinters(false), - m_RedirectPorts(false), - m_RedirectSmartCards(false), - m_NotifyTSPublicKey(false), - m_CanAutoReconnect(false), - m_EnableAutoReconnect(true), - m_ConnectionBarShowMinimizeButton(true), - m_ConnectionBarShowRestoreButton(true) - { - if(m_punkOuter == NULL) - m_punkOuter = &m_inner; - } - - /* Destructor */ - ~RdpClient() - { - assert(m_refCount == 0); - - if(m_Connected) - { - // Terminate the protocol thread - TerminateProtocolThread(); - - // Dispatch the RDPC_WM_DISCONNECT message sent by the dying thread - MSG msg; - PeekMessage(&msg, m_controlWindow, 0, 0, PM_NOREMOVE); - - assert(!m_Connected); - } - - DestroyControlWindow(); - - if(m_typeLib) - m_typeLib->Release(); - - if(m_dispTypeInfo) - m_dispTypeInfo->Release(); - - MSTSCLib::IMsTscAxEvents ** sinks = GetSinks(); - - for(size_t i = 0; i < m_EventSinksCount; ++ i) - sinks[i]->Release(); - - if(m_EventSinksCount > 1) - delete[] m_EventSinks; - - if(m_clientSite) - m_clientSite->Release(); - - if(m_inPlaceSite) - m_inPlaceSite->Release(); - - if(m_adviseHolder) - m_adviseHolder->Release(); - - SysFreeString(m_Domain); - SysFreeString(m_UserName); - SysFreeString(m_DisconnectedText); - SysFreeString(m_DisconnectedText); - SysFreeString(m_FullScreenTitle); - SysFreeString(m_StartProgram); - SysFreeString(m_WorkDir); - SysFreeString(m_ConnectedStatusText); - SysFreeString(m_ClearTextPassword); - SysFreeString(m_RdpdrLocalPrintingDocName); - SysFreeString(m_RdpdrClipCleanTempDirString); - SysFreeString(m_RdpdrClipPasteInfoString); - - FreeLpsz(m_LoadBalanceInfo); - FreeLpsz(m_Server); - - unlockServer(); - } - - /* Advanced settings wrapper */ - friend class AdvancedSettings; - - class AdvancedSettings SEALED_: public MSTSCLib::IMsRdpClientAdvancedSettings4 - { - private: - RdpClient * Outer() - { - return InnerToOuter(this); - } - - const RdpClient * Outer() const - { - return InnerToOuter(this); - } - - /* IDispatch type information */ - ITypeInfo * m_dispTypeInfo; - - HRESULT LoadDispTypeInfo() - { - if(m_dispTypeInfo) - return S_OK; - - HRESULT hr = Outer()->LoadTypeLibrary(); - - if(FAILED(hr)) - return hr; - - assert(MSTSCLib::IID_IMsRdpClientAdvancedSettings4 == MSTSCLib_Redist::IID_IMsRdpClientAdvancedSettings4); - - hr = Outer()->m_typeLib->GetTypeInfoOfGuid(MSTSCLib::IID_IMsRdpClientAdvancedSettings4, &m_dispTypeInfo); - - if(FAILED(hr)) - return hr; - - assert(m_dispTypeInfo); - return S_OK; - } - - HRESULT AcquireDispTypeInfo(ITypeInfo ** ppTI) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - m_dispTypeInfo->AddRef(); - *ppTI = m_dispTypeInfo; - return S_OK; - } - - public: - ~AdvancedSettings() - { - if(m_dispTypeInfo) - m_dispTypeInfo->Release(); - } - - /* IUnknown */ - virtual STDMETHODIMP IUnknown::QueryInterface(REFIID riid, void ** ppvObject) - { - using namespace MSTSCLib; - - if - ( - riid == IID_IUnknown || - riid == IID_IDispatch || - riid == IID_IMsTscAdvancedSettings || - riid == IID_IMsRdpClientAdvancedSettings || - riid == IID_IMsRdpClientAdvancedSettings2 || - riid == IID_IMsRdpClientAdvancedSettings3 || - riid == IID_IMsRdpClientAdvancedSettings4 - ) - { - *ppvObject = this; - Outer()->addRef(); - return S_OK; - } - else - { - *ppvObject = NULL; - return E_NOINTERFACE; - } - } - - virtual STDMETHODIMP_(ULONG) IUnknown::AddRef() - { - return Outer()->addRef(); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::Release() - { - return Outer()->release(); - } - - /* IDispatch */ - virtual STDMETHODIMP IDispatch::GetTypeInfoCount(UINT * pctinfo) - { - *pctinfo = 1; - return S_OK; - } - - virtual STDMETHODIMP IDispatch::GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo ** ppTInfo) - { - if(iTInfo != 0) - return DISP_E_BADINDEX; - - return AcquireDispTypeInfo(ppTInfo); - } - - virtual STDMETHODIMP IDispatch::GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - return m_dispTypeInfo->GetIDsOfNames(rgszNames, cNames, rgDispId); - } - - virtual STDMETHODIMP IDispatch::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS * pDispParams, VARIANT * pVarResult, EXCEPINFO * pExcepInfo, UINT * puArgErr) - { - return m_dispTypeInfo->Invoke - ( - static_cast(this), - dispIdMember, - wFlags, - pDispParams, - pVarResult, - pExcepInfo, - puArgErr - ); - } - - /* IMsTscAdvancedSettings */ - virtual STDMETHODIMP IMsTscAdvancedSettings::put_Compress(long pcompress) - { - return Outer()->SetProperty(Outer()->m_Compress, pcompress); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_Compress(long * pcompress) const - { - return Outer()->GetProperty(Outer()->m_Compress, pcompress); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_BitmapPeristence(long pbitmapPeristence) - { - return Outer()->SetProperty(Outer()->m_BitmapPersistence, pbitmapPeristence); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_BitmapPeristence(long * pbitmapPeristence) const - { - return Outer()->GetProperty(Outer()->m_BitmapPersistence, pbitmapPeristence); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_allowBackgroundInput(long pallowBackgroundInput) - { - if(Outer()->IsSafeForScripting()) - return S_FALSE; - - return Outer()->SetProperty(Outer()->m_allowBackgroundInput, pallowBackgroundInput); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_allowBackgroundInput(long * pallowBackgroundInput) const - { - return Outer()->GetProperty(Outer()->m_allowBackgroundInput, pallowBackgroundInput); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_KeyBoardLayoutStr(BSTR rhs) - { - return Outer()->SetProperty(Outer()->m_KeyboardLayoutString, rhs); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_PluginDlls(BSTR rhs) - { - // TODO: split rhs into an array - - // Control marked safe for scripting: only allow filenames - if(Outer()->IsSafeForScripting()) - { - // TODO: validate entries - // TODO: replace each entry with a full path based on the Virtual Channel DLL path - } - - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_IconFile(BSTR rhs) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_IconIndex(long rhs) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_ContainerHandledFullScreen(long pContainerHandledFullScreen) - { - if(Outer()->IsSafeForScripting()) - return S_FALSE; - - return Outer()->SetProperty(Outer()->m_ContainerHandledFullScreen, pContainerHandledFullScreen); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_ContainerHandledFullScreen(long * pContainerHandledFullScreen) const - { - return Outer()->GetProperty(Outer()->m_ContainerHandledFullScreen, pContainerHandledFullScreen); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::put_DisableRdpdr(long pDisableRdpdr) - { - return Outer()->SetProperty(Outer()->m_DisableRdpdr, pDisableRdpdr); - } - - virtual STDMETHODIMP IMsTscAdvancedSettings::get_DisableRdpdr(long * pDisableRdpdr) const - { - return Outer()->GetProperty(Outer()->m_DisableRdpdr, pDisableRdpdr); - } - - /* IMsRdpClientAdvancedSettings */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SmoothScroll(long psmoothScroll) - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SmoothScroll(long * psmoothScroll) const - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_AcceleratorPassthrough(long pacceleratorPassthrough) - { - return Outer()->SetProperty(Outer()->m_AcceleratorPassthrough, pacceleratorPassthrough); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_AcceleratorPassthrough(long * pacceleratorPassthrough) const - { - return Outer()->GetProperty(Outer()->m_AcceleratorPassthrough, pacceleratorPassthrough); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ShadowBitmap(long pshadowBitmap) - { - return Outer()->SetProperty(Outer()->m_ShadowBitmap, pshadowBitmap); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ShadowBitmap(long * pshadowBitmap) const - { - return Outer()->GetProperty(Outer()->m_ShadowBitmap, pshadowBitmap); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_TransportType(long ptransportType) - { - // Reserved - return Outer()->SetProperty(Outer()->m_TransportType, ptransportType); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_TransportType(long * ptransportType) const - { - // Reserved - return Outer()->GetProperty(Outer()->m_TransportType, ptransportType); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SasSequence(long psasSequence) - { - // Reserved - return Outer()->SetProperty(Outer()->m_SasSequence, psasSequence); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SasSequence(long * psasSequence) const - { - // Reserved - return Outer()->GetProperty(Outer()->m_SasSequence, psasSequence); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EncryptionEnabled(long pencryptionEnabled) - { - return Outer()->SetProperty(Outer()->m_EncryptionEnabled, pencryptionEnabled); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EncryptionEnabled(long * pencryptionEnabled) const - { - return Outer()->GetProperty(Outer()->m_EncryptionEnabled, pencryptionEnabled); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DedicatedTerminal(long pdedicatedTerminal) - { - return Outer()->SetProperty(Outer()->m_DedicatedTerminal, pdedicatedTerminal); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DedicatedTerminal(long * pdedicatedTerminal) const - { - return Outer()->GetProperty(Outer()->m_DedicatedTerminal, pdedicatedTerminal); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RDPPort(long prdpPort) - { - if(prdpPort == 0 || prdpPort > 65535) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_RDPPort, prdpPort); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RDPPort(long * prdpPort) const - { - return Outer()->GetProperty(Outer()->m_RDPPort, prdpPort); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EnableMouse(long penableMouse) - { - return S_FALSE; // TBD? implement? - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EnableMouse(long * penableMouse) const - { - return S_FALSE; // TBD? implement? - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DisableCtrlAltDel(long pdisableCtrlAltDel) - { - return Outer()->SetProperty(Outer()->m_DisableCtrlAltDel, pdisableCtrlAltDel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DisableCtrlAltDel(long * pdisableCtrlAltDel) const - { - return Outer()->GetProperty(Outer()->m_DisableCtrlAltDel, pdisableCtrlAltDel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_EnableWindowsKey(long penableWindowsKey) - { - return Outer()->SetProperty(Outer()->m_EnableWindowsKey, penableWindowsKey); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_EnableWindowsKey(long * penableWindowsKey) const - { - return Outer()->GetProperty(Outer()->m_EnableWindowsKey, penableWindowsKey); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DoubleClickDetect(long pdoubleClickDetect) - { - return Outer()->SetProperty(Outer()->m_DoubleClickDetect, pdoubleClickDetect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DoubleClickDetect(long * pdoubleClickDetect) const - { - return Outer()->GetProperty(Outer()->m_DoubleClickDetect, pdoubleClickDetect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_MaximizeShell(long pmaximizeShell) - { - return Outer()->SetProperty(Outer()->m_MaximizeShell, pmaximizeShell); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_MaximizeShell(long * pmaximizeShell) const - { - return Outer()->GetProperty(Outer()->m_MaximizeShell, pmaximizeShell); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyFullScreen(long photKeyFullScreen) - { - return Outer()->SetProperty(Outer()->m_HotKeyFullScreen, photKeyFullScreen); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyFullScreen(long * photKeyFullScreen) const - { - return Outer()->GetProperty(Outer()->m_HotKeyFullScreen, photKeyFullScreen); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyCtrlEsc(long photKeyCtrlEsc) - { - return Outer()->SetProperty(Outer()->m_HotKeyCtrlEsc, photKeyCtrlEsc); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyCtrlEsc(long * photKeyCtrlEsc) const - { - return Outer()->GetProperty(Outer()->m_HotKeyCtrlEsc, photKeyCtrlEsc); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltEsc(long photKeyAltEsc) - { - return Outer()->SetProperty(Outer()->m_HotKeyAltEsc, photKeyAltEsc); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltEsc(long * photKeyAltEsc) const - { - return Outer()->GetProperty(Outer()->m_HotKeyAltEsc, photKeyAltEsc); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltTab(long photKeyAltTab) - { - return Outer()->SetProperty(Outer()->m_HotKeyAltTab, photKeyAltTab); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltTab(long * photKeyAltTab) const - { - return Outer()->GetProperty(Outer()->m_HotKeyAltTab, photKeyAltTab); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltShiftTab(long photKeyAltShiftTab) - { - return Outer()->SetProperty(Outer()->m_HotKeyAltShiftTab, photKeyAltShiftTab); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltShiftTab(long * photKeyAltShiftTab) const - { - return Outer()->GetProperty(Outer()->m_HotKeyAltShiftTab, photKeyAltShiftTab); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyAltSpace(long photKeyAltSpace) - { - return Outer()->SetProperty(Outer()->m_HotKeyAltSpace, photKeyAltSpace); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyAltSpace(long * photKeyAltSpace) const - { - return Outer()->GetProperty(Outer()->m_HotKeyAltSpace, photKeyAltSpace); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_HotKeyCtrlAltDel(long photKeyCtrlAltDel) - { - return Outer()->SetProperty(Outer()->m_HotKeyCtrlAltDel, photKeyCtrlAltDel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_HotKeyCtrlAltDel(long * photKeyCtrlAltDel) const - { - return Outer()->GetProperty(Outer()->m_HotKeyCtrlAltDel, photKeyCtrlAltDel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_orderDrawThreshold(long porderDrawThreshold) - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_orderDrawThreshold(long * porderDrawThreshold) const - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapCacheSize(long pbitmapCacheSize) - { - // NOTE: the upper bound of "32" for a field with a default value of 1500 seems to be a bug - if(pbitmapCacheSize < 0 || pbitmapCacheSize > 32) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_BitmapCacheSize, pbitmapCacheSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapCacheSize(long * pbitmapCacheSize) const - { - return Outer()->GetProperty(Outer()->m_BitmapCacheSize, pbitmapCacheSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCacheSize(long pbitmapVirtualCacheSize) - { - if(pbitmapVirtualCacheSize < 0 || pbitmapVirtualCacheSize > 32) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_BitmapVirtualCacheSize, pbitmapVirtualCacheSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCacheSize(long * pbitmapVirtualCacheSize) const - { - return Outer()->GetProperty(Outer()->m_BitmapVirtualCacheSize, pbitmapVirtualCacheSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ScaleBitmapCachesByBPP(long pbScale) - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ScaleBitmapCachesByBPP(long * pbScale) const - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_NumBitmapCaches(long pnumBitmapCaches) - { - return Outer()->SetProperty(Outer()->m_NumBitmapCaches, pnumBitmapCaches); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_NumBitmapCaches(long * pnumBitmapCaches) const - { - return Outer()->GetProperty(Outer()->m_NumBitmapCaches, pnumBitmapCaches); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_CachePersistenceActive(long pcachePersistenceActive) - { - return Outer()->SetProperty(Outer()->m_CachePersistenceActive, pcachePersistenceActive); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_CachePersistenceActive(long * pcachePersistenceActive) const - { - return Outer()->GetProperty(Outer()->m_CachePersistenceActive, pcachePersistenceActive); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PersistCacheDirectory(BSTR rhs) - { - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_brushSupportLevel(long pbrushSupportLevel) - { - return Outer()->SetProperty(Outer()->m_brushSupportLevel, pbrushSupportLevel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_brushSupportLevel(long * pbrushSupportLevel) const - { - return Outer()->GetProperty(Outer()->m_brushSupportLevel, pbrushSupportLevel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_minInputSendInterval(long pminInputSendInterval) - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_minInputSendInterval(long * pminInputSendInterval) const - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_InputEventsAtOnce(long pinputEventsAtOnce) - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_InputEventsAtOnce(long * pinputEventsAtOnce) const - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_maxEventCount(long pmaxEventCount) - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_maxEventCount(long * pmaxEventCount) const - { - // TODO - return S_FALSE; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_keepAliveInterval(long pkeepAliveInterval) - { - if(pkeepAliveInterval && pkeepAliveInterval < 10) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_keepAliveInternal, pkeepAliveInterval); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_keepAliveInterval(long * pkeepAliveInterval) const - { - return Outer()->GetProperty(Outer()->m_keepAliveInternal, pkeepAliveInterval); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_shutdownTimeout(long pshutdownTimeout) - { - if(pshutdownTimeout >= 600) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_shutdownTimeout, pshutdownTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_shutdownTimeout(long * pshutdownTimeout) const - { - return Outer()->GetProperty(Outer()->m_shutdownTimeout, pshutdownTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_overallConnectionTimeout(long poverallConnectionTimeout) - { - if(poverallConnectionTimeout < 0 || poverallConnectionTimeout >= 600) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_overallConnectionTimeout, poverallConnectionTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_overallConnectionTimeout(long * poverallConnectionTimeout) const - { - return Outer()->GetProperty(Outer()->m_overallConnectionTimeout, poverallConnectionTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_singleConnectionTimeout(long psingleConnectionTimeout) - { - if(psingleConnectionTimeout >= 600) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_singleConnectionTimeout, psingleConnectionTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_singleConnectionTimeout(long * psingleConnectionTimeout) const - { - return Outer()->GetProperty(Outer()->m_singleConnectionTimeout, psingleConnectionTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardType(long pkeyboardType) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardType(long * pkeyboardType) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardSubType(long pkeyboardSubType) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardSubType(long * pkeyboardSubType) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_KeyboardFunctionKey(long pkeyboardFunctionKey) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_KeyboardFunctionKey(long * pkeyboardFunctionKey) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_WinceFixedPalette(long pwinceFixedPalette) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_WinceFixedPalette(long * pwinceFixedPalette) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ConnectToServerConsole(VARIANT_BOOL pConnectToConsole) - { - return Outer()->SetProperty(Outer()->m_ConnectToServerConsole, pConnectToConsole); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_ConnectToServerConsole(VARIANT_BOOL * pConnectToConsole) const - { - return Outer()->GetProperty(Outer()->m_ConnectToServerConsole, pConnectToConsole); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapPersistence(long pbitmapPersistence) - { - return put_BitmapPeristence(pbitmapPersistence); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapPersistence(long * pbitmapPersistence) const - { - return get_BitmapPeristence(pbitmapPersistence); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_MinutesToIdleTimeout(long pminutesToIdleTimeout) - { - if(pminutesToIdleTimeout > 240) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_MinutesToIdleTimeout, pminutesToIdleTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_MinutesToIdleTimeout(long * pminutesToIdleTimeout) const - { - return Outer()->GetProperty(Outer()->m_MinutesToIdleTimeout, pminutesToIdleTimeout); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_SmartSizing(VARIANT_BOOL pfSmartSizing) - { - return Outer()->SetProperty(Outer()->m_SmartSizing, pfSmartSizing); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_SmartSizing(VARIANT_BOOL * pfSmartSizing) const - { - return Outer()->GetProperty(Outer()->m_SmartSizing, pfSmartSizing); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrLocalPrintingDocName(BSTR pLocalPrintingDocName) - { - return Outer()->SetProperty(Outer()->m_RdpdrLocalPrintingDocName, pLocalPrintingDocName); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrLocalPrintingDocName(BSTR * pLocalPrintingDocName) const - { - return Outer()->GetProperty(Outer()->m_RdpdrLocalPrintingDocName, pLocalPrintingDocName); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrClipCleanTempDirString(BSTR clipCleanTempDirString) - { - return Outer()->SetProperty(Outer()->m_RdpdrClipCleanTempDirString, clipCleanTempDirString); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrClipCleanTempDirString(BSTR * clipCleanTempDirString) const - { - return Outer()->GetProperty(Outer()->m_RdpdrClipCleanTempDirString, clipCleanTempDirString); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RdpdrClipPasteInfoString(BSTR clipPasteInfoString) - { - return Outer()->SetProperty(Outer()->m_RdpdrClipPasteInfoString, clipPasteInfoString); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RdpdrClipPasteInfoString(BSTR * clipPasteInfoString) const - { - return Outer()->GetProperty(Outer()->m_RdpdrClipPasteInfoString, clipPasteInfoString); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ClearTextPassword(BSTR rhs) - { - return Outer()->put_ClearTextPassword(rhs); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_DisplayConnectionBar(VARIANT_BOOL pDisplayConnectionBar) - { - if(!pDisplayConnectionBar && Outer()->IsSafeForScripting()) - return E_FAIL; - - return Outer()->SetProperty(Outer()->m_DisplayConnectionBar, pDisplayConnectionBar); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_DisplayConnectionBar(VARIANT_BOOL * pDisplayConnectionBar) const - { - return Outer()->GetProperty(Outer()->m_DisplayConnectionBar, pDisplayConnectionBar); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PinConnectionBar(VARIANT_BOOL pPinConnectionBar) - { - if(Outer()->IsSafeForScripting()) - return E_NOTIMPL; - - return Outer()->SetProperty(Outer()->m_PinConnectionBar, pPinConnectionBar); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_PinConnectionBar(VARIANT_BOOL * pPinConnectionBar) const - { - return Outer()->GetProperty(Outer()->m_PinConnectionBar, pPinConnectionBar); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_GrabFocusOnConnect(VARIANT_BOOL pfGrabFocusOnConnect) - { - return Outer()->SetProperty(Outer()->m_GrabFocusOnConnect, pfGrabFocusOnConnect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_GrabFocusOnConnect(VARIANT_BOOL * pfGrabFocusOnConnect) const - { - return Outer()->GetProperty(Outer()->m_GrabFocusOnConnect, pfGrabFocusOnConnect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_LoadBalanceInfo(BSTR pLBInfo) - { - return Outer()->SetProperty(Outer()->m_LoadBalanceInfo, pLBInfo); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_LoadBalanceInfo(BSTR * pLBInfo) const - { - return Outer()->GetProperty(Outer()->m_LoadBalanceInfo, pLBInfo); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectDrives(VARIANT_BOOL pRedirectDrives) - { - return Outer()->SetProperty(Outer()->m_RedirectDrives, pRedirectDrives); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectDrives(VARIANT_BOOL * pRedirectDrives) const - { - return Outer()->GetProperty(Outer()->m_RedirectDrives, pRedirectDrives); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectPrinters(VARIANT_BOOL pRedirectPrinters) - { - return Outer()->SetProperty(Outer()->m_RedirectPrinters, pRedirectPrinters); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectPrinters(VARIANT_BOOL * pRedirectPrinters) const - { - return Outer()->GetProperty(Outer()->m_RedirectPrinters, pRedirectPrinters); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectPorts(VARIANT_BOOL pRedirectPorts) - { - return Outer()->SetProperty(Outer()->m_RedirectPorts, pRedirectPorts); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectPorts(VARIANT_BOOL * pRedirectPorts) const - { - return Outer()->GetProperty(Outer()->m_RedirectPorts, pRedirectPorts); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_RedirectSmartCards(VARIANT_BOOL pRedirectSmartCards) - { - return Outer()->SetProperty(Outer()->m_RedirectSmartCards, pRedirectSmartCards); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_RedirectSmartCards(VARIANT_BOOL * pRedirectSmartCards) const - { - return Outer()->GetProperty(Outer()->m_RedirectSmartCards, pRedirectSmartCards); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCache16BppSize(long pBitmapVirtualCache16BppSize) - { - if(pBitmapVirtualCache16BppSize < 0 || pBitmapVirtualCache16BppSize > 32) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_BitmapVirtualCache16BppSize, pBitmapVirtualCache16BppSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCache16BppSize(long * pBitmapVirtualCache16BppSize) const - { - return Outer()->GetProperty(Outer()->m_BitmapVirtualCache16BppSize, pBitmapVirtualCache16BppSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_BitmapVirtualCache24BppSize(long pBitmapVirtualCache24BppSize) - { - if(pBitmapVirtualCache24BppSize < 0 || pBitmapVirtualCache24BppSize > 32) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_BitmapVirtualCache24BppSize, pBitmapVirtualCache24BppSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_BitmapVirtualCache24BppSize(long * pBitmapVirtualCache24BppSize) const - { - return Outer()->GetProperty(Outer()->m_BitmapVirtualCache24BppSize, pBitmapVirtualCache24BppSize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_PerformanceFlags(long pDisableList) - { - return Outer()->SetProperty(Outer()->m_PerformanceFlags, pDisableList); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_PerformanceFlags(long * pDisableList) const - { - return Outer()->GetProperty(Outer()->m_PerformanceFlags, pDisableList); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_ConnectWithEndpoint(VARIANT * rhs) - { - // TBD? the Microsoft client implements this, but what does it mean? - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::put_NotifyTSPublicKey(VARIANT_BOOL pfNotify) - { - return Outer()->SetProperty(Outer()->m_NotifyTSPublicKey, pfNotify); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings::get_NotifyTSPublicKey(VARIANT_BOOL * pfNotify) const - { - return Outer()->GetProperty(Outer()->m_NotifyTSPublicKey, pfNotify); - } - - /* IMsRdpClientAdvancedSettings2 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_CanAutoReconnect(VARIANT_BOOL * pfCanAutoReconnect) const - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::put_EnableAutoReconnect(VARIANT_BOOL pfEnableAutoReconnect) - { - return Outer()->SetProperty(Outer()->m_EnableAutoReconnect, pfEnableAutoReconnect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_EnableAutoReconnect(VARIANT_BOOL * pfEnableAutoReconnect) const - { - return Outer()->GetProperty(Outer()->m_EnableAutoReconnect, pfEnableAutoReconnect); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::put_MaxReconnectAttempts(long pMaxReconnectAttempts) - { - if(pMaxReconnectAttempts < 0 || pMaxReconnectAttempts > 200) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_MaxReconnectAttempts, pMaxReconnectAttempts); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings2::get_MaxReconnectAttempts(long * pMaxReconnectAttempts) const - { - return Outer()->GetProperty(Outer()->m_MaxReconnectAttempts, pMaxReconnectAttempts); - } - - /* IMsRdpClientAdvancedSettings3 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::put_ConnectionBarShowMinimizeButton(VARIANT_BOOL pfShowMinimize) - { - return Outer()->SetProperty(Outer()->m_ConnectionBarShowMinimizeButton, pfShowMinimize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::get_ConnectionBarShowMinimizeButton(VARIANT_BOOL * pfShowMinimize) const - { - return Outer()->GetProperty(Outer()->m_ConnectionBarShowMinimizeButton, pfShowMinimize); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::put_ConnectionBarShowRestoreButton(VARIANT_BOOL pfShowRestore) - { - return Outer()->SetProperty(Outer()->m_ConnectionBarShowRestoreButton, pfShowRestore); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings3::get_ConnectionBarShowRestoreButton(VARIANT_BOOL * pfShowRestore) const - { - return Outer()->GetProperty(Outer()->m_ConnectionBarShowRestoreButton, pfShowRestore); - } - - /* IMsRdpClientAdvancedSettings4 */ - virtual STDMETHODIMP IMsRdpClientAdvancedSettings4::put_AuthenticationLevel(unsigned int puiAuthLevel) - { - // TODO: this isn't implemented in rdesktop yet... - return Outer()->SetProperty(Outer()->m_AuthenticationLevel, puiAuthLevel); - } - - virtual STDMETHODIMP IMsRdpClientAdvancedSettings4::get_AuthenticationLevel(unsigned int * puiAuthLevel) const - { - return Outer()->GetProperty(Outer()->m_AuthenticationLevel, puiAuthLevel); - } - } - m_advancedSettings; - - template HRESULT GetAdvancedSettings(Interface ** ppAdvSettings) - { - addRef(); - *ppAdvSettings = &m_advancedSettings; - return S_OK; - } - - /* Secured settings wrapper */ - friend class SecuredSettings; - - class SecuredSettings SEALED_: public MSTSCLib::IMsRdpClientSecuredSettings - { - private: - RdpClient * Outer() - { - return InnerToOuter(this); - } - - const RdpClient * Outer() const - { - return InnerToOuter(this); - } - - /* IDispatch type information */ - ITypeInfo * m_dispTypeInfo; - - HRESULT LoadDispTypeInfo() - { - if(m_dispTypeInfo) - return S_OK; - - HRESULT hr = Outer()->LoadTypeLibrary(); - - if(FAILED(hr)) - return hr; - - assert(MSTSCLib::IID_IMsRdpClientSecuredSettings == MSTSCLib_Redist::IID_IMsRdpClientSecuredSettings); - - hr = Outer()->m_typeLib->GetTypeInfoOfGuid(MSTSCLib::IID_IMsRdpClientSecuredSettings, &m_dispTypeInfo); - - if(FAILED(hr)) - return hr; - - assert(m_dispTypeInfo); - return S_OK; - } - - HRESULT AcquireDispTypeInfo(ITypeInfo ** ppTI) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - m_dispTypeInfo->AddRef(); - *ppTI = m_dispTypeInfo; - return S_OK; - } - - public: - ~SecuredSettings() - { - if(m_dispTypeInfo) - m_dispTypeInfo->Release(); - } - - /* IUnknown */ - virtual STDMETHODIMP IUnknown::QueryInterface(REFIID riid, void ** ppvObject) - { - using namespace MSTSCLib; - - if - ( - riid == IID_IUnknown || - riid == IID_IDispatch || - riid == IID_IMsTscSecuredSettings || - riid == IID_IMsRdpClientSecuredSettings - ) - { - *ppvObject = this; - Outer()->addRef(); - return S_OK; - } - else - { - *ppvObject = NULL; - return E_NOINTERFACE; - } - } - - virtual STDMETHODIMP_(ULONG) IUnknown::AddRef() - { - return Outer()->addRef(); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::Release() - { - return Outer()->release(); - } - - /* IDispatch */ - virtual STDMETHODIMP IDispatch::GetTypeInfoCount(UINT * pctinfo) - { - *pctinfo = 1; - return S_OK; - } - - virtual STDMETHODIMP IDispatch::GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo ** ppTInfo) - { - if(iTInfo != 0) - return DISP_E_BADINDEX; - - return AcquireDispTypeInfo(ppTInfo); - } - - virtual STDMETHODIMP IDispatch::GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - return m_dispTypeInfo->GetIDsOfNames(rgszNames, cNames, rgDispId); - } - - virtual STDMETHODIMP IDispatch::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS * pDispParams, VARIANT * pVarResult, EXCEPINFO * pExcepInfo, UINT * puArgErr) - { - return m_dispTypeInfo->Invoke - ( - static_cast(this), - dispIdMember, - wFlags, - pDispParams, - pVarResult, - pExcepInfo, - puArgErr - ); - } - - /* IMsTscSecuredSettings */ - virtual STDMETHODIMP IMsTscSecuredSettings::put_StartProgram(BSTR pStartProgram) - { - return Outer()->SetProperty(Outer()->m_StartProgram, pStartProgram); - } - - virtual STDMETHODIMP IMsTscSecuredSettings::get_StartProgram(BSTR * pStartProgram) const - { - return Outer()->GetProperty(Outer()->m_StartProgram, pStartProgram); - } - - virtual STDMETHODIMP IMsTscSecuredSettings::put_WorkDir(BSTR pWorkDir) - { - return Outer()->SetProperty(Outer()->m_WorkDir, pWorkDir); - } - - virtual STDMETHODIMP IMsTscSecuredSettings::get_WorkDir(BSTR * pWorkDir) const - { - return Outer()->GetProperty(Outer()->m_WorkDir, pWorkDir); - } - - virtual STDMETHODIMP IMsTscSecuredSettings::put_FullScreen(long pfFullScreen) - { - return Outer()->put_FullScreen(!!pfFullScreen); - } - - virtual STDMETHODIMP IMsTscSecuredSettings::get_FullScreen(long * pfFullScreen) const - { - return Outer()->GetProperty(Outer()->m_FullScreen, pfFullScreen); - } - - /* IMsRdpClientSecuredSettings */ - virtual STDMETHODIMP IMsRdpClientSecuredSettings::put_KeyboardHookMode(long pkeyboardHookMode) - { - if(pkeyboardHookMode < 0 || pkeyboardHookMode > 2) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_KeyboardHookMode, pkeyboardHookMode); - } - - virtual STDMETHODIMP IMsRdpClientSecuredSettings::get_KeyboardHookMode(long * pkeyboardHookMode) const - { - return Outer()->GetProperty(Outer()->m_KeyboardHookMode, pkeyboardHookMode); - } - - virtual STDMETHODIMP IMsRdpClientSecuredSettings::put_AudioRedirectionMode(long pAudioRedirectionMode) - { - if(pAudioRedirectionMode < 0 || pAudioRedirectionMode > 2) - return E_INVALIDARG; - - return Outer()->SetProperty(Outer()->m_AudioRedirectionMode, pAudioRedirectionMode); - } - - virtual STDMETHODIMP IMsRdpClientSecuredSettings::get_AudioRedirectionMode(long * pAudioRedirectionMode) const - { - return Outer()->GetProperty(Outer()->m_AudioRedirectionMode, pAudioRedirectionMode); - } - } - m_securedSettings; - - template HRESULT GetSecuredSettings(Interface ** ppSecuredSettings) - { - if(!m_SecuredSettingsEnabled) - return E_FAIL; - - addRef(); - *ppSecuredSettings = &m_securedSettings; - return S_OK; - } - - /* Type library loading */ - HRESULT LoadTypeLibrary() - { - if(m_typeLib) - return S_OK; - - // Get the DLL name of the ActiveX control - WCHAR szPath[MAX_PATH + 1]; - DWORD cchPathLen = GetModuleFileNameW(GetCurrentModule(), szPath, ARRAYSIZE(szPath) - 1); - - if(cchPathLen == 0) - return HRESULT_FROM_WIN32(GetLastError()); - - if(cchPathLen > ((ARRAYSIZE(szPath) - 1) - 2)) - return E_FAIL; - - // Append the resource id of the type library - assert(m_typeLibIndex < 10); - - szPath[cchPathLen + 0] = L'\\'; - szPath[cchPathLen + 1] = static_cast(L'0' + m_typeLibIndex); - szPath[cchPathLen + 2] = 0; - - // Load the type library - HRESULT hr = LoadTypeLibEx(szPath, REGKIND_NONE, &m_typeLib); - - if(FAILED(hr)) - return hr; - - assert(m_typeLib); - return S_OK; - } - - /* IDispatch type information */ - HRESULT LoadDispTypeInfo() - { - if(m_dispTypeInfo) - return S_OK; - - HRESULT hr = LoadTypeLibrary(); - - if(FAILED(hr)) - return hr; - - assert(MSTSCLib::IID_IMsRdpClient4 == MSTSCLib_Redist::IID_IMsRdpClient4); - - hr = m_typeLib->GetTypeInfoOfGuid(MSTSCLib::IID_IMsRdpClient4, &m_dispTypeInfo); - - if(FAILED(hr)) - return hr; - - assert(m_dispTypeInfo); - return S_OK; - } - - HRESULT AcquireDispTypeInfo(ITypeInfo ** ppTI) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - m_dispTypeInfo->AddRef(); - *ppTI = m_dispTypeInfo; - return S_OK; - } - -public: - /* Helpers for our various embedded children */ - static RdpClient * InnerToOuter(RdpClientInner * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_inner); - } - - static RdpClient * InnerToOuter(AdvancedSettings * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_advancedSettings); - } - - static RdpClient * InnerToOuter(SecuredSettings * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_securedSettings); - } - - static RdpClient * InnerToOuter(RDPCLIENT * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_protocolState); - } - - static const RdpClient * InnerToOuter(const RdpClientInner * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_inner); - } - - static const RdpClient * InnerToOuter(const AdvancedSettings * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_advancedSettings); - } - - static const RdpClient * InnerToOuter(const SecuredSettings * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_securedSettings); - } - - static const RdpClient * InnerToOuter(const RDPCLIENT * innerThis) - { - return CONTAINING_RECORD(innerThis, RdpClient, m_protocolState); - } - - RdpClientUI * GetUI() const - { - assert(m_clientUI); - return m_clientUI; - } - - /* Glue for rdesktop-core */ -public: - static bool OnPublicKey(RDPCLIENT * This, unsigned char * key, unsigned int key_size) - { - return InnerToOuter(This)->OnPublicKey(key, key_size); - } - - static void OnLogon(RDPCLIENT * This) - { - return InnerToOuter(This)->OnLogon(); - } - - static bool OnRedirect - ( - RDPCLIENT * This, - uint32 flags, - uint32 server_len, - wchar_t * server, - uint32 cookie_len, - char * cookie, - uint32 username_len, - wchar_t * username, - uint32 domain_len, - wchar_t * domain, - uint32 password_len, - wchar_t * password - ) - { - return InnerToOuter(This)->OnRedirect - ( - flags, - server_len, - server, - cookie_len, - cookie, - username_len, - username, - domain_len, - domain, - password_len, - password - ); - } - -private: - bool OnPublicKey(unsigned char * key, unsigned int key_size) - { - HRESULT hr = FireReceivedTSPublicKey(key, key_size); - - if(FAILED(hr)) - { - m_protocolState.disconnect_reason = 262; - return false; - } - - return hr == S_OK; - } - - void OnLogon() - { - m_loggedIn = true; - FireLoginComplete(); - } - - bool OnRedirect - ( - uint32 flags, - uint32 server_len, - wchar_t * server, - uint32 cookie_len, - char * cookie, - uint32 username_len, - wchar_t * username, - uint32 domain_len, - wchar_t * domain, - uint32 password_len, - wchar_t * password - ) - { - assert(m_Connected); - assert(!InsideApartment()); - assert(IsWindow(m_controlWindow)); - - RedirectArguments redirectArgs = - { - flags, - server_len, - server, - cookie_len, - cookie, - username_len, - username, - domain_len, - domain, - password_len, - password - }; - - return SendMessage(m_controlWindow, RDPC_WM_REDIRECT, 0, reinterpret_cast(&redirectArgs)) == 0; - } - -private: - static DWORD WINAPI ProtocolLoopThreadProc(LPVOID lpParam) - { - static_cast(lpParam)->ProtocolLoop(); - return 0; - } - - static VOID CALLBACK ConnectionTimerAPC(LPVOID, DWORD, DWORD) - { - } - - // FIXME: various potential inconsistencies due to lack of detailed documentation of expected semantics - void ProtocolLoop() - { - HANDLE waitingReconnection = NULL; - - // Retrieve the local hostname to be passed to the server - WCHAR hostname[MAX_COMPUTERNAME_LENGTH + 1]; - DWORD hostnameLen = ARRAYSIZE(hostname); - - if(!GetComputerNameW(hostname, &hostnameLen)) - hostname[0] = 0; - - // Set some connection flags - uint32 flags = RDP_LOGON_NORMAL; - - if(m_Compress) - flags |= RDP_LOGON_COMPRESSION | RDP_LOGON_COMPRESSION2; - - if(m_AudioRedirectionMode == 1) - flags |= RDP_LOGON_LEAVE_AUDIO; - - if(m_ClearTextPassword) - flags |= RDP_LOGON_AUTO; - - // Notify the container that the connection process is beginning now - FireConnecting(); - - // Set the overall connection timer, if a timeout is set - // BUGBUG: the timeout semantics are ambiguous and have been most probably misinterpreted - HANDLE overallConnectionTimer = NULL; - LARGE_INTEGER overallTimeout; - - if(m_overallConnectionTimeout) - { - overallTimeout.QuadPart = - ((m_overallConnectionTimeout * 1000 * 1000 * 1000) / 100); - - overallConnectionTimer = CreateWaitableTimer(NULL, FALSE, NULL); - - if(overallConnectionTimer == NULL) - goto l_Disconnect; - } - - if(overallConnectionTimer) - SetWaitableTimer(overallConnectionTimer, &overallTimeout, 0, ConnectionTimerAPC, NULL, FALSE); - - // Initial connection - BOOL disconnected = rdp_connect - ( - &m_protocolState, - m_Server, - flags, - m_UserName, - m_Domain, - m_ClearTextPassword, - m_StartProgram, - m_WorkDir, - hostname, - m_LoadBalanceInfo - ); - - if(overallConnectionTimer) - CancelWaitableTimer(overallConnectionTimer); - - if(disconnected) - goto l_Disconnect; - - // TODO: set the disconnect reason for every instance in which we abort the loop - for(;;) - { - BOOL deactivated = False; - uint32 extendedDisconnectReason = 0; - - m_actuallyConnected = true; - - // Notify the container of the successful connection - FireConnected(); - - // Main protocol loop - m_loggedIn = false; - rdp_main_loop(&m_protocolState, &deactivated, &extendedDisconnectReason); - rdp_disconnect(&m_protocolState); - - m_actuallyConnected = false; - - // Redirection - // BUGBUG: redirection is very messy and probably this implementation is not "canonical" - if(m_protocolState.redirect) - { - m_protocolState.redirect = False; - rdp_reset_state(&m_protocolState); - - // TODO: reset connection parameters - // This has to be done in the main thread, so use SendMessage on the control window - - flags |= RDP_LOGON_AUTO; - - // retry - continue; - } - - // Disconnection - m_ExtendedDisconnectReason = static_cast(extendedDisconnectReason); - - // Clean disconnection - if(deactivated) - break; - - BOOL success; - - long autoReconnections = 0; - long totalReconnections = 0; - - // Reconnection - // BUGBUG: reconnection semantics may not be entirely accurate - do - { - ++ totalReconnections; - - // ask the container whether we should reconnect - long reconnectMode = FireAutoReconnecting(m_protocolState.disconnect_reason, totalReconnections); - - // do not reconnect - if(reconnectMode == MSTSCLib::autoReconnectContinueStop) - goto l_Disconnect; - - // the container will reconnect or abort manually - if(reconnectMode == MSTSCLib::autoReconnectContinueManual) - { - assert(!m_reconnectAborted); - assert(m_protocolThreadWaitingReconnection == NULL); - - if(waitingReconnection == NULL) - { - waitingReconnection = CreateEvent(NULL, TRUE, FALSE, NULL); - - if(waitingReconnection == NULL) - // TODO: fatal error - goto l_Disconnect; - } - - m_protocolThreadWaitingReconnection = waitingReconnection; - - WaitForSingleObject(waitingReconnection, INFINITE); - - m_protocolThreadWaitingReconnection = NULL; - - if(m_reconnectAborted) - { - // FIXME? do we set the disconnection status here? - goto l_Disconnect; - } - } - // reconnect automatically - else - { - // automatic reconnection is disabled - if(m_EnableAutoReconnect) - break; - - // too many consecutive automatic reconnections - if(autoReconnections == m_MaxReconnectAttempts) - break; - - ++ autoReconnections; - } - - if(overallConnectionTimer) - SetWaitableTimer(overallConnectionTimer, &overallTimeout, 0, ConnectionTimerAPC, NULL, FALSE); - - // Reconnection - success = rdp_reconnect - ( - &m_protocolState, - m_Server, - flags, - m_UserName, - m_Domain, - m_ClearTextPassword, - m_StartProgram, - m_WorkDir, - hostname, - m_LoadBalanceInfo - ); - - if(overallConnectionTimer) - CancelWaitableTimer(overallConnectionTimer); - } - while(!success); - } - -l_Disconnect: - // Disconnected - FireDisconnected(m_protocolState.disconnect_reason); - - if(overallConnectionTimer) - CloseHandle(overallConnectionTimer); - } - - void JoinProtocolThread() - { - assert(m_protocolThread); - WaitForSingleObject(m_protocolThread, INFINITE); - CloseHandle(m_protocolThread); - m_protocolThread = NULL; - } - - void TerminateProtocolThread() - { - assert(m_protocolThread); - - // wake it up if it's waiting for a manual reconnection - if(m_protocolThreadWaitingReconnection) - { - assert(!m_reconnectAborted); - m_reconnectAborted = true; - SetEvent(m_protocolThreadWaitingReconnection); - } - // otherwise, attempt to interrupt any current blocking operation - else - { - // shutdown(m_protocolState.tcp.sock, SD_BOTH); // TBD: maybe in the future? - QueueUserAPC(DisconnectAPC, m_protocolThread, 0); - } - - assert(m_protocolThreadWaitingReconnection == NULL); - } - - void PerformDisconnect(long reason) - { - assert(InsideApartment()); - assert(m_Connected); - - // TODO: notify virtual channels - - // TODO: do any other disconnection work here... - - // Put the control in the disconnected state - m_Connected = false; - m_loggedIn = false; - - // Notify the container - VARIANTARG arg = { }; - - arg.vt = VT_I4; - arg.lVal = reason; - - FireEventInsideApartment(4, &arg, 1); - } - -public: - /* Startup initialization */ - static BOOL Startup() - { - if(!RdpClientUI::Startup()) - return FALSE; - - WNDCLASSEX wcex = { sizeof(wcex) }; - - wcex.style = CS_HREDRAW | CS_VREDRAW; - wcex.lpfnWndProc = ControlWindowProc; - wcex.hInstance = GetCurrentModule(); - wcex.hCursor = LoadCursor(NULL, IDC_ARROW); - wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); - wcex.lpszClassName = TEXT("MissTosca_Control"); - - return RegisterClassEx(&wcex); - } - - static void Shutdown() - { - UnregisterClass(TEXT("MissTosca_Control"), GetCurrentModule()); - } - - /* Class factory */ - static HRESULT CreateInstance(REFCLSID rclsid, unsigned libIndex, IUnknown * punkOuter, REFIID riid, void ** ppObj) - { - RdpClient * obj = new RdpClient(rclsid, libIndex, punkOuter); - - if(obj == NULL) - return E_OUTOFMEMORY; - - HRESULT hr = obj->m_inner.QueryInterface(riid, ppObj); - - if(FAILED(hr)) - { - delete obj; - return hr; - } - - assert(obj->m_refCount == 1); - assert(*ppObj != NULL); - - return S_OK; - } - -private: - /* Connection point enumerator */ - class CEnumConnectionPoints: public IEnumConnectionPoints - { - private: - LONG m_refCount; - IConnectionPoint * m_cp; - bool m_done; - - public: - CEnumConnectionPoints(IConnectionPoint * cp): m_refCount(1), m_cp(cp), m_done(false) - { - assert(m_cp); - m_cp->AddRef(); - } - - CEnumConnectionPoints(const CEnumConnectionPoints& ecp): m_refCount(1), m_cp(ecp.m_cp), m_done(ecp.m_done) - { - assert(m_cp); - m_cp->AddRef(); - } - - ~CEnumConnectionPoints() - { - assert(m_cp); - m_cp->Release(); - } - - virtual STDMETHODIMP QueryInterface(REFIID riid, void ** ppvObject) - { - if(riid == IID_IUnknown || riid == IID_IEnumConnectionPoints) - { - *ppvObject = this; - return S_OK; - } - else - { - *ppvObject = NULL; - return E_NOINTERFACE; - } - } - - virtual STDMETHODIMP_(ULONG) AddRef() - { - return InterlockedIncrement(&m_refCount); - } - - virtual STDMETHODIMP_(ULONG) Release() - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual STDMETHODIMP Next(ULONG cConnections, LPCONNECTIONPOINT * ppCP, ULONG * pcFetched) - { - if(cConnections == 0 || m_done) - return S_FALSE; - - m_done = true; - m_cp->AddRef(); - *ppCP = m_cp; - *pcFetched = 1; - - return S_OK; - } - - virtual STDMETHODIMP Skip(ULONG cConnections) - { - if(cConnections == 0) - return S_OK; - - if(cConnections == 1 && !m_done) - { - m_done = true; - return S_OK; - } - - assert(cConnections > 1 || m_done); - - return S_FALSE; - } - - virtual STDMETHODIMP Reset() - { - m_done = false; - return S_OK; - } - - virtual STDMETHODIMP Clone(IEnumConnectionPoints ** ppEnum) - { - if(ppEnum == NULL) - return E_POINTER; - - *ppEnum = new CEnumConnectionPoints(*this); - - if(*ppEnum == NULL) - return E_OUTOFMEMORY; - - return S_OK; - } - }; - - /* Pay no attention, ActiveX glue... */ - LRESULT ControlWindowProc(UINT uMsg, WPARAM wParam, LPARAM lParam) - { - switch(uMsg) - { - case WM_SIZE: - { - // TODO: resize UI - } - - return 0; - - case WM_PAINT: - { - LPCWSTR text = NULL; - - if(!m_Connected) - text = m_DisconnectedText; - else if(m_actuallyConnected) - text = m_ConnectedStatusText; - else - text = m_ConnectingText; - - RECT clientRect; - GetClientRect(m_controlWindow, &clientRect); - - PAINTSTRUCT ps; - HDC hdc = BeginPaint(m_controlWindow, &ps); - - SetBkColor(hdc, GetSysColor(COLOR_WINDOW)); - SetTextColor(hdc, GetSysColor(COLOR_WINDOWTEXT)); - SelectObject(hdc, GetStockObject(SYSTEM_FONT)); - - RECT textRect = clientRect; - - DrawTextW - ( - hdc, - text, - -1, - &textRect, - DT_CENTER | DT_EDITCONTROL | DT_END_ELLIPSIS | DT_NOPREFIX | DT_WORDBREAK | DT_CALCRECT - ); - - if(textRect.right > clientRect.right) - textRect.right = clientRect.right; - - if(textRect.bottom > clientRect.bottom) - textRect.bottom = clientRect.bottom; - - textRect.left = (clientRect.right - textRect.right) / 2; - textRect.right += textRect.left; - textRect.top = (clientRect.bottom - textRect.bottom) / 2; - textRect.bottom += textRect.top; - - DrawTextW - ( - hdc, - text, - -1, - &textRect, - DT_CENTER | DT_EDITCONTROL | DT_END_ELLIPSIS | DT_NOPREFIX | DT_WORDBREAK - ); - - EndPaint(m_controlWindow, &ps); - } - - return 0; - - default: - { - LRESULT result; - - if(HandleEvent(uMsg, wParam, lParam, result)) - return result; - } - - break; - } - - return DefWindowProc(m_controlWindow, uMsg, wParam, lParam); - } - - static LRESULT CALLBACK ControlWindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) - { - if(uMsg == WM_CREATE) - { - SetWindowLongPtr - ( - hwnd, - GWLP_USERDATA, - (LONG_PTR)reinterpret_cast(lParam)->lpCreateParams - ); - } - - RdpClient * Self = reinterpret_cast(GetWindowLongPtr(hwnd, GWLP_USERDATA)); - assert(Self); - - return Self->ControlWindowProc(uMsg, wParam, lParam); - } - - HRESULT CreateControlWindow(HWND hwndParent) - { - m_controlWindow = CreateWindow - ( - TEXT("MissTosca_Control"), - NULL, - WS_CHILD | WS_CLIPCHILDREN, - CW_USEDEFAULT, - CW_USEDEFAULT, - CW_USEDEFAULT, - CW_USEDEFAULT, - hwndParent, - NULL, - GetCurrentModule(), - this - ); - - if(m_controlWindow == NULL) - return HRESULT_FROM_WIN32(GetLastError()); - - m_UIParentWindowHandle = m_controlWindow; - return S_OK; - } - - HRESULT DestroyControlWindow() - { - if(m_controlWindow == NULL) - return S_FALSE; - - HWND controlWindow = NULL; - std::swap(controlWindow, m_controlWindow); - DestroyWindow(controlWindow); - return S_OK; - } - - HRESULT Activate(LONG iVerb, IOleClientSite * pActiveSite, HWND hwndParent, LPCRECT lprcPosRect) - { - if(pActiveSite == NULL) - pActiveSite = m_clientSite; - - if(pActiveSite == NULL) - return E_FAIL; - - // TODO: store this until we are closed or deactivated - IOleInPlaceSite * site; - - HRESULT hr = pActiveSite->QueryInterface(&site); - - if(FAILED(hr)) - return hr; - - IOleInPlaceFrame * frame = NULL; - IOleInPlaceUIWindow * uiWindow = NULL; - - for(;;) - { - hr = site->CanInPlaceActivate(); - - if(hr == S_FALSE) - hr = E_FAIL; - - if(FAILED(hr)) - break; - - site->OnInPlaceActivate(); - - if(hwndParent == NULL) - { - hr = site->GetWindow(&hwndParent); - - if(FAILED(hr)) - break; - } - - RECT rcPos; - RECT rcClip; - OLEINPLACEFRAMEINFO frameInfo = { sizeof(frameInfo) }; - - site->GetWindowContext(&frame, &uiWindow, &rcPos, &rcClip, &frameInfo); - - if(lprcPosRect == NULL) - lprcPosRect = &rcPos; - - if(m_controlWindow) - ShowWindow(m_controlWindow, SW_SHOW); - else - { - hr = CreateControlWindow(hwndParent); - - if(FAILED(hr)) - break; - } - - SetObjectRects(lprcPosRect, &rcClip); - - // UI activation - if((iVerb == OLEIVERB_PRIMARY || iVerb == OLEIVERB_UIACTIVATE) && !m_uiActive) - { - m_uiActive = true; - - hr = site->OnUIActivate(); - - if(FAILED(hr)) - break; - - SetWindowPos - ( - m_controlWindow, - NULL, - lprcPosRect->left, - lprcPosRect->top, - lprcPosRect->right - lprcPosRect->left, - lprcPosRect->bottom - lprcPosRect->top, - SWP_SHOWWINDOW - ); - - if(frame) - { - frame->SetActiveObject(this, NULL); - frame->SetBorderSpace(NULL); - } - - if(uiWindow) - { - uiWindow->SetActiveObject(this, NULL); - uiWindow->SetBorderSpace(NULL); - } - } - - break; - } - - if(uiWindow) - uiWindow->Release(); - - if(frame) - frame->Release(); - - site->Release(); - - if(SUCCEEDED(hr)) - pActiveSite->ShowObject(); - - return hr; - } - -public: - /* IUnknown */ - /* - NOTE: this is the delegating implementation, to support aggregation. The actual - implementation is RdpClientInner, above - */ - virtual STDMETHODIMP IUnknown::QueryInterface(REFIID riid, void ** ppvObject) - { - return m_punkOuter->QueryInterface(riid, ppvObject); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::AddRef() - { - return m_punkOuter->AddRef(); - } - - virtual STDMETHODIMP_(ULONG) IUnknown::Release() - { - return m_punkOuter->Release(); - } - - /* IDispatch */ - virtual STDMETHODIMP IDispatch::GetTypeInfoCount(UINT * pctinfo) - { - *pctinfo = 1; - return S_OK; - } - - virtual STDMETHODIMP IDispatch::GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo ** ppTInfo) - { - if(iTInfo != 0) - return DISP_E_BADINDEX; - - return AcquireDispTypeInfo(ppTInfo); - } - - virtual STDMETHODIMP IDispatch::GetIDsOfNames(REFIID riid, LPOLESTR * rgszNames, UINT cNames, LCID lcid, DISPID * rgDispId) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - return m_dispTypeInfo->GetIDsOfNames(rgszNames, cNames, rgDispId); - } - - virtual STDMETHODIMP IDispatch::Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS * pDispParams, VARIANT * pVarResult, EXCEPINFO * pExcepInfo, UINT * puArgErr) - { - HRESULT hr = LoadDispTypeInfo(); - - if(FAILED(hr)) - return hr; - - return m_dispTypeInfo->Invoke - ( - static_cast(this), - dispIdMember, - wFlags, - pDispParams, - pVarResult, - pExcepInfo, - puArgErr - ); - } - - /* IConnectionPoint */ - virtual STDMETHODIMP GetConnectionInterface(IID * pIID) - { - if(pIID == NULL) - return E_POINTER; - - *pIID = MSTSCLib::DIID_IMsTscAxEvents; - return S_OK; - } - - virtual STDMETHODIMP GetConnectionPointContainer(IConnectionPointContainer ** ppCPC) - { - if(ppCPC == NULL) - return E_POINTER; - - addRef(); - *ppCPC = this; - return S_OK; - } - - virtual STDMETHODIMP Advise(IUnknown * pUnkSink, DWORD * pdwCookie) - { - MSTSCLib::IMsTscAxEvents * sink; - - if(FAILED(pUnkSink->QueryInterface(&sink))) - return CONNECT_E_CANNOTCONNECT; - - MSTSCLib::IMsTscAxEvents ** sinks = GetSinks(); - DWORD cookie = 0; - - if(m_EventSinksCount) - { - bool found = false; - - for(size_t i = 0; i < m_EventSinksCount; ++ i) - { - found = (sinks[i] == NULL); - - if(found) - { - cookie = static_cast(i); - break; - } - } - - if(!found) - { - MSTSCLib::IMsTscAxEvents ** newSinks = new MSTSCLib::IMsTscAxEvents *[m_EventSinksCount + 1]; - - if(newSinks == NULL) - { - sink->Release(); - return E_OUTOFMEMORY; - } - - std::copy(sinks, sinks + m_EventSinksCount, newSinks); - - m_EventSinks = newSinks; - sinks = newSinks; - - cookie = static_cast(m_EventSinksCount); - } - } - - sinks[cookie] = sink; - *pdwCookie = cookie; - - return S_OK; - } - - virtual STDMETHODIMP Unadvise(DWORD dwCookie) - { - MSTSCLib::IMsTscAxEvents ** sinks = GetSinks(); - - if(dwCookie >= m_EventSinksCount || sinks[dwCookie] == NULL) - return CONNECT_E_NOCONNECTION; - - sinks[dwCookie]->Release(); - sinks[dwCookie] = NULL; - - // BUGBUG: the array currently grows forever. Trim it whenever possible - - return S_OK; - } - - virtual STDMETHODIMP EnumConnections(IEnumConnections ** ppEnum) - { - // I see no real value in this - return E_NOTIMPL; - } - - /* IConnectionPointContainer */ - virtual STDMETHODIMP IConnectionPointContainer::EnumConnectionPoints(IEnumConnectionPoints ** ppEnum) - { - *ppEnum = new CEnumConnectionPoints(this); - - if(*ppEnum == NULL) - return E_OUTOFMEMORY; - - return S_OK; - } - - virtual STDMETHODIMP IConnectionPointContainer::FindConnectionPoint(REFIID riid, IConnectionPoint ** ppCP) - { - if(riid != MSTSCLib::DIID_IMsTscAxEvents) - return CONNECT_E_NOCONNECTION; - - addRef(); - *ppCP = this; - - return S_OK; - } - - /* IDataObject */ // 0/9 - virtual STDMETHODIMP IDataObject::GetData(FORMATETC * pformatetcIn, STGMEDIUM * pmedium) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::GetDataHere(FORMATETC * pformatetc, STGMEDIUM * pmedium) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::QueryGetData(FORMATETC * pformatetc) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::GetCanonicalFormatEtc(FORMATETC * pformatectIn, FORMATETC * pformatetcOut) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::SetData(FORMATETC * pformatetc, STGMEDIUM * pmedium, BOOL fRelease) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::EnumFormatEtc(DWORD dwDirection, IEnumFORMATETC ** ppenumFormatEtc) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::DAdvise(FORMATETC * pformatetc, DWORD advf, IAdviseSink * pAdvSink, DWORD * pdwConnection) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::DUnadvise(DWORD dwConnection) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IDataObject::EnumDAdvise(IEnumSTATDATA ** ppenumAdvise) - { - return E_NOTIMPL; - } - - /* IObjectSafety */ - virtual STDMETHODIMP IObjectSafety::GetInterfaceSafetyOptions(REFIID riid, DWORD * pdwSupportedOptions, DWORD * pdwEnabledOptions) - { - if(pdwSupportedOptions == NULL || pdwEnabledOptions == NULL) - return E_POINTER; - - if(riid != IID_IDispatch) - return E_NOINTERFACE; - - *pdwSupportedOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER; - *pdwEnabledOptions = m_SafetyOptions; - return S_OK; - } - - virtual STDMETHODIMP IObjectSafety::SetInterfaceSafetyOptions(REFIID riid, DWORD dwOptionSetMask, DWORD dwEnabledOptions) - { - if(riid != IID_IDispatch) - return E_NOINTERFACE; - - m_SafetyOptions = dwEnabledOptions & (dwOptionSetMask & INTERFACESAFE_FOR_UNTRUSTED_CALLER); - return S_OK; - } - - /* IOleControl */ // 3/4 - virtual STDMETHODIMP IOleControl::GetControlInfo(CONTROLINFO * pCI) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleControl::OnMnemonic(MSG * pMsg) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleControl::OnAmbientPropertyChange(DISPID dispID) - { - return S_OK; - } - - virtual STDMETHODIMP IOleControl::FreezeEvents(BOOL bFreeze) - { - if(bFreeze) - InterlockedIncrement(&m_freezeEvents); - else if(InterlockedDecrement(&m_freezeEvents) == 0) - UnfreezeEvents(); - - return S_OK; - } - - /* IOleInPlaceActiveObject */ // 3/5 - virtual STDMETHODIMP IOleInPlaceActiveObject::TranslateAccelerator(LPMSG lpmsg) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceActiveObject::OnFrameWindowActivate(BOOL fActivate) - { - // TODO - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceActiveObject::OnDocWindowActivate(BOOL fActivate) - { - // TODO - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceActiveObject::ResizeBorder(LPCRECT prcBorder, IOleInPlaceUIWindow * pUIWindow, BOOL fFrameWindow) - { - return S_OK; - } - - virtual STDMETHODIMP IOleInPlaceActiveObject::EnableModeless(BOOL fEnable) - { - return S_OK; - } - - /* IOleInPlaceObject */ // 1/4 - virtual STDMETHODIMP IOleInPlaceObject::InPlaceDeactivate() - { - // TODO: UIDeactivate, destroy window, inplacesite->OnInPlaceDeactivate - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceObject::UIDeactivate() - { - // TODO - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceObject::SetObjectRects(LPCRECT lprcPosRect, LPCRECT lprcClipRect) - { - if(m_controlWindow == NULL) - return E_FAIL; - - MoveWindow - ( - m_controlWindow, - lprcPosRect->left, - lprcPosRect->top, - lprcPosRect->right - lprcPosRect->left, - lprcPosRect->bottom - lprcPosRect->top, - TRUE - ); - - SetWindowRgn(m_controlWindow, CreateRectRgnIndirect(lprcClipRect), TRUE); - - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleInPlaceObject::ReactivateAndUndo() - { - return E_NOTIMPL; - } - - /* IOleObject */ // 18/21 - virtual STDMETHODIMP IOleObject::SetClientSite(IOleClientSite * pClientSite) - { - if(m_clientSite) - m_clientSite->Release(); - - m_clientSite = pClientSite; - - if(m_clientSite) - m_clientSite->AddRef(); - - return S_OK; - } - - virtual STDMETHODIMP IOleObject::GetClientSite(IOleClientSite ** ppClientSite) - { - if(ppClientSite == NULL) - return E_POINTER; - - if(m_clientSite) - m_clientSite->AddRef(); - - *ppClientSite = m_clientSite; - return S_OK; - } - - virtual STDMETHODIMP IOleObject::SetHostNames(LPCOLESTR szContainerApp, LPCOLESTR szContainerObj) - { - return S_OK; - } - - virtual STDMETHODIMP IOleObject::Close(DWORD dwSaveOption) - { - // TODO: deactivate, destroy window, release in-place site, release advise sink - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IOleObject::SetMoniker(DWORD dwWhichMoniker, IMoniker * pmk) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleObject::GetMoniker(DWORD dwAssign, DWORD dwWhichMoniker, IMoniker ** ppmk) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleObject::InitFromData(IDataObject * pDataObject, BOOL fCreation, DWORD dwReserved) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleObject::GetClipboardData(DWORD dwReserved, IDataObject ** ppDataObject) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleObject::DoVerb(LONG iVerb, LPMSG lpmsg, IOleClientSite * pActiveSite, LONG lindex, HWND hwndParent, LPCRECT lprcPosRect) - { - HRESULT hr; - - switch(iVerb) - { - case OLEIVERB_PRIMARY: - case OLEIVERB_SHOW: - case OLEIVERB_UIACTIVATE: - case OLEIVERB_INPLACEACTIVATE: - hr = S_OK; - break; - - default: - if(iVerb > 0) - hr = OLEOBJ_S_INVALIDVERB; - else - hr = E_NOTIMPL; - } - - if(FAILED(hr)) - return hr; - - HRESULT hrActivate = Activate(iVerb, pActiveSite, hwndParent, lprcPosRect); - - if(FAILED(hrActivate)) - hr = hrActivate; - - return hr; - } - - virtual STDMETHODIMP IOleObject::EnumVerbs(IEnumOLEVERB ** ppEnumOleVerb) - { - return OleRegEnumVerbs(m_classId, ppEnumOleVerb); - } - - virtual STDMETHODIMP IOleObject::Update() - { - return S_OK; - } - - virtual STDMETHODIMP IOleObject::IsUpToDate() - { - return S_OK; - } - - virtual STDMETHODIMP IOleObject::GetUserClassID(CLSID * pClsid) - { - *pClsid = m_classId; - return S_OK; - } - - virtual STDMETHODIMP IOleObject::GetUserType(DWORD dwFormOfType, LPOLESTR * pszUserType) - { - return OleRegGetUserType(m_classId, dwFormOfType, pszUserType); - } - - virtual STDMETHODIMP IOleObject::SetExtent(DWORD dwDrawAspect, SIZEL * psizel) - { - // TODO: resize - return E_NOTIMPL; - } - - virtual STDMETHODIMP IOleObject::GetExtent(DWORD dwDrawAspect, SIZEL * psizel) - { - // TODO: return size - return E_NOTIMPL; - } - - HRESULT NeedAdviseHolder() - { - if(m_adviseHolder) - return S_OK; - - return CreateOleAdviseHolder(&m_adviseHolder); - } - - virtual STDMETHODIMP IOleObject::Advise(IAdviseSink * pAdvSink, DWORD * pdwConnection) - { - HRESULT hr = NeedAdviseHolder(); - - if(FAILED(hr)) - return hr; - - return m_adviseHolder->Advise(pAdvSink, pdwConnection); - } - - virtual STDMETHODIMP IOleObject::Unadvise(DWORD dwConnection) - { - HRESULT hr = NeedAdviseHolder(); - - if(FAILED(hr)) - return hr; - - return m_adviseHolder->Unadvise(dwConnection); - } - - virtual STDMETHODIMP IOleObject::EnumAdvise(IEnumSTATDATA ** ppenumAdvise) - { - HRESULT hr = NeedAdviseHolder(); - - if(FAILED(hr)) - return hr; - - return m_adviseHolder->EnumAdvise(ppenumAdvise); - } - - virtual STDMETHODIMP IOleObject::GetMiscStatus(DWORD dwAspect, DWORD * pdwStatus) - { - return OleRegGetMiscStatus(m_classId, dwAspect, pdwStatus); - } - - virtual STDMETHODIMP IOleObject::SetColorScheme(LOGPALETTE * pLogpal) - { - return E_NOTIMPL; - } - - /* IOleWindow */ - virtual STDMETHODIMP IOleWindow::GetWindow(HWND * phwnd) - { - if(phwnd == NULL) - return E_POINTER; - - if(m_controlWindow == NULL) - return E_FAIL; - - *phwnd = m_controlWindow; - return S_OK; - } - - virtual STDMETHODIMP IOleWindow::ContextSensitiveHelp(BOOL fEnterMode) - { - return E_NOTIMPL; - } - - /* IPersist */ - virtual STDMETHODIMP IPersist::GetClassID(CLSID * pClassID) - { - *pClassID = m_classId; - return S_OK; - } - - /* IPersistPropertyBag */ // 0/3 - virtual STDMETHODIMP IPersistPropertyBag::InitNew() - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistPropertyBag::Load(IPropertyBag * pPropBag, IErrorLog * pErrorLog) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistPropertyBag::Save(IPropertyBag * pPropBag, BOOL fClearDirty, BOOL fSaveAllProperties) - { - return E_NOTIMPL; - } - - /* IPersistStorage */ // 0/6 - virtual STDMETHODIMP IPersistStorage::IsDirty() - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStorage::InitNew(IStorage * pStg) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStorage::Load(IStorage * pStg) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStorage::Save(IStorage * pStgSave, BOOL fSameAsLoad) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStorage::SaveCompleted(IStorage * pStgNew) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStorage::HandsOffStorage() - { - return E_NOTIMPL; - } - - /* IPersistStreamInit */ // 0/5 - virtual STDMETHODIMP IPersistStreamInit::IsDirty() - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStreamInit::Load(LPSTREAM pStm) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStreamInit::Save(LPSTREAM pStm, BOOL fClearDirty) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStreamInit::GetSizeMax(ULARGE_INTEGER * pCbSize) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IPersistStreamInit::InitNew() - { - return E_NOTIMPL; - } - - /* IProvideClassInfo */ - virtual STDMETHODIMP IProvideClassInfo::GetClassInfo(ITypeInfo ** ppTI) - { - HRESULT hr = LoadTypeLibrary(); - - if(FAILED(hr)) - return hr; - - return m_typeLib->GetTypeInfoOfGuid(m_classId, ppTI); - } - - /* IProvideClassInfo2 */ - virtual STDMETHODIMP IProvideClassInfo2::GetGUID(DWORD dwGuidKind, GUID * pGUID) - { - if(dwGuidKind != GUIDKIND_DEFAULT_SOURCE_DISP_IID) - return E_INVALIDARG; - - *pGUID = MSTSCLib::DIID_IMsTscAxEvents; - return S_OK; - } - - /* IQuickActivate */ - virtual STDMETHODIMP IQuickActivate::QuickActivate(QACONTAINER * pQaContainer, QACONTROL * pQaControl) - { - if(pQaContainer == NULL || pQaControl == NULL) - return E_POINTER; - - if(pQaContainer->cbSize < sizeof(*pQaContainer) || pQaControl->cbSize < sizeof(*pQaControl)) - return E_INVALIDARG; - - ULONG cb = pQaControl->cbSize; - ZeroMemory(pQaControl, cb); - pQaControl->cbSize = cb; - - SetClientSite(pQaContainer->pClientSite); - - if(pQaContainer->pAdviseSink) - SetAdvise(DVASPECT_CONTENT, 0, pQaContainer->pAdviseSink); - - if(pQaContainer->pUnkEventSink) - Advise(pQaContainer->pUnkEventSink, &pQaControl->dwEventCookie); - - GetMiscStatus(DVASPECT_CONTENT, &pQaControl->dwMiscStatus); - - return E_NOTIMPL; - } - - virtual STDMETHODIMP IQuickActivate::SetContentExtent(LPSIZEL pSizel) - { - return SetExtent(DVASPECT_CONTENT, pSizel); - } - - virtual STDMETHODIMP IQuickActivate::GetContentExtent(LPSIZEL pSizel) - { - return GetExtent(DVASPECT_CONTENT, pSizel); - } - - /* IViewObject */ // 3/6 - virtual STDMETHODIMP IViewObject::Draw(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DVTARGETDEVICE * ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL (STDMETHODCALLTYPE * pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IViewObject::GetColorSet(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DVTARGETDEVICE * ptd, HDC hicTargetDev, LOGPALETTE ** ppColorSet) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IViewObject::Freeze(DWORD dwDrawAspect, LONG lindex, void * pvAspect, DWORD * pdwFreeze) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IViewObject::Unfreeze(DWORD dwFreeze) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IViewObject::SetAdvise(DWORD aspects, DWORD advf, IAdviseSink * pAdvSink) - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IViewObject::GetAdvise(DWORD * pAspects, DWORD * pAdvf, IAdviseSink ** ppAdvSink) - { - return E_NOTIMPL; // TODO - } - - /* IViewObject2 */ // 0/1 - virtual STDMETHODIMP IViewObject2::GetExtent(DWORD dwDrawAspect, LONG lindex, DVTARGETDEVICE * ptd, LPSIZEL lpsizel) - { - return E_NOTIMPL; // TODO - } - - /* IMsTscAx */ // 23/30 - virtual STDMETHODIMP IMsTscAx::put_Server(BSTR pServer) - { - // FIXME: convert the hostname to Punycode, not the ANSI codepage - return SetProperty(m_Server, pServer); - } - - virtual STDMETHODIMP IMsTscAx::get_Server(BSTR * pServer) const - { - return GetProperty(m_Server, pServer); - } - - virtual STDMETHODIMP IMsTscAx::put_Domain(BSTR pDomain) - { - return SetProperty(m_Domain, pDomain); - } - - virtual STDMETHODIMP IMsTscAx::get_Domain(BSTR * pDomain) const - { - return GetProperty(m_Domain, pDomain); - } - - virtual STDMETHODIMP IMsTscAx::put_UserName(BSTR pUserName) - { - return SetProperty(m_UserName, pUserName); - } - - virtual STDMETHODIMP IMsTscAx::get_UserName(BSTR * pUserName) const - { - return GetProperty(m_UserName, pUserName); - } - - virtual STDMETHODIMP IMsTscAx::put_DisconnectedText(BSTR pDisconnectedText) - { - return SetProperty(m_DisconnectedText, pDisconnectedText); - } - - virtual STDMETHODIMP IMsTscAx::get_DisconnectedText(BSTR * pDisconnectedText) const - { - return GetProperty(m_DisconnectedText, pDisconnectedText); - } - - virtual STDMETHODIMP IMsTscAx::put_ConnectingText(BSTR pConnectingText) - { - return SetProperty(m_ConnectingText, pConnectingText); - } - - virtual STDMETHODIMP IMsTscAx::get_ConnectingText(BSTR * pConnectingText) const - { - return GetProperty(m_ConnectingText, pConnectingText); - } - - virtual STDMETHODIMP IMsTscAx::get_Connected(short * pIsConnected) const - { - return GetProperty(m_Connected, pIsConnected); - } - - virtual STDMETHODIMP IMsTscAx::put_DesktopWidth(long pVal) - { - if(pVal < 200 || pVal > 1600) - return E_INVALIDARG; - - return SetProperty(m_DesktopWidth, pVal); - } - - virtual STDMETHODIMP IMsTscAx::get_DesktopWidth(long * pVal) const - { - return GetProperty(m_DesktopWidth, pVal); - } - - virtual STDMETHODIMP IMsTscAx::put_DesktopHeight(long pVal) - { - if(pVal < 200 || pVal > 1200) - return E_INVALIDARG; - - return SetProperty(m_DesktopHeight, pVal); - } - - virtual STDMETHODIMP IMsTscAx::get_DesktopHeight(long * pVal) const - { - return GetProperty(m_DesktopHeight, pVal); - } - - virtual STDMETHODIMP IMsTscAx::put_StartConnected(long pfStartConnected) - { - return SetProperty(m_StartConnected, pfStartConnected); - } - - virtual STDMETHODIMP IMsTscAx::get_StartConnected(long * pfStartConnected) const - { - return GetProperty(m_StartConnected, pfStartConnected); - } - - virtual STDMETHODIMP IMsTscAx::get_HorizontalScrollBarVisible(long * pfHScrollVisible) const - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsTscAx::get_VerticalScrollBarVisible(long * pfVScrollVisible) const - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsTscAx::put_FullScreenTitle(BSTR rhs) - { - // TODO - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscAx::get_CipherStrength(long * pCipherStrength) const - { - if(pCipherStrength == NULL) - return E_INVALIDARG; - - *pCipherStrength = 128; // BUGBUG: a later version may change this. Use a compile-time constant - return S_OK; - } - - virtual STDMETHODIMP IMsTscAx::get_Version(BSTR * pVersion) const - { - if(pVersion == NULL) - return E_INVALIDARG; - - BSTR version = SysAllocString(L"5.2.3790.1830"); // BUGBUG: don't use hardcoded string - - if(version == NULL) - return E_OUTOFMEMORY; - - *pVersion = version; - return S_OK; - } - - virtual STDMETHODIMP IMsTscAx::get_SecuredSettingsEnabled(long * pSecuredSettingsEnabled) const - { - // TODO: initialize m_SecuredSettingsEnabled as soon as we have an OLE client site - return GetProperty(m_SecuredSettingsEnabled, pSecuredSettingsEnabled); - } - - virtual STDMETHODIMP IMsTscAx::get_SecuredSettings(MSTSCLib::IMsTscSecuredSettings ** ppSecuredSettings) const - { - return GetSecuredSettings(ppSecuredSettings); - } - - virtual STDMETHODIMP IMsTscAx::get_AdvancedSettings(MSTSCLib::IMsTscAdvancedSettings ** ppAdvSettings) const - { - return GetAdvancedSettings(ppAdvSettings); - } - - virtual STDMETHODIMP IMsTscAx::get_Debugger(MSTSCLib::IMsTscDebug ** ppDebugger) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscAx::Connect() - { - if(m_Connected) - { - // Protocol thread waiting for a manual reconnection: wake it up - if(m_protocolThreadWaitingReconnection) - { - SetEvent(m_protocolThreadWaitingReconnection); - return S_OK; - } - - return E_FAIL; - } - - m_Connected = true; - - HRESULT hr; - - if(m_controlWindow == NULL) - { - hr = CreateControlWindow(NULL); - - if(FAILED(hr)) - return hr; - } - - for(;;) - { - // TODO: initialize plugin DLLs/channels - - m_clientUI = new RdpClientUI(); - - if(m_clientUI == NULL) - { - hr = E_OUTOFMEMORY; - break; - } - - m_clientUI->Initialize(m_controlWindow); - - m_protocolState.licence_username = BstrToLpsz(m_UserName); - - if(m_protocolState.licence_username == NULL) - { - hr = E_OUTOFMEMORY; - break; - } - - DWORD dwSize = ARRAYSIZE(m_protocolState.licence_hostname); - - if(!GetComputerNameA(m_protocolState.licence_hostname, &dwSize)) - { - hr = HRESULT_FROM_WIN32(GetLastError()); - break; - } - - // Keyboard layout - // BUGBUG: not too sure about the semantics - long keyboardLayout = -1; - WCHAR * endPtr = NULL; - - if(m_KeyboardLayoutString) - keyboardLayout = wcstol(m_KeyboardLayoutString, &endPtr, 0); - - // no keyboard layout specified or invalid keyboard layout: use current keyboard layout - if(endPtr == NULL || *endPtr == 0 || keyboardLayout == -1) - keyboardLayout = PtrToLong(GetKeyboardLayout(0)); // FIXME? use LOWORD()? - - m_protocolState.keylayout = keyboardLayout; - - // in case of failure, assume English (US) - if(m_protocolState.keylayout == 0) - m_protocolState.keylayout = MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US); - - // Physical keyboard information - m_protocolState.keyboard_type = GetKeyboardType(0); - m_protocolState.keyboard_subtype = GetKeyboardType(1); - m_protocolState.keyboard_functionkeys = GetKeyboardType(2); - - // in case of failure, assume an IBM Enhanced keyboard with 12 function keys - if(m_protocolState.keyboard_type == 0 || m_protocolState.keyboard_functionkeys == 0) - { - m_protocolState.keyboard_type = 4; - m_protocolState.keyboard_subtype = 0; - m_protocolState.keyboard_functionkeys = 12; - } - - // More initialization - m_protocolState.width = m_DesktopWidth; - m_protocolState.height = m_DesktopHeight; - m_protocolState.server_depth = m_ColorDepth; - m_protocolState.bitmap_compression = m_Compress ? TRUE : FALSE; - m_protocolState.bitmap_cache = True; // TODO - m_protocolState.bitmap_cache_persist_enable = False; // TODO - m_protocolState.bitmap_cache_precache = True; // FIXME? - m_protocolState.encryption = m_EncryptionEnabled ? TRUE : FALSE; // TBD: detect automatically - m_protocolState.packet_encryption = m_EncryptionEnabled ? TRUE : FALSE; - m_protocolState.desktop_save = True; // FIXME? tie to bitmap cache setting? - m_protocolState.polygon_ellipse_orders = True; - m_protocolState.use_rdp5 = True; // TBD: detect automatically - m_protocolState.console_session = m_ConnectToServerConsole ? TRUE : FALSE; - m_protocolState.rdp5_performanceflags = m_PerformanceFlags; - m_protocolState.tcp_port_rdp = m_RDPPort; - m_protocolState.rdp.current_status = 1; - - // TODO: cache tuning based on the provided parameters - - m_protocolState.cache.bmpcache_lru[0] = -1; - m_protocolState.cache.bmpcache_lru[1] = -1; - m_protocolState.cache.bmpcache_lru[2] = -1; - m_protocolState.cache.bmpcache_mru[0] = -1; - m_protocolState.cache.bmpcache_mru[1] = -1; - m_protocolState.cache.bmpcache_mru[2] = -1; - - DWORD dwIgnore; - m_protocolThread = CreateThread(NULL, 0, ProtocolLoopThreadProc, this, 0, &dwIgnore); - - hr = S_OK; - break; - } - - if(FAILED(hr)) - m_Connected = false; - - return hr; - } - - virtual STDMETHODIMP IMsTscAx::Disconnect() - { - if(!m_Connected) - return E_FAIL; - - // Terminate the protocol thread. On exit, it will fire the Disconnected event - TerminateProtocolThread(); - return S_OK; - } - - virtual STDMETHODIMP IMsTscAx::CreateVirtualChannels(BSTR newVal) - { - UINT strLength = SysStringLen(newVal); - - if(strLength < 1 || strLength > 300) - return E_INVALIDARG; - - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsTscAx::SendOnVirtualChannel(BSTR chanName, BSTR ChanData) - { - return E_NOTIMPL; // TODO - } - - /* IMsRdpClient */ // 6/10 - virtual STDMETHODIMP IMsRdpClient::put_ColorDepth(long pcolorDepth) - { - switch(pcolorDepth) - { - case 8: - case 15: - case 16: - case 24: - case 32: - break; - - default: - return E_INVALIDARG; - } - - return SetProperty(m_ColorDepth, pcolorDepth); - } - - virtual STDMETHODIMP IMsRdpClient::get_ColorDepth(long * pcolorDepth) const - { - return GetProperty(m_ColorDepth, pcolorDepth); - } - - virtual STDMETHODIMP IMsRdpClient::get_AdvancedSettings2(MSTSCLib::IMsRdpClientAdvancedSettings ** ppAdvSettings) const - { - return GetAdvancedSettings(ppAdvSettings); - } - - virtual STDMETHODIMP IMsRdpClient::get_SecuredSettings2(MSTSCLib::IMsRdpClientSecuredSettings ** ppSecuredSettings) const - { - return GetSecuredSettings(ppSecuredSettings); - } - - virtual STDMETHODIMP IMsRdpClient::get_ExtendedDisconnectReason(MSTSCLib::ExtendedDisconnectReasonCode * pExtendedDisconnectReason) const - { - return GetProperty(m_ExtendedDisconnectReason, pExtendedDisconnectReason); - } - - virtual STDMETHODIMP IMsRdpClient::put_FullScreen(VARIANT_BOOL pfFullScreen) - { - if(!m_Connected) - return E_FAIL; - - if(pfFullScreen && !m_SecuredSettingsEnabled) - return E_FAIL; - - // TODO - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsRdpClient::get_FullScreen(VARIANT_BOOL * pfFullScreen) const - { - return GetProperty(m_FullScreen, pfFullScreen); - } - - virtual STDMETHODIMP IMsRdpClient::SetVirtualChannelOptions(BSTR chanName, long chanOptions) - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsRdpClient::GetVirtualChannelOptions(BSTR chanName, long * pChanOptions) - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsRdpClient::RequestClose(MSTSCLib::ControlCloseStatus * pCloseStatus) - { - if(pCloseStatus == NULL) - return E_POINTER; - - if(!m_Connected) - { - *pCloseStatus = MSTSCLib::controlCloseCanProceed; - return S_OK; - } - - *pCloseStatus = MSTSCLib::controlCloseWaitForEvents; - - if(!PostMessage(m_controlWindow, RDPC_WM_REQUEST_CLOSE, 0, 0)) - return HRESULT_FROM_WIN32(GetLastError()); - - return S_OK; - } - - /* IMsRdpClient2 */ - virtual STDMETHODIMP IMsRdpClient2::get_AdvancedSettings3(MSTSCLib::IMsRdpClientAdvancedSettings2 ** ppAdvSettings) const - { - return GetAdvancedSettings(ppAdvSettings); - } - - virtual STDMETHODIMP IMsRdpClient2::put_ConnectedStatusText(BSTR pConnectedStatusText) - { - return SetProperty(m_ConnectedStatusText, pConnectedStatusText); - } - - virtual STDMETHODIMP IMsRdpClient2::get_ConnectedStatusText(BSTR * pConnectedStatusText) const - { - return GetProperty(m_ConnectedStatusText, pConnectedStatusText); - } - - /* IMsRdpClient3 */ - virtual STDMETHODIMP IMsRdpClient3::get_AdvancedSettings4(MSTSCLib::IMsRdpClientAdvancedSettings3 ** ppAdvSettings) const - { - return GetAdvancedSettings(ppAdvSettings); - } - - /* IMsRdpClient4 */ - virtual STDMETHODIMP IMsRdpClient4::get_AdvancedSettings5(MSTSCLib::IMsRdpClientAdvancedSettings4 ** ppAdvSettings5) const - { - return GetAdvancedSettings(ppAdvSettings5); - } - - /* IMsTscNonScriptable */ - virtual STDMETHODIMP IMsTscNonScriptable::put_ClearTextPassword(BSTR rhs) - { - return SetProperty(m_ClearTextPassword, rhs); - } - - virtual STDMETHODIMP IMsTscNonScriptable::put_PortablePassword(BSTR pPortablePass) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::get_PortablePassword(BSTR * pPortablePass) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::put_PortableSalt(BSTR pPortableSalt) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::get_PortableSalt(BSTR * pPortableSalt) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::put_BinaryPassword(BSTR pBinaryPassword) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::get_BinaryPassword(BSTR * pBinaryPassword) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::put_BinarySalt(BSTR pSalt) - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::get_BinarySalt(BSTR * pSalt) const - { - return E_NOTIMPL; - } - - virtual STDMETHODIMP IMsTscNonScriptable::ResetPassword() - { - return SetProperty(m_ClearTextPassword, NULL); - } - - /* IMsRdpClientNonScriptable */ // 0/2 - virtual STDMETHODIMP IMsRdpClientNonScriptable::NotifyRedirectDeviceChange(MSTSCLib::UINT_PTR wParam, MSTSCLib::LONG_PTR lParam) - { - return E_NOTIMPL; // TODO - } - - virtual STDMETHODIMP IMsRdpClientNonScriptable::SendKeys(long numKeys, VARIANT_BOOL * pbArrayKeyUp, long * plKeyData) - { - // NOTE: the keys must be sent in a single, atomic sequence - // TODO: acquire the write lock - return E_NOTIMPL; // TODO - } - - /* IMsRdpClientNonScriptable2 */ - virtual STDMETHODIMP IMsRdpClientNonScriptable2::put_UIParentWindowHandle(HWND phwndUIParentWindowHandle) - { - return SetProperty(m_UIParentWindowHandle, phwndUIParentWindowHandle); - } - - virtual STDMETHODIMP IMsRdpClientNonScriptable2::get_UIParentWindowHandle(HWND * phwndUIParentWindowHandle) const - { - return GetProperty(m_UIParentWindowHandle, phwndUIParentWindowHandle); - } -}; - -#pragma warning(pop) - -/* More glue to interface to the rdesktop code */ -extern "C" -{ - -/* Orders */ -/* support routines */ -void ui_begin_update(RDPCLIENT * This) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_BeginUpdate(); -} - -void ui_end_update(RDPCLIENT * This) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_EndUpdate(); -} - -void ui_set_clip(RDPCLIENT * This, int x, int y, int cx, int cy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_SetClip(x, y, cx, cy); -} - -void ui_reset_clip(RDPCLIENT * This) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_ResetClip(); -} - -/* blits */ -void ui_destblt(RDPCLIENT * This, uint8 opcode, int x, int y, int cx, int cy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_DestBlt(opcode, x, y, cx, cy); -} - -void ui_memblt(RDPCLIENT * This, uint8 opcode, int x, int y, int cx, int cy, HBITMAP src, int srcx, int srcy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_MemBlt(opcode, x, y, cx, cy, src, srcx, srcy); -} - -void ui_patblt(RDPCLIENT * This, uint8 opcode, int x, int y, int cx, int cy, BRUSH * brush, int bgcolour, int fgcolour) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_PatBlt(opcode, x, y, cx, cy, brush, bgcolour, fgcolour); -} - -void ui_screenblt(RDPCLIENT * This, uint8 opcode, int x, int y, int cx, int cy, int srcx, int srcy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_ScreenBlt(opcode, x, y, cx, cy, srcx, srcy); -} - -void ui_triblt(RDPCLIENT * This, uint8 opcode, int x, int y, int cx, int cy, HBITMAP src, int srcx, int srcy, BRUSH * brush, int bgcolour, int fgcolour) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_TriBlt(opcode, x, y, cx, cy, src, srcx, srcy, brush, bgcolour, fgcolour); -} - -void ui_paint_bitmap(RDPCLIENT * This, int x, int y, int cx, int cy, int width, int height, uint8 * data) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_PaintBitmap(x, y, cx, cy, width, height, data); -} - -/* shapes */ -void ui_ellipse(RDPCLIENT * This, uint8 opcode, uint8 fillmode, int x, int y, int cx, int cy, BRUSH * brush, int bgcolour, int fgcolour) -{ - // TODO -// RdpClient::InnerToOuter(This)->GetUI()->Display_Ellipse(opcode, fillmode, x, y, cx, cy, brush, bgcolour, fgcolour); -} - -void ui_line(RDPCLIENT * This, uint8 opcode, int startx, int starty, int endx, int endy, PEN * pen) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_Line(opcode, startx, starty, endx, endy, pen); -} - -void ui_polygon(RDPCLIENT * This, uint8 opcode, uint8 fillmode, POINT * point, int npoints, BRUSH * brush, int bgcolour, int fgcolour) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_Polygon(opcode, fillmode, point, npoints, brush, bgcolour, fgcolour); -} - -void ui_polyline(RDPCLIENT * This, uint8 opcode, POINT * points, int npoints, PEN * pen) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_Polyline(opcode, points, npoints, pen); -} - -void ui_rect(RDPCLIENT * This, int x, int y, int cx, int cy, int colour) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_Rect(x, y, cx, cy, colour); -} - -/* text */ -void ui_draw_text -( - RDPCLIENT * This, - uint8 font, - uint8 flags, - uint8 opcode, - int mixmode, - int x, - int y, - int clipx, - int clipy, - int clipcx, - int clipcy, - int boxx, - int boxy, - int boxcx, - int boxcy, - BRUSH * brush, - int bgcolour, - int fgcolour, - uint8 * text, - uint8 length -) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_DrawText - ( - font, - flags, - opcode, - mixmode, - x, - y, - clipx, - clipy, - clipcx, - clipcy, - boxx, - boxy, - boxcx, - boxcy, - brush, - bgcolour, - fgcolour, - text, - length - ); -} - -/* desktop save/restore */ -void ui_desktop_save(RDPCLIENT * This, uint32 offset, int x, int y, int cx, int cy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_SaveDesktop(offset, x, y, cx, cy); -} - -void ui_desktop_restore(RDPCLIENT * This, uint32 offset, int x, int y, int cx, int cy) -{ - RdpClient::InnerToOuter(This)->GetUI()->Display_RestoreDesktop(offset, x, y, cx, cy); -} - -/* Resources */ -/* bitmaps */ -HBITMAP ui_create_bitmap(RDPCLIENT * This, int width, int height, uint8 * data) -{ - return win32_create_dib(width, height, This->server_depth, data); -} - -void ui_destroy_bitmap(RDPCLIENT *, HBITMAP bmp) -{ - DeleteObject(bmp); -} - -/* palettes */ -HCOLOURMAP ui_create_colourmap(RDPCLIENT *, COLOURMAP * colours) -{ - return NULL; -} - -void ui_set_colourmap(RDPCLIENT * This, HCOLOURMAP map) -{ - // TODO -} - -/* cursors */ -HCURSOR ui_create_cursor(RDPCLIENT * This, unsigned int x, unsigned int y, int width, int height, uint8 * andmask, uint8 * xormask) -{ - uint8 * andbuf = NULL; - uint8 * xorbuf = NULL; - - uint8 * andbits = win32_convert_scanlines(width, - height, 1, 2, 4, andmask, &andbuf); - uint8 * xorbits = win32_convert_scanlines(width, height, 24, 2, 4, xormask, &xorbuf); - - HBITMAP hbmMask = CreateBitmap(width, height, 1, 1, andbits); - HBITMAP hbmColor = win32_create_dib(width, height, 24, xorbits); - - ICONINFO iconinfo; - iconinfo.fIcon = FALSE; - iconinfo.xHotspot = x; - iconinfo.yHotspot = y; - iconinfo.hbmMask = hbmMask; - iconinfo.hbmColor = hbmColor; - - HICON icon = CreateIconIndirect(&iconinfo); - - if(icon == NULL) - error("CreateIconIndirect %dx%d failed\n", width, height); - - if(andbuf) - delete[] andbuf; - - if(xorbuf) - delete[] xorbuf; - - DeleteObject(hbmMask); - DeleteObject(hbmColor); - - return icon; -} - -void ui_destroy_cursor(RDPCLIENT *, HCURSOR cursor) -{ - DestroyIcon(cursor); -} - -/* glyphs */ -HGLYPH ui_create_glyph(RDPCLIENT * This, int width, int height, const uint8 * data) -{ - uint8 * databuf = NULL; - uint8 * databits = win32_convert_scanlines(width, height, 1, 1, 2, data, &databuf); - - HBITMAP hbm = CreateBitmap(width, height, 1, 1, databits); - - if(databuf) - delete[] databuf; - - const uint8 * p = data; - int stride = alignup(alignup(width, 8) / 8, 1); - -#ifdef _DEBUG - printf("glyph %p\n", hbm); - - for(int i = 0; i < height; ++ i, p += stride) - { - for(int j = 0; j < width; ++ j) - { - int B = p[j / 8]; - int b = 8 - j % 8 - 1; - - if(B & (1 << b)) - fputs("##", stdout); - else - fputs("..", stdout); - } - - fputc('\n', stdout); - } - - fputc('\n', stdout); -#endif - - return hbm; -} - -void ui_destroy_glyph(RDPCLIENT *, HGLYPH glyph) -{ - DeleteObject(glyph); -} - -/* Input window */ -void ui_move_pointer(RDPCLIENT * This, int x, int y) -{ - // TODO -} - -void ui_set_cursor(RDPCLIENT * This, HCURSOR cursor) -{ - // TODO -} - -void ui_set_null_cursor(RDPCLIENT * This) -{ - // TODO -} - -/* Miscellaneous */ -void ui_resize_window(RDPCLIENT * This) -{ -} - -void ui_bell(RDPCLIENT *) -{ - MessageBeep(0); -} - -int ui_select(RDPCLIENT * This, SOCKET rdp_socket) -{ - return SleepEx(0, TRUE) == WAIT_IO_COMPLETION; -} - -/* Events */ -BOOL event_pubkey(RDPCLIENT * This, unsigned char * key, unsigned int key_size) -{ - if(!RdpClient::OnPublicKey(This, key, key_size)) - return FALSE; - else - return TRUE; -} - -void event_logon(RDPCLIENT * This) -{ - RdpClient::OnLogon(This); -} - -BOOL event_redirect(RDPCLIENT * This, uint32 flags, uint32 server_len, wchar_t * server, uint32 cookie_len, char * cookie, uint32 username_len, wchar_t * username, uint32 domain_len, wchar_t * domain, uint32 password_len, wchar_t * password) -{ - if - ( - !RdpClient::OnRedirect - ( - This, - flags, - server_len, - server, - cookie_len, - cookie, - username_len, - username, - domain_len, - domain, - password_len, - password - ) - ) - return FALSE; - else - return TRUE; -} - -} - -class ClassFactory: public IClassFactory -{ -private: - LONG m_refCount; - CLSID m_classId; - unsigned m_libIndex; - -public: - ClassFactory(REFCLSID rclsid, unsigned libIndex): - m_refCount(1), - m_classId(rclsid) - { - lockServer(); - } - - ~ClassFactory() - { - unlockServer(); - } - - virtual STDMETHODIMP QueryInterface(REFIID riid, void ** ppvObject) - { - if(riid == IID_IUnknown || riid == IID_IClassFactory) - { - *ppvObject = this; - return S_OK; - } - else - { - *ppvObject = NULL; - return E_NOINTERFACE; - } - } - - virtual STDMETHODIMP_(ULONG) AddRef() - { - return InterlockedIncrement(&m_refCount); - } - - virtual STDMETHODIMP_(ULONG) Release() - { - LONG n = InterlockedDecrement(&m_refCount); - - if(n == 0) - delete this; - - return n; - } - - virtual STDMETHODIMP CreateInstance(IUnknown * pUnkOuter, REFIID riid, void ** ppvObject) - { - if(pUnkOuter && riid != IID_IUnknown) - return CLASS_E_NOAGGREGATION; - - return RdpClient::CreateInstance(m_classId, m_libIndex, pUnkOuter, riid, ppvObject); - } - - virtual STDMETHODIMP LockServer(BOOL fLock) - { - if(fLock) - lockServer(); - else - unlockServer(); - - return S_OK; - } -}; - -extern "C" -{ - -STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID * ppv) -{ - unsigned libindex; - - if - ( - rclsid == MSTSCLib::CLSID_MsTscAx || - rclsid == MSTSCLib::CLSID_MsRdpClient || - rclsid == MSTSCLib::CLSID_MsRdpClient2 || - rclsid == MSTSCLib::CLSID_MsRdpClient3 || - rclsid == MSTSCLib::CLSID_MsRdpClient4 - ) - libindex = 1; - else if - ( - rclsid == MSTSCLib_Redist::CLSID_MsTscAx || - rclsid == MSTSCLib_Redist::CLSID_MsRdpClient || - rclsid == MSTSCLib_Redist::CLSID_MsRdpClient2 || - rclsid == MSTSCLib_Redist::CLSID_MsRdpClient3 // || - // rclsid != MSTSCLib::CLSID_MsRdpClient4 - ) - libindex = 2; - else - return CLASS_E_CLASSNOTAVAILABLE; - - ClassFactory * p = new ClassFactory(rclsid, libindex); - - if(p == NULL) - return E_OUTOFMEMORY; - - HRESULT hr = p->QueryInterface(riid, ppv); - - p->Release(); - - if(FAILED(hr)) - return hr; - - return S_OK; -} - -STDAPI DllCanUnloadNow(void) -{ - return canUnloadServer() ? S_OK : S_FALSE; -} - -STDAPI_(ULONG) DllGetTscCtlVer(void) -{ - // BUGBUG: don't hardcode this - return 0x05020ECE; // 5.2.3790 -} - -DWORD WINAPI DllMain(HINSTANCE hInstance, DWORD fdwReason, LPVOID lpvReserved) -{ - assert(hInstance == GetCurrentModule()); - - switch(fdwReason) - { - case DLL_PROCESS_ATTACH: - { - DisableThreadLibraryCalls(hInstance); - - if(!RdpClient::Startup()) - return FALSE; - } - - break; - - case DLL_PROCESS_DETACH: - { - // Process is terminating, no need to clean up - if(lpvReserved) - break; - - RdpClient::Shutdown(); - } - - break; - } - - return TRUE; -} - -} - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.idl b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.idl deleted file mode 100644 index 9c78f8575f9..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.idl +++ /dev/null @@ -1,561 +0,0 @@ -[ -#ifdef MSTSCLIB_REDIST_ - uuid(AF586AAE-B62A-420E-B796-294E7EE64C70), -#else - uuid(8C11EFA1-92C3-11D1-BC1E-00C04FA31489), -#endif - version(1.0) -] -library MSTSCLib -{ - importlib("stdole32.tlb"); - - dispinterface IMsTscAxEvents; - - interface IMsTscAx; - interface IMsRdpClient; - interface IMsRdpClient2; - interface IMsRdpClient3; - interface IMsRdpClient4; - - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - interface IMsRdpClientNonScriptable2; - - interface IMsTscAdvancedSettings; - interface IMsRdpClientAdvancedSettings; - interface IMsRdpClientAdvancedSettings2; - interface IMsRdpClientAdvancedSettings3; - interface IMsRdpClientAdvancedSettings4; - - interface IMsTscSecuredSettings; - interface IMsRdpClientSecuredSettings; - - interface IMsTscDebug; - - typedef [public] enum __MIDL___MIDL_itf_mstsax_0275_0001 - { - autoReconnectContinueAutomatic = 0, - autoReconnectContinueStop = 1, - autoReconnectContinueManual = 2 - } - AutoReconnectContinueState; - - typedef [public] enum __MIDL_IMsRdpClient_0001 - { - exDiscReasonNoInfo = 0, - exDiscReasonAPIInitiatedDisconnect = 1, - exDiscReasonAPIInitiatedLogoff = 2, - exDiscReasonServerIdleTimeout = 3, - exDiscReasonServerLogonTimeout = 4, - exDiscReasonReplacedByOtherConnection = 5, - exDiscReasonOutOfMemory = 6, - exDiscReasonServerDeniedConnection = 7, - exDiscReasonServerDeniedConnectionFips = 8, - exDiscReasonLicenseInternal = 256, - exDiscReasonLicenseNoLicenseServer = 257, - exDiscReasonLicenseNoLicense = 258, - exDiscReasonLicenseErrClientMsg = 259, - exDiscReasonLicenseHwidDoesntMatchLicense = 260, - exDiscReasonLicenseErrClientLicense = 261, - exDiscReasonLicenseCantFinishProtocol = 262, - exDiscReasonLicenseClientEndedProtocol = 263, - exDiscReasonLicenseErrClientEncryption = 264, - exDiscReasonLicenseCantUpgradeLicense = 265, - exDiscReasonLicenseNoRemoteConnections = 266, - exDiscReasonProtocolRangeStart = 4096, - exDiscReasonProtocolRangeEnd = 32767 - } - ExtendedDisconnectReasonCode; - - typedef [public] enum __MIDL_IMsRdpClient_0002 - { - controlCloseCanProceed = 0, - controlCloseWaitForEvents = 1 - } - ControlCloseStatus; - - typedef [public] unsigned __int3264 UINT_PTR; - typedef [public] __int3264 LONG_PTR; - - [uuid(336D5562-EFA8-482E-8CB3-C5C0FC7A7DB6)] - dispinterface IMsTscAxEvents - { - properties: - - methods: - [id(0x00000001)] void OnConnecting(); - [id(0x00000002)] void OnConnected(); - [id(0x00000003)] void OnLoginComplete(); - [id(0x00000004)] void OnDisconnected([in] long discReason); - [id(0x00000005)] void OnEnterFullScreenMode(); - [id(0x00000006)] void OnLeaveFullScreenMode(); - [id(0x00000007)] void OnChannelReceivedData([in] BSTR chanName, [in] BSTR data); - [id(0x00000008)] void OnRequestGoFullScreen(); - [id(0x00000009)] void OnRequestLeaveFullScreen(); - [id(0x0000000a)] void OnFatalError([in] long errorCode); - [id(0x0000000b)] void OnWarning([in] long warningCode); - [id(0x0000000c)] void OnRemoteDesktopSizeChange([in] long width, [in] long height); - [id(0x0000000d)] void OnIdleTimeoutNotification(); - [id(0x0000000e)] void OnRequestContainerMinimize(); - [id(0x0000000f)] void OnConfirmClose([out, retval] VARIANT_BOOL * pfAllowClose); - [id(0x00000010)] void OnReceivedTSPublicKey([in] BSTR publicKey, [out, retval] VARIANT_BOOL * pfContinueLogon); - [id(0x00000011)] void OnAutoReconnecting([in] long disconnectReason, [in] long attemptCount, [out, retval] AutoReconnectContinueState * pArcContinueStatus); - [id(0x00000012)] void OnAuthenticationWarningDisplayed(); - [id(0x00000013)] void OnAuthenticationWarningDismissed(); - }; - - [ -#ifdef MSTSCLIB_REDIST_ - uuid(327BB5CD-834E-4400-AEF2-B30E15E5D682), -#else - uuid(8C11EFAE-92C3-11D1-BC1E-00C04FA31489), -#endif - dual, - oleautomation - ] - interface IMsTscAx: IDispatch - { - [id(0x00000001), propput] HRESULT Server([in] BSTR pServer); - [id(0x00000001), propget] HRESULT Server([out, retval] BSTR * pServer); - [id(0x00000002), propput] HRESULT Domain([in] BSTR pDomain); - [id(0x00000002), propget] HRESULT Domain([out, retval] BSTR * pDomain); - [id(0x00000003), propput] HRESULT UserName([in] BSTR pUserName); - [id(0x00000003), propget] HRESULT UserName([out, retval] BSTR * pUserName); - [id(0x00000004), propput] HRESULT DisconnectedText([in] BSTR pDisconnectedText); - [id(0x00000004), propget] HRESULT DisconnectedText([out, retval] BSTR * pDisconnectedText); - [id(0x00000005), propput] HRESULT ConnectingText([in] BSTR pConnectingText); - [id(0x00000005), propget] HRESULT ConnectingText([out, retval] BSTR * pConnectingText); - [id(0x00000006), propget] HRESULT Connected([out, retval] short * pIsConnected); - [id(0x0000000c), propput] HRESULT DesktopWidth([in] long pVal); - [id(0x0000000c), propget] HRESULT DesktopWidth([out, retval] long * pVal); - [id(0x0000000d), propput] HRESULT DesktopHeight([in] long pVal); - [id(0x0000000d), propget] HRESULT DesktopHeight([out, retval] long * pVal); - [id(0x00000010), propput] HRESULT StartConnected([in] long pfStartConnected); - [id(0x00000010), propget] HRESULT StartConnected([out, retval] long * pfStartConnected); - [id(0x00000011), propget] HRESULT HorizontalScrollBarVisible([out, retval] long * pfHScrollVisible); - [id(0x00000012), propget] HRESULT VerticalScrollBarVisible([out, retval] long * pfVScrollVisible); - [id(0x00000013), propput] HRESULT FullScreenTitle([in] BSTR rhs); - [id(0x00000014), propget] HRESULT CipherStrength([out, retval] long * pCipherStrength); - [id(0x00000015), propget] HRESULT Version([out, retval] BSTR * pVersion); - [id(0x00000016), propget] HRESULT SecuredSettingsEnabled([out, retval] long * pSecuredSettingsEnabled); - [id(0x00000061), propget] HRESULT SecuredSettings([out, retval] IMsTscSecuredSettings ** ppSecuredSettings); - [id(0x00000062), propget] HRESULT AdvancedSettings([out, retval] IMsTscAdvancedSettings ** ppAdvSettings); - [id(0x00000063), propget, hidden] HRESULT Debugger([out, retval] IMsTscDebug ** ppDebugger); - [id(0x0000001e)] HRESULT Connect(); - [id(0x0000001f)] HRESULT Disconnect(); - [id(0x00000021)] HRESULT CreateVirtualChannels([in] BSTR newVal); - [id(0x00000022)] HRESULT SendOnVirtualChannel([in] BSTR chanName, [in] BSTR ChanData); - }; - - [ - uuid(92B4A539-7115-4B7C-A5A9-E5D9EFC2780A), - dual, - oleautomation - ] - interface IMsRdpClient: IMsTscAx - { - [id(0x00000064), propput] HRESULT ColorDepth([in] long pcolorDepth); - [id(0x00000064), propget] HRESULT ColorDepth([out, retval] long * pcolorDepth); - [id(0x00000065), propget] HRESULT AdvancedSettings2([out, retval] IMsRdpClientAdvancedSettings ** ppAdvSettings); - [id(0x00000066), propget] HRESULT SecuredSettings2([out, retval] IMsRdpClientSecuredSettings ** ppSecuredSettings); - [id(0x00000067), propget] HRESULT ExtendedDisconnectReason([out, retval] ExtendedDisconnectReasonCode * pExtendedDisconnectReason); - [id(0x00000068), propput] HRESULT FullScreen([in] VARIANT_BOOL pfFullScreen); - [id(0x00000068), propget] HRESULT FullScreen([out, retval] VARIANT_BOOL * pfFullScreen); - [id(0x00000023)] HRESULT SetVirtualChannelOptions([in] BSTR chanName, [in] long chanOptions); - [id(0x00000024)] HRESULT GetVirtualChannelOptions([in] BSTR chanName, [out, retval] long * pChanOptions); - [id(0x00000025)] HRESULT RequestClose([out, retval] ControlCloseStatus * pCloseStatus); - }; - - [ - uuid(E7E17DC4-3B71-4BA7-A8E6-281FFADCA28F), - dual, - oleautomation - ] - interface IMsRdpClient2: IMsRdpClient - { - [id(0x000000c8), propget] HRESULT AdvancedSettings3([out, retval] IMsRdpClientAdvancedSettings2 ** ppAdvSettings); - [id(0x000000c9), propput] HRESULT ConnectedStatusText([in] BSTR pConnectedStatusText); - [id(0x000000c9), propget] HRESULT ConnectedStatusText([out, retval] BSTR * pConnectedStatusText); - }; - - [ - uuid(91B7CBC5-A72E-4FA0-9300-D647D7E897FF), - dual, - oleautomation - ] - interface IMsRdpClient3: IMsRdpClient2 - { - [id(0x0000012c), propget] HRESULT AdvancedSettings4([out, retval] IMsRdpClientAdvancedSettings3 ** ppAdvSettings); - }; - - [ - uuid(095E0738-D97D-488B-B9F6-DD0E8D66C0DE), - dual, - oleautomation - ] - interface IMsRdpClient4: IMsRdpClient3 - { - [id(0x00000190), propget] HRESULT AdvancedSettings5([out, retval] IMsRdpClientAdvancedSettings4 ** ppAdvSettings5); - }; - - [uuid(C1E6743A-41C1-4A74-832A-0DD06C1C7A0E)] - interface IMsTscNonScriptable: IUnknown - { - [propput] HRESULT ClearTextPassword([in] BSTR rhs); - [propput] HRESULT PortablePassword([in] BSTR pPortablePass); - [propget] HRESULT PortablePassword([out, retval] BSTR * pPortablePass); - [propput] HRESULT PortableSalt([in] BSTR pPortableSalt); - [propget] HRESULT PortableSalt([out, retval] BSTR * pPortableSalt); - [propput] HRESULT BinaryPassword([in] BSTR pBinaryPassword); - [propget] HRESULT BinaryPassword([out, retval] BSTR * pBinaryPassword); - [propput] HRESULT BinarySalt([in] BSTR pSalt); - [propget] HRESULT BinarySalt([out, retval] BSTR * pSalt); - HRESULT ResetPassword(); - }; - - [uuid(2F079C4C-87B2-4AFD-97AB-20CDB43038AE)] - interface IMsRdpClientNonScriptable: IMsTscNonScriptable - { - HRESULT NotifyRedirectDeviceChange([in] UINT_PTR wParam, [in] LONG_PTR lParam); - HRESULT SendKeys([in] long numKeys, [in] VARIANT_BOOL * pbArrayKeyUp, [in] long * plKeyData); - }; - - [uuid(17A5E535-4072-4FA4-AF32-C8D0D47345E9)] - interface IMsRdpClientNonScriptable2: IMsRdpClientNonScriptable - { - [propput] HRESULT UIParentWindowHandle([in] HWND phwndUIParentWindowHandle); - [propget] HRESULT UIParentWindowHandle([out, retval] HWND * phwndUIParentWindowHandle); - }; - - [ - uuid(809945CC-4B3B-4A92-A6B0-DBF9B5F2EF2D), - dual, - oleautomation - ] - interface IMsTscAdvancedSettings: IDispatch - { - [id(0x00000079), propput] HRESULT Compress([in] long pcompress); - [id(0x00000079), propget] HRESULT Compress([out, retval] long * pcompress); - [id(0x0000007a), propput] HRESULT BitmapPeristence([in] long pbitmapPeristence); - [id(0x0000007a), propget] HRESULT BitmapPeristence([out, retval] long * pbitmapPeristence); - [id(0x000000a1), propput] HRESULT allowBackgroundInput([in] long pallowBackgroundInput); - [id(0x000000a1), propget] HRESULT allowBackgroundInput([out, retval] long * pallowBackgroundInput); - [id(0x000000a2), propput] HRESULT KeyBoardLayoutStr([in] BSTR rhs); - [id(0x000000aa), propput] HRESULT PluginDlls([in] BSTR rhs); - [id(0x000000ab), propput] HRESULT IconFile([in] BSTR rhs); - [id(0x000000ac), propput] HRESULT IconIndex([in] long rhs); - [id(0x000000ad), propput] HRESULT ContainerHandledFullScreen([in] long pContainerHandledFullScreen); - [id(0x000000ad), propget] HRESULT ContainerHandledFullScreen([out, retval] long * pContainerHandledFullScreen); - [id(0x000000ae), propput] HRESULT DisableRdpdr([in] long pDisableRdpdr); - [id(0x000000ae), propget] HRESULT DisableRdpdr([out, retval] long * pDisableRdpdr); - }; - - [ - uuid(3C65B4AB-12B3-465B-ACD4-B8DAD3BFF9E2), - dual, - oleautomation - ] - interface IMsRdpClientAdvancedSettings: IMsTscAdvancedSettings - { - [id(0x00000065), propput] HRESULT SmoothScroll([in] long psmoothScroll); - [id(0x00000065), propget] HRESULT SmoothScroll([out, retval] long * psmoothScroll); - [id(0x00000066), propput] HRESULT AcceleratorPassthrough([in] long pacceleratorPassthrough); - [id(0x00000066), propget] HRESULT AcceleratorPassthrough([out, retval] long * pacceleratorPassthrough); - [id(0x00000067), propput] HRESULT ShadowBitmap([in] long pshadowBitmap); - [id(0x00000067), propget] HRESULT ShadowBitmap([out, retval] long * pshadowBitmap); - [id(0x00000068), propput] HRESULT TransportType([in] long ptransportType); - [id(0x00000068), propget] HRESULT TransportType([out, retval] long * ptransportType); - [id(0x00000069), propput] HRESULT SasSequence([in] long psasSequence); - [id(0x00000069), propget] HRESULT SasSequence([out, retval] long * psasSequence); - [id(0x0000006a), propput] HRESULT EncryptionEnabled([in] long pencryptionEnabled); - [id(0x0000006a), propget] HRESULT EncryptionEnabled([out, retval] long * pencryptionEnabled); - [id(0x0000006b), propput] HRESULT DedicatedTerminal([in] long pdedicatedTerminal); - [id(0x0000006b), propget] HRESULT DedicatedTerminal([out, retval] long * pdedicatedTerminal); - [id(0x0000006c), propput] HRESULT RDPPort([in] long prdpPort); - [id(0x0000006c), propget] HRESULT RDPPort([out, retval] long * prdpPort); - [id(0x0000006d), propput] HRESULT EnableMouse([in] long penableMouse); - [id(0x0000006d), propget] HRESULT EnableMouse([out, retval] long * penableMouse); - [id(0x0000006e), propput] HRESULT DisableCtrlAltDel([in] long pdisableCtrlAltDel); - [id(0x0000006e), propget] HRESULT DisableCtrlAltDel([out, retval] long * pdisableCtrlAltDel); - [id(0x0000006f), propput] HRESULT EnableWindowsKey([in] long penableWindowsKey); - [id(0x0000006f), propget] HRESULT EnableWindowsKey([out, retval] long * penableWindowsKey); - [id(0x00000070), propput] HRESULT DoubleClickDetect([in] long pdoubleClickDetect); - [id(0x00000070), propget] HRESULT DoubleClickDetect([out, retval] long * pdoubleClickDetect); - [id(0x00000071), propput] HRESULT MaximizeShell([in] long pmaximizeShell); - [id(0x00000071), propget] HRESULT MaximizeShell([out, retval] long * pmaximizeShell); - [id(0x00000072), propput] HRESULT HotKeyFullScreen([in] long photKeyFullScreen); - [id(0x00000072), propget] HRESULT HotKeyFullScreen([out, retval] long * photKeyFullScreen); - [id(0x00000073), propput] HRESULT HotKeyCtrlEsc([in] long photKeyCtrlEsc); - [id(0x00000073), propget] HRESULT HotKeyCtrlEsc([out, retval] long * photKeyCtrlEsc); - [id(0x00000074), propput] HRESULT HotKeyAltEsc([in] long photKeyAltEsc); - [id(0x00000074), propget] HRESULT HotKeyAltEsc([out, retval] long * photKeyAltEsc); - [id(0x00000075), propput] HRESULT HotKeyAltTab([in] long photKeyAltTab); - [id(0x00000075), propget] HRESULT HotKeyAltTab([out, retval] long * photKeyAltTab); - [id(0x00000076), propput] HRESULT HotKeyAltShiftTab([in] long photKeyAltShiftTab); - [id(0x00000076), propget] HRESULT HotKeyAltShiftTab([out, retval] long * photKeyAltShiftTab); - [id(0x00000077), propput] HRESULT HotKeyAltSpace([in] long photKeyAltSpace); - [id(0x00000077), propget] HRESULT HotKeyAltSpace([out, retval] long * photKeyAltSpace); - [id(0x00000078), propput] HRESULT HotKeyCtrlAltDel([in] long photKeyCtrlAltDel); - [id(0x00000078), propget] HRESULT HotKeyCtrlAltDel([out, retval] long * photKeyCtrlAltDel); - [id(0x0000007b), propput] HRESULT orderDrawThreshold([in] long porderDrawThreshold); - [id(0x0000007b), propget] HRESULT orderDrawThreshold([out, retval] long * porderDrawThreshold); - [id(0x0000007c), propput] HRESULT BitmapCacheSize([in] long pbitmapCacheSize); - [id(0x0000007c), propget] HRESULT BitmapCacheSize([out, retval] long * pbitmapCacheSize); - [id(0x0000007d), propput] HRESULT BitmapVirtualCacheSize([in] long pbitmapVirtualCacheSize); - [id(0x0000007d), propget] HRESULT BitmapVirtualCacheSize([out, retval] long * pbitmapVirtualCacheSize); - [id(0x000000af), propput] HRESULT ScaleBitmapCachesByBPP([in] long pbScale); - [id(0x000000af), propget] HRESULT ScaleBitmapCachesByBPP([out, retval] long * pbScale); - [id(0x0000007e), propput] HRESULT NumBitmapCaches([in] long pnumBitmapCaches); - [id(0x0000007e), propget] HRESULT NumBitmapCaches([out, retval] long * pnumBitmapCaches); - [id(0x0000007f), propput] HRESULT CachePersistenceActive([in] long pcachePersistenceActive); - [id(0x0000007f), propget] HRESULT CachePersistenceActive([out, retval] long * pcachePersistenceActive); - [id(0x0000008a), propput] HRESULT PersistCacheDirectory([in] BSTR rhs); - [id(0x0000009c), propput] HRESULT brushSupportLevel([in] long pbrushSupportLevel); - [id(0x0000009c), propget] HRESULT brushSupportLevel([out, retval] long * pbrushSupportLevel); - [id(0x0000009d), propput] HRESULT minInputSendInterval([in] long pminInputSendInterval); - [id(0x0000009d), propget] HRESULT minInputSendInterval([out, retval] long * pminInputSendInterval); - [id(0x0000009e), propput] HRESULT InputEventsAtOnce([in] long pinputEventsAtOnce); - [id(0x0000009e), propget] HRESULT InputEventsAtOnce([out, retval] long * pinputEventsAtOnce); - [id(0x0000009f), propput] HRESULT maxEventCount([in] long pmaxEventCount); - [id(0x0000009f), propget] HRESULT maxEventCount([out, retval] long * pmaxEventCount); - [id(0x000000a0), propput] HRESULT keepAliveInterval([in] long pkeepAliveInterval); - [id(0x000000a0), propget] HRESULT keepAliveInterval([out, retval] long * pkeepAliveInterval); - [id(0x000000a3), propput] HRESULT shutdownTimeout([in] long pshutdownTimeout); - [id(0x000000a3), propget] HRESULT shutdownTimeout([out, retval] long * pshutdownTimeout); - [id(0x000000a4), propput] HRESULT overallConnectionTimeout([in] long poverallConnectionTimeout); - [id(0x000000a4), propget] HRESULT overallConnectionTimeout([out, retval] long * poverallConnectionTimeout); - [id(0x000000a5), propput] HRESULT singleConnectionTimeout([in] long psingleConnectionTimeout); - [id(0x000000a5), propget] HRESULT singleConnectionTimeout([out, retval] long * psingleConnectionTimeout); - [id(0x000000a6), propput] HRESULT KeyboardType([in] long pkeyboardType); - [id(0x000000a6), propget] HRESULT KeyboardType([out, retval] long * pkeyboardType); - [id(0x000000a7), propput] HRESULT KeyboardSubType([in] long pkeyboardSubType); - [id(0x000000a7), propget] HRESULT KeyboardSubType([out, retval] long * pkeyboardSubType); - [id(0x000000a8), propput] HRESULT KeyboardFunctionKey([in] long pkeyboardFunctionKey); - [id(0x000000a8), propget] HRESULT KeyboardFunctionKey([out, retval] long * pkeyboardFunctionKey); - [id(0x000000a9), propput] HRESULT WinceFixedPalette([in] long pwinceFixedPalette); - [id(0x000000a9), propget] HRESULT WinceFixedPalette([out, retval] long * pwinceFixedPalette); - [id(0x000000b2), propput] HRESULT ConnectToServerConsole([in] VARIANT_BOOL pConnectToConsole); - [id(0x000000b2), propget] HRESULT ConnectToServerConsole([out, retval] VARIANT_BOOL * pConnectToConsole); - [id(0x000000b6), propput] HRESULT BitmapPersistence([in] long pbitmapPersistence); - [id(0x000000b6), propget] HRESULT BitmapPersistence([out, retval] long * pbitmapPersistence); - [id(0x000000b7), propput] HRESULT MinutesToIdleTimeout([in] long pminutesToIdleTimeout); - [id(0x000000b7), propget] HRESULT MinutesToIdleTimeout([out, retval] long * pminutesToIdleTimeout); - [id(0x000000b8), propput] HRESULT SmartSizing([in] VARIANT_BOOL pfSmartSizing); - [id(0x000000b8), propget] HRESULT SmartSizing([out, retval] VARIANT_BOOL * pfSmartSizing); - [id(0x000000b9), propput] HRESULT RdpdrLocalPrintingDocName([in] BSTR pLocalPrintingDocName); - [id(0x000000b9), propget] HRESULT RdpdrLocalPrintingDocName([out, retval] BSTR * pLocalPrintingDocName); - [id(0x000000c9), propput] HRESULT RdpdrClipCleanTempDirString([in] BSTR clipCleanTempDirString); - [id(0x000000c9), propget] HRESULT RdpdrClipCleanTempDirString([out, retval] BSTR * clipCleanTempDirString); - [id(0x000000ca), propput] HRESULT RdpdrClipPasteInfoString([in] BSTR clipPasteInfoString); - [id(0x000000ca), propget] HRESULT RdpdrClipPasteInfoString([out, retval] BSTR * clipPasteInfoString); - [id(0x000000ba), propput] HRESULT ClearTextPassword([in] BSTR rhs); - [id(0x000000bb), propput] HRESULT DisplayConnectionBar([in] VARIANT_BOOL pDisplayConnectionBar); - [id(0x000000bb), propget] HRESULT DisplayConnectionBar([out, retval] VARIANT_BOOL * pDisplayConnectionBar); - [id(0x000000bc), propput] HRESULT PinConnectionBar([in] VARIANT_BOOL pPinConnectionBar); - [id(0x000000bc), propget] HRESULT PinConnectionBar([out, retval] VARIANT_BOOL * pPinConnectionBar); - [id(0x000000bd), propput] HRESULT GrabFocusOnConnect([in] VARIANT_BOOL pfGrabFocusOnConnect); - [id(0x000000bd), propget] HRESULT GrabFocusOnConnect([out, retval] VARIANT_BOOL * pfGrabFocusOnConnect); - [id(0x000000be), propput] HRESULT LoadBalanceInfo([in] BSTR pLBInfo); - [id(0x000000be), propget] HRESULT LoadBalanceInfo([out, retval] BSTR * pLBInfo); - [id(0x000000bf), propput] HRESULT RedirectDrives([in] VARIANT_BOOL pRedirectDrives); - [id(0x000000bf), propget] HRESULT RedirectDrives([out, retval] VARIANT_BOOL * pRedirectDrives); - [id(0x000000c0), propput] HRESULT RedirectPrinters([in] VARIANT_BOOL pRedirectPrinters); - [id(0x000000c0), propget] HRESULT RedirectPrinters([out, retval] VARIANT_BOOL * pRedirectPrinters); - [id(0x000000c1), propput] HRESULT RedirectPorts([in] VARIANT_BOOL pRedirectPorts); - [id(0x000000c1), propget] HRESULT RedirectPorts([out, retval] VARIANT_BOOL * pRedirectPorts); - [id(0x000000c2), propput] HRESULT RedirectSmartCards([in] VARIANT_BOOL pRedirectSmartCards); - [id(0x000000c2), propget] HRESULT RedirectSmartCards([out, retval] VARIANT_BOOL * pRedirectSmartCards); - [id(0x000000c3), propput] HRESULT BitmapVirtualCache16BppSize([in] long pBitmapVirtualCache16BppSize); - [id(0x000000c3), propget] HRESULT BitmapVirtualCache16BppSize([out, retval] long * pBitmapVirtualCache16BppSize); - [id(0x000000c4), propput] HRESULT BitmapVirtualCache24BppSize([in] long pBitmapVirtualCache24BppSize); - [id(0x000000c4), propget] HRESULT BitmapVirtualCache24BppSize([out, retval] long * pBitmapVirtualCache24BppSize); - [id(0x000000c8), propput] HRESULT PerformanceFlags([in] long pDisableList); - [id(0x000000c8), propget] HRESULT PerformanceFlags([out, retval] long * pDisableList); - [id(0x000000cb), propput] HRESULT ConnectWithEndpoint([in] VARIANT * rhs); - [id(0x000000cc), propput] HRESULT NotifyTSPublicKey([in] VARIANT_BOOL pfNotify); - [id(0x000000cc), propget] HRESULT NotifyTSPublicKey([out, retval] VARIANT_BOOL * pfNotify); - }; - - [ - uuid(9AC42117-2B76-4320-AA44-0E616AB8437B), - dual, - oleautomation - ] - interface IMsRdpClientAdvancedSettings2: IMsRdpClientAdvancedSettings - { - [id(0x000000cd), propget] HRESULT CanAutoReconnect([out, retval] VARIANT_BOOL * pfCanAutoReconnect); - [id(0x000000ce), propput] HRESULT EnableAutoReconnect([in] VARIANT_BOOL pfEnableAutoReconnect); - [id(0x000000ce), propget] HRESULT EnableAutoReconnect([out, retval] VARIANT_BOOL * pfEnableAutoReconnect); - [id(0x000000cf), propput] HRESULT MaxReconnectAttempts([in] long pMaxReconnectAttempts); - [id(0x000000cf), propget] HRESULT MaxReconnectAttempts([out, retval] long * pMaxReconnectAttempts); - }; - - [ - uuid(19CD856B-C542-4C53-ACEE-F127E3BE1A59), - dual, - oleautomation - ] - interface IMsRdpClientAdvancedSettings3: IMsRdpClientAdvancedSettings2 - { - [id(0x000000d2), propput] HRESULT ConnectionBarShowMinimizeButton([in] VARIANT_BOOL pfShowMinimize); - [id(0x000000d2), propget] HRESULT ConnectionBarShowMinimizeButton([out, retval] VARIANT_BOOL * pfShowMinimize); - [id(0x000000d3), propput] HRESULT ConnectionBarShowRestoreButton([in] VARIANT_BOOL pfShowRestore); - [id(0x000000d3), propget] HRESULT ConnectionBarShowRestoreButton([out, retval] VARIANT_BOOL * pfShowRestore); - }; - - [ - uuid(FBA7F64E-7345-4405-AE50-FA4A763DC0DE), - dual, - oleautomation - ] - interface IMsRdpClientAdvancedSettings4: IMsRdpClientAdvancedSettings3 - { - [id(0x000000d4), propput] HRESULT AuthenticationLevel([in] unsigned int puiAuthLevel); - [id(0x000000d4), propget] HRESULT AuthenticationLevel([out, retval] unsigned int * puiAuthLevel); - }; - - [ - uuid(C9D65442-A0F9-45B2-8F73-D61D2DB8CBB6), - dual, - oleautomation - ] - interface IMsTscSecuredSettings: IDispatch - { - [id(0x00000001), propput] HRESULT StartProgram([in] BSTR pStartProgram); - [id(0x00000001), propget] HRESULT StartProgram([out, retval] BSTR * pStartProgram); - [id(0x00000002), propput] HRESULT WorkDir([in] BSTR pWorkDir); - [id(0x00000002), propget] HRESULT WorkDir([out, retval] BSTR * pWorkDir); - [id(0x00000003), propput] HRESULT FullScreen([in] long pfFullScreen); - [id(0x00000003), propget] HRESULT FullScreen([out, retval] long * pfFullScreen); - }; - - [ - uuid(605BEFCF-39C1-45CC-A811-068FB7BE346D), - dual, - oleautomation - ] - interface IMsRdpClientSecuredSettings: IMsTscSecuredSettings - { - [id(0x00000004), propput] HRESULT KeyboardHookMode([in] long pkeyboardHookMode); - [id(0x00000004), propget] HRESULT KeyboardHookMode([out, retval] long * pkeyboardHookMode); - [id(0x00000005), propput] HRESULT AudioRedirectionMode([in] long pAudioRedirectionMode); - [id(0x00000005), propget] HRESULT AudioRedirectionMode([out, retval] long * pAudioRedirectionMode); - }; - - [ - uuid(209D0EB9-6254-47B1-9033-A98DAE55BB27), - hidden, - dual, - oleautomation - ] - interface IMsTscDebug: IDispatch - { - [id(0x000000c8), propput] HRESULT HatchBitmapPDU([in] long phatchBitmapPDU); - [id(0x000000c8), propget] HRESULT HatchBitmapPDU([out, retval] long * phatchBitmapPDU); - [id(0x000000c9), propput] HRESULT HatchSSBOrder([in] long phatchSSBOrder); - [id(0x000000c9), propget] HRESULT HatchSSBOrder([out, retval] long * phatchSSBOrder); - [id(0x000000ca), propput] HRESULT HatchMembltOrder([in] long phatchMembltOrder); - [id(0x000000ca), propget] HRESULT HatchMembltOrder([out, retval] long * phatchMembltOrder); - [id(0x000000cb), propput] HRESULT HatchIndexPDU([in] long phatchIndexPDU); - [id(0x000000cb), propget] HRESULT HatchIndexPDU([out, retval] long * phatchIndexPDU); - [id(0x000000cc), propput] HRESULT LabelMemblt([in] long plabelMemblt); - [id(0x000000cc), propget] HRESULT LabelMemblt([out, retval] long * plabelMemblt); - [id(0x000000cd), propput] HRESULT BitmapCacheMonitor([in] long pbitmapCacheMonitor); - [id(0x000000cd), propget] HRESULT BitmapCacheMonitor([out, retval] long * pbitmapCacheMonitor); - [id(0x000000ce), propput] HRESULT MallocFailuresPercent([in] long pmallocFailuresPercent); - [id(0x000000ce), propget] HRESULT MallocFailuresPercent([out, retval] long * pmallocFailuresPercent); - [id(0x000000cf), propput] HRESULT MallocHugeFailuresPercent([in] long pmallocHugeFailuresPercent); - [id(0x000000cf), propget] HRESULT MallocHugeFailuresPercent([out, retval] long * pmallocHugeFailuresPercent); - [id(0x000000d0), propput] HRESULT NetThroughput([in] long NetThroughput); - [id(0x000000d0), propget] HRESULT NetThroughput([out, retval] long * NetThroughput); - [id(0x000000d1), propput] HRESULT CLXCmdLine([in] BSTR pCLXCmdLine); - [id(0x000000d1), propget] HRESULT CLXCmdLine([out, retval] BSTR * pCLXCmdLine); - [id(0x000000d2), propput] HRESULT CLXDll([in] BSTR pCLXDll); - [id(0x000000d2), propget] HRESULT CLXDll([out, retval] BSTR * pCLXDll); - }; - - [ -#ifdef MSTSCLIB_REDIST_ - uuid(1FB464C8-09BB-4017-A2F5-EB742F04392F) -#else - uuid(A41A4187-5A86-4E26-B40A-856F9035D9CB) -#endif - ] - coclass MsTscAx - { - interface IMsRdpClient; - [default] interface IMsTscAx; - [default, source] dispinterface IMsTscAxEvents; - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - }; - - [ -#ifdef MSTSCLIB_REDIST_ - uuid(791FA017-2DE3-492E-ACC5-53C67A2B94D0) -#else - uuid(7CACBD7B-0D99-468F-AC33-22E495C0AFE5) -#endif - ] - coclass MsRdpClient - { - [default] interface IMsRdpClient; - interface IMsTscAx; - [default, source] dispinterface IMsTscAxEvents; - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - }; - - [ -#ifdef MSTSCLIB_REDIST_ - uuid(9059F30F-4EB1-4BD2-9FDC-36F43A218F4A) -#else - uuid(3523C2FB-4031-44E4-9A3B-F1E94986EE7F) -#endif - ] - coclass MsRdpClient2 - { - [default] interface IMsRdpClient2; - interface IMsRdpClient; - interface IMsTscAx; - [default, source] dispinterface IMsTscAxEvents; - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - }; - - [ -#ifdef MSTSCLIB_REDIST_ - uuid(7584C670-2274-4EFB-B00B-D6AABA6D3850) -#else - uuid(ACE575FD-1FCF-4074-9401-EBAB990FA9DE) -#endif - ] - coclass MsRdpClient3 - { - [default] interface IMsRdpClient3; - interface IMsRdpClient2; - interface IMsRdpClient; - interface IMsTscAx; - [default, source] dispinterface IMsTscAxEvents; - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - }; - - [uuid(6AE29350-321B-42BE-BBE5-12FB5270C0DE)] - coclass MsRdpClient4 - { - [default] interface IMsRdpClient4; - interface IMsRdpClient3; - interface IMsRdpClient2; - interface IMsRdpClient; - interface IMsTscAx; - [default, source] dispinterface IMsTscAxEvents; - interface IMsTscNonScriptable; - interface IMsRdpClientNonScriptable; - interface IMsRdpClientNonScriptable2; - }; - -}; - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.rc b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.rc deleted file mode 100644 index fa268c7e9ea..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib.rc +++ /dev/null @@ -1,3 +0,0 @@ -#define TYPELIB_RESOURCEID__ 1 -#include "./typelib.rh" -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_h.h b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_h.h deleted file mode 100644 index 2685131f18a..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_h.h +++ /dev/null @@ -1,8946 +0,0 @@ - - -/* this ALWAYS GENERATED file contains the definitions for the interfaces */ - - - /* File created by MIDL compiler version 7.00.0493 */ -/* at Sun Aug 13 16:46:06 2006 - */ -/* Compiler settings for .\mstsclib.idl: - Oicf, W1, Zp8, env=Win32 (32b run) - protocol : dce , ms_ext, c_ext, robust - error checks: allocation ref bounds_check enum stub_data - VC __declspec() decoration level: - __declspec(uuid()), __declspec(selectany), __declspec(novtable) - DECLSPEC_UUID(), MIDL_INTERFACE() -*/ -//@@MIDL_FILE_HEADING( ) - -#pragma warning( disable: 4049 ) /* more than 64k source lines */ - - -/* verify that the version is high enough to compile this file*/ -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif - -#include "rpc.h" -#include "rpcndr.h" - -#ifndef __RPCNDR_H_VERSION__ -#error this stub requires an updated version of -#endif // __RPCNDR_H_VERSION__ - - -#ifndef __mstsclib_h_h__ -#define __mstsclib_h_h__ - -#if defined(_MSC_VER) && (_MSC_VER >= 1020) -#pragma once -#endif - -/* Forward Declarations */ - -#ifndef __IMsTscAxEvents_FWD_DEFINED__ -#define __IMsTscAxEvents_FWD_DEFINED__ -typedef interface IMsTscAxEvents IMsTscAxEvents; -#endif /* __IMsTscAxEvents_FWD_DEFINED__ */ - - -#ifndef __IMsTscAx_FWD_DEFINED__ -#define __IMsTscAx_FWD_DEFINED__ -typedef interface IMsTscAx IMsTscAx; -#endif /* __IMsTscAx_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient_FWD_DEFINED__ -#define __IMsRdpClient_FWD_DEFINED__ -typedef interface IMsRdpClient IMsRdpClient; -#endif /* __IMsRdpClient_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient2_FWD_DEFINED__ -#define __IMsRdpClient2_FWD_DEFINED__ -typedef interface IMsRdpClient2 IMsRdpClient2; -#endif /* __IMsRdpClient2_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient3_FWD_DEFINED__ -#define __IMsRdpClient3_FWD_DEFINED__ -typedef interface IMsRdpClient3 IMsRdpClient3; -#endif /* __IMsRdpClient3_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient4_FWD_DEFINED__ -#define __IMsRdpClient4_FWD_DEFINED__ -typedef interface IMsRdpClient4 IMsRdpClient4; -#endif /* __IMsRdpClient4_FWD_DEFINED__ */ - - -#ifndef __IMsTscNonScriptable_FWD_DEFINED__ -#define __IMsTscNonScriptable_FWD_DEFINED__ -typedef interface IMsTscNonScriptable IMsTscNonScriptable; -#endif /* __IMsTscNonScriptable_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable_FWD_DEFINED__ -#define __IMsRdpClientNonScriptable_FWD_DEFINED__ -typedef interface IMsRdpClientNonScriptable IMsRdpClientNonScriptable; -#endif /* __IMsRdpClientNonScriptable_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable2_FWD_DEFINED__ -#define __IMsRdpClientNonScriptable2_FWD_DEFINED__ -typedef interface IMsRdpClientNonScriptable2 IMsRdpClientNonScriptable2; -#endif /* __IMsRdpClientNonScriptable2_FWD_DEFINED__ */ - - -#ifndef __IMsTscAdvancedSettings_FWD_DEFINED__ -#define __IMsTscAdvancedSettings_FWD_DEFINED__ -typedef interface IMsTscAdvancedSettings IMsTscAdvancedSettings; -#endif /* __IMsTscAdvancedSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings IMsRdpClientAdvancedSettings; -#endif /* __IMsRdpClientAdvancedSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings2 IMsRdpClientAdvancedSettings2; -#endif /* __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings3 IMsRdpClientAdvancedSettings3; -#endif /* __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings4 IMsRdpClientAdvancedSettings4; -#endif /* __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ */ - - -#ifndef __IMsTscSecuredSettings_FWD_DEFINED__ -#define __IMsTscSecuredSettings_FWD_DEFINED__ -typedef interface IMsTscSecuredSettings IMsTscSecuredSettings; -#endif /* __IMsTscSecuredSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientSecuredSettings_FWD_DEFINED__ -#define __IMsRdpClientSecuredSettings_FWD_DEFINED__ -typedef interface IMsRdpClientSecuredSettings IMsRdpClientSecuredSettings; -#endif /* __IMsRdpClientSecuredSettings_FWD_DEFINED__ */ - - -#ifndef __IMsTscDebug_FWD_DEFINED__ -#define __IMsTscDebug_FWD_DEFINED__ -typedef interface IMsTscDebug IMsTscDebug; -#endif /* __IMsTscDebug_FWD_DEFINED__ */ - - -#ifndef __MsTscAx_FWD_DEFINED__ -#define __MsTscAx_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsTscAx MsTscAx; -#else -typedef struct MsTscAx MsTscAx; -#endif /* __cplusplus */ - -#endif /* __MsTscAx_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient_FWD_DEFINED__ -#define __MsRdpClient_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient MsRdpClient; -#else -typedef struct MsRdpClient MsRdpClient; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient2_FWD_DEFINED__ -#define __MsRdpClient2_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient2 MsRdpClient2; -#else -typedef struct MsRdpClient2 MsRdpClient2; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient2_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient3_FWD_DEFINED__ -#define __MsRdpClient3_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient3 MsRdpClient3; -#else -typedef struct MsRdpClient3 MsRdpClient3; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient3_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient4_FWD_DEFINED__ -#define __MsRdpClient4_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient4 MsRdpClient4; -#else -typedef struct MsRdpClient4 MsRdpClient4; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient4_FWD_DEFINED__ */ - - -#ifdef __cplusplus -extern "C"{ -#endif - - - -#ifndef __MSTSCLib_LIBRARY_DEFINED__ -#define __MSTSCLib_LIBRARY_DEFINED__ - -/* library MSTSCLib */ -/* [version][uuid] */ - - - - - - - - - - - - - - - - - - -typedef /* [public][public][public] */ -enum __MIDL___MIDL_itf_mstsax_0275_0001 - { autoReconnectContinueAutomatic = 0, - autoReconnectContinueStop = 1, - autoReconnectContinueManual = 2 - } AutoReconnectContinueState; - -typedef /* [public][public][public] */ -enum __MIDL_IMsRdpClient_0001 - { exDiscReasonNoInfo = 0, - exDiscReasonAPIInitiatedDisconnect = 1, - exDiscReasonAPIInitiatedLogoff = 2, - exDiscReasonServerIdleTimeout = 3, - exDiscReasonServerLogonTimeout = 4, - exDiscReasonReplacedByOtherConnection = 5, - exDiscReasonOutOfMemory = 6, - exDiscReasonServerDeniedConnection = 7, - exDiscReasonServerDeniedConnectionFips = 8, - exDiscReasonLicenseInternal = 256, - exDiscReasonLicenseNoLicenseServer = 257, - exDiscReasonLicenseNoLicense = 258, - exDiscReasonLicenseErrClientMsg = 259, - exDiscReasonLicenseHwidDoesntMatchLicense = 260, - exDiscReasonLicenseErrClientLicense = 261, - exDiscReasonLicenseCantFinishProtocol = 262, - exDiscReasonLicenseClientEndedProtocol = 263, - exDiscReasonLicenseErrClientEncryption = 264, - exDiscReasonLicenseCantUpgradeLicense = 265, - exDiscReasonLicenseNoRemoteConnections = 266, - exDiscReasonProtocolRangeStart = 4096, - exDiscReasonProtocolRangeEnd = 32767 - } ExtendedDisconnectReasonCode; - -typedef /* [public][public][public] */ -enum __MIDL_IMsRdpClient_0002 - { controlCloseCanProceed = 0, - controlCloseWaitForEvents = 1 - } ControlCloseStatus; - -typedef /* [custom][public] */ unsigned __int3264 UINT_PTR; - -typedef /* [custom][public] */ __int3264 LONG_PTR; - - -EXTERN_C const IID LIBID_MSTSCLib; - -#ifndef __IMsTscAxEvents_DISPINTERFACE_DEFINED__ -#define __IMsTscAxEvents_DISPINTERFACE_DEFINED__ - -/* dispinterface IMsTscAxEvents */ -/* [uuid] */ - - -EXTERN_C const IID DIID_IMsTscAxEvents; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("336D5562-EFA8-482E-8CB3-C5C0FC7A7DB6") - IMsTscAxEvents : public IDispatch - { - }; - -#else /* C style interface */ - - typedef struct IMsTscAxEventsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAxEvents * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAxEvents * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAxEvents * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAxEvents * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAxEvents * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAxEvents * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAxEvents * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - END_INTERFACE - } IMsTscAxEventsVtbl; - - interface IMsTscAxEvents - { - CONST_VTBL struct IMsTscAxEventsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAxEvents_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAxEvents_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAxEvents_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAxEvents_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAxEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAxEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAxEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - -#endif /* __IMsTscAxEvents_DISPINTERFACE_DEFINED__ */ - - -#ifndef __IMsTscAx_INTERFACE_DEFINED__ -#define __IMsTscAx_INTERFACE_DEFINED__ - -/* interface IMsTscAx */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscAx; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("8C11EFAE-92C3-11D1-BC1E-00C04FA31489") - IMsTscAx : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Server( - /* [in] */ BSTR pServer) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Server( - /* [retval][out] */ BSTR *pServer) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Domain( - /* [in] */ BSTR pDomain) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Domain( - /* [retval][out] */ BSTR *pDomain) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_UserName( - /* [in] */ BSTR pUserName) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_UserName( - /* [retval][out] */ BSTR *pUserName) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisconnectedText( - /* [in] */ BSTR pDisconnectedText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisconnectedText( - /* [retval][out] */ BSTR *pDisconnectedText) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectingText( - /* [in] */ BSTR pConnectingText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectingText( - /* [retval][out] */ BSTR *pConnectingText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Connected( - /* [retval][out] */ short *pIsConnected) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DesktopWidth( - /* [in] */ long pVal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DesktopWidth( - /* [retval][out] */ long *pVal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DesktopHeight( - /* [in] */ long pVal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DesktopHeight( - /* [retval][out] */ long *pVal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_StartConnected( - /* [in] */ long pfStartConnected) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_StartConnected( - /* [retval][out] */ long *pfStartConnected) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HorizontalScrollBarVisible( - /* [retval][out] */ long *pfHScrollVisible) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_VerticalScrollBarVisible( - /* [retval][out] */ long *pfVScrollVisible) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreenTitle( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CipherStrength( - /* [retval][out] */ long *pCipherStrength) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Version( - /* [retval][out] */ BSTR *pVersion) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettingsEnabled( - /* [retval][out] */ long *pSecuredSettingsEnabled) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettings( - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings( - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings) = 0; - - virtual /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE get_Debugger( - /* [retval][out] */ IMsTscDebug **ppDebugger) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE Connect( void) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE Disconnect( void) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE CreateVirtualChannels( - /* [in] */ BSTR newVal) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE SendOnVirtualChannel( - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscAxVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAx * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAx * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAx * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAx * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAx * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAx * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAx * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsTscAx * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsTscAx * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsTscAx * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsTscAx * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsTscAx * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsTscAx * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsTscAx * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsTscAx * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsTscAx * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsTscAx * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsTscAx * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsTscAx * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsTscAx * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsTscAx * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsTscAx * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsTscAx * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsTscAx * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsTscAx * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsTscAx * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsTscAx * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsTscAx * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsTscAx * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsTscAx * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsTscAx * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - END_INTERFACE - } IMsTscAxVtbl; - - interface IMsTscAx - { - CONST_VTBL struct IMsTscAxVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAx_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAx_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAx_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAx_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscAx_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsTscAx_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsTscAx_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsTscAx_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsTscAx_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsTscAx_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsTscAx_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsTscAx_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsTscAx_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsTscAx_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsTscAx_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsTscAx_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsTscAx_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsTscAx_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsTscAx_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsTscAx_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsTscAx_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsTscAx_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsTscAx_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsTscAx_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsTscAx_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsTscAx_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsTscAx_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsTscAx_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsTscAx_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsTscAx_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsTscAx_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsTscAx_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsTscAx_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsTscAx_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscAx_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient_INTERFACE_DEFINED__ -#define __IMsRdpClient_INTERFACE_DEFINED__ - -/* interface IMsRdpClient */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("92B4A539-7115-4B7C-A5A9-E5D9EFC2780A") - IMsRdpClient : public IMsTscAx - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ColorDepth( - /* [in] */ long pcolorDepth) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ColorDepth( - /* [retval][out] */ long *pcolorDepth) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings2( - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettings2( - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ExtendedDisconnectReason( - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreen( - /* [in] */ VARIANT_BOOL pfFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_FullScreen( - /* [retval][out] */ VARIANT_BOOL *pfFullScreen) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE SetVirtualChannelOptions( - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE GetVirtualChannelOptions( - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE RequestClose( - /* [retval][out] */ ControlCloseStatus *pCloseStatus) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - END_INTERFACE - } IMsRdpClientVtbl; - - interface IMsRdpClient - { - CONST_VTBL struct IMsRdpClientVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient2_INTERFACE_DEFINED__ -#define __IMsRdpClient2_INTERFACE_DEFINED__ - -/* interface IMsRdpClient2 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("E7E17DC4-3B71-4BA7-A8E6-281FFADCA28F") - IMsRdpClient2 : public IMsRdpClient - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings3( - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectedStatusText( - /* [in] */ BSTR pConnectedStatusText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectedStatusText( - /* [retval][out] */ BSTR *pConnectedStatusText) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient2 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient2 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient2 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient2 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient2 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient2 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient2 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient2 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient2 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient2 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient2 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient2 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient2 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient2 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient2 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient2 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient2 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient2 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient2 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient2 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient2 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - END_INTERFACE - } IMsRdpClient2Vtbl; - - interface IMsRdpClient2 - { - CONST_VTBL struct IMsRdpClient2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient2_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient2_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient2_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient2_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient2_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient2_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient2_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient2_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient2_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient2_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient2_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient2_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient2_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient2_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient2_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient2_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient2_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient2_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient2_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient2_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient2_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient2_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient2_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient2_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient2_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient2_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient2_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient2_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient2_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient2_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient2_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient2_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient2_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient2_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient2_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient2_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient2_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient2_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient2_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient2_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient2_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient2_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient2_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient2_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient3_INTERFACE_DEFINED__ -#define __IMsRdpClient3_INTERFACE_DEFINED__ - -/* interface IMsRdpClient3 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient3; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("91B7CBC5-A72E-4FA0-9300-D647D7E897FF") - IMsRdpClient3 : public IMsRdpClient2 - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings4( - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient3Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient3 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient3 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient3 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient3 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient3 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient3 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient3 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient3 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient3 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient3 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient3 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient3 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient3 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient3 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient3 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient3 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient3 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient3 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient3 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient3 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient3 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient3 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient3 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings4 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings); - - END_INTERFACE - } IMsRdpClient3Vtbl; - - interface IMsRdpClient3 - { - CONST_VTBL struct IMsRdpClient3Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient3_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient3_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient3_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient3_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient3_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient3_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient3_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient3_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient3_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient3_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient3_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient3_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient3_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient3_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient3_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient3_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient3_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient3_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient3_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient3_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient3_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient3_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient3_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient3_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient3_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient3_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient3_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient3_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient3_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient3_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient3_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient3_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient3_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient3_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient3_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient3_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient3_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient3_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient3_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient3_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient3_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient3_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient3_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient3_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient3_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient3_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient3_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - - -#define IMsRdpClient3_get_AdvancedSettings4(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings4(This,ppAdvSettings) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient3_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient4_INTERFACE_DEFINED__ -#define __IMsRdpClient4_INTERFACE_DEFINED__ - -/* interface IMsRdpClient4 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient4; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("095E0738-D97D-488B-B9F6-DD0E8D66C0DE") - IMsRdpClient4 : public IMsRdpClient3 - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings5( - /* [retval][out] */ IMsRdpClientAdvancedSettings4 **ppAdvSettings5) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient4Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient4 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient4 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient4 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient4 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient4 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient4 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient4 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient4 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient4 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient4 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient4 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient4 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient4 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient4 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient4 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient4 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient4 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient4 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient4 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient4 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient4 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient4 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient4 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings4 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings5 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings4 **ppAdvSettings5); - - END_INTERFACE - } IMsRdpClient4Vtbl; - - interface IMsRdpClient4 - { - CONST_VTBL struct IMsRdpClient4Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient4_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient4_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient4_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient4_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient4_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient4_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient4_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient4_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient4_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient4_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient4_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient4_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient4_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient4_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient4_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient4_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient4_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient4_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient4_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient4_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient4_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient4_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient4_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient4_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient4_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient4_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient4_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient4_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient4_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient4_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient4_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient4_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient4_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient4_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient4_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient4_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient4_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient4_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient4_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient4_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient4_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient4_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient4_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient4_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient4_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient4_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient4_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - - -#define IMsRdpClient4_get_AdvancedSettings4(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings4(This,ppAdvSettings) ) - - -#define IMsRdpClient4_get_AdvancedSettings5(This,ppAdvSettings5) \ - ( (This)->lpVtbl -> get_AdvancedSettings5(This,ppAdvSettings5) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient4_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscNonScriptable_INTERFACE_DEFINED__ -#define __IMsTscNonScriptable_INTERFACE_DEFINED__ - -/* interface IMsTscNonScriptable */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsTscNonScriptable; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("C1E6743A-41C1-4A74-832A-0DD06C1C7A0E") - IMsTscNonScriptable : public IUnknown - { - public: - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ClearTextPassword( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortablePassword( - /* [in] */ BSTR pPortablePass) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortablePassword( - /* [retval][out] */ BSTR *pPortablePass) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortableSalt( - /* [in] */ BSTR pPortableSalt) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortableSalt( - /* [retval][out] */ BSTR *pPortableSalt) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinaryPassword( - /* [in] */ BSTR pBinaryPassword) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinaryPassword( - /* [retval][out] */ BSTR *pBinaryPassword) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinarySalt( - /* [in] */ BSTR pSalt) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinarySalt( - /* [retval][out] */ BSTR *pSalt) = 0; - - virtual HRESULT STDMETHODCALLTYPE ResetPassword( void) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscNonScriptableVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscNonScriptable * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscNonScriptable * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscNonScriptable * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsTscNonScriptable * This); - - END_INTERFACE - } IMsTscNonScriptableVtbl; - - interface IMsTscNonScriptable - { - CONST_VTBL struct IMsTscNonScriptableVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscNonScriptable_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscNonScriptable_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscNonScriptable_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscNonScriptable_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsTscNonScriptable_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsTscNonScriptable_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsTscNonScriptable_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsTscNonScriptable_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsTscNonScriptable_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsTscNonScriptable_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsTscNonScriptable_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsTscNonScriptable_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsTscNonScriptable_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscNonScriptable_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ -#define __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ - -/* interface IMsRdpClientNonScriptable */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientNonScriptable; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("2F079C4C-87B2-4AFD-97AB-20CDB43038AE") - IMsRdpClientNonScriptable : public IMsTscNonScriptable - { - public: - virtual HRESULT STDMETHODCALLTYPE NotifyRedirectDeviceChange( - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam) = 0; - - virtual HRESULT STDMETHODCALLTYPE SendKeys( - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientNonScriptableVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientNonScriptable * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientNonScriptable * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientNonScriptable * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsRdpClientNonScriptable * This); - - HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )( - IMsRdpClientNonScriptable * This, - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam); - - HRESULT ( STDMETHODCALLTYPE *SendKeys )( - IMsRdpClientNonScriptable * This, - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData); - - END_INTERFACE - } IMsRdpClientNonScriptableVtbl; - - interface IMsRdpClientNonScriptable - { - CONST_VTBL struct IMsRdpClientNonScriptableVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientNonScriptable_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientNonScriptable_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientNonScriptable_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientNonScriptable_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientNonScriptable_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - - -#define IMsRdpClientNonScriptable_NotifyRedirectDeviceChange(This,wParam,lParam) \ - ( (This)->lpVtbl -> NotifyRedirectDeviceChange(This,wParam,lParam) ) - -#define IMsRdpClientNonScriptable_SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) \ - ( (This)->lpVtbl -> SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ -#define __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ - -/* interface IMsRdpClientNonScriptable2 */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientNonScriptable2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("17A5E535-4072-4FA4-AF32-C8D0D47345E9") - IMsRdpClientNonScriptable2 : public IMsRdpClientNonScriptable - { - public: - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UIParentWindowHandle( - /* [in] */ HWND phwndUIParentWindowHandle) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UIParentWindowHandle( - /* [retval][out] */ HWND *phwndUIParentWindowHandle) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientNonScriptable2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientNonScriptable2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientNonScriptable2 * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsRdpClientNonScriptable2 * This); - - HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam); - - HRESULT ( STDMETHODCALLTYPE *SendKeys )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIParentWindowHandle )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ HWND phwndUIParentWindowHandle); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIParentWindowHandle )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ HWND *phwndUIParentWindowHandle); - - END_INTERFACE - } IMsRdpClientNonScriptable2Vtbl; - - interface IMsRdpClientNonScriptable2 - { - CONST_VTBL struct IMsRdpClientNonScriptable2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientNonScriptable2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientNonScriptable2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientNonScriptable2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientNonScriptable2_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientNonScriptable2_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable2_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable2_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable2_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable2_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable2_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable2_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable2_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable2_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - - -#define IMsRdpClientNonScriptable2_NotifyRedirectDeviceChange(This,wParam,lParam) \ - ( (This)->lpVtbl -> NotifyRedirectDeviceChange(This,wParam,lParam) ) - -#define IMsRdpClientNonScriptable2_SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) \ - ( (This)->lpVtbl -> SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) ) - - -#define IMsRdpClientNonScriptable2_put_UIParentWindowHandle(This,phwndUIParentWindowHandle) \ - ( (This)->lpVtbl -> put_UIParentWindowHandle(This,phwndUIParentWindowHandle) ) - -#define IMsRdpClientNonScriptable2_get_UIParentWindowHandle(This,phwndUIParentWindowHandle) \ - ( (This)->lpVtbl -> get_UIParentWindowHandle(This,phwndUIParentWindowHandle) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscAdvancedSettings_INTERFACE_DEFINED__ -#define __IMsTscAdvancedSettings_INTERFACE_DEFINED__ - -/* interface IMsTscAdvancedSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscAdvancedSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("809945CC-4B3B-4A92-A6B0-DBF9B5F2EF2D") - IMsTscAdvancedSettings : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Compress( - /* [in] */ long pcompress) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Compress( - /* [retval][out] */ long *pcompress) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapPeristence( - /* [in] */ long pbitmapPeristence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapPeristence( - /* [retval][out] */ long *pbitmapPeristence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_allowBackgroundInput( - /* [in] */ long pallowBackgroundInput) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_allowBackgroundInput( - /* [retval][out] */ long *pallowBackgroundInput) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyBoardLayoutStr( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PluginDlls( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_IconFile( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_IconIndex( - /* [in] */ long rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ContainerHandledFullScreen( - /* [in] */ long pContainerHandledFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ContainerHandledFullScreen( - /* [retval][out] */ long *pContainerHandledFullScreen) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisableRdpdr( - /* [in] */ long pDisableRdpdr) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisableRdpdr( - /* [retval][out] */ long *pDisableRdpdr) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscAdvancedSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAdvancedSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAdvancedSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAdvancedSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAdvancedSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAdvancedSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsTscAdvancedSettings * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsTscAdvancedSettings * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsTscAdvancedSettings * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsTscAdvancedSettings * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsTscAdvancedSettings * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsTscAdvancedSettings * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pDisableRdpdr); - - END_INTERFACE - } IMsTscAdvancedSettingsVtbl; - - interface IMsTscAdvancedSettings - { - CONST_VTBL struct IMsTscAdvancedSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAdvancedSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAdvancedSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAdvancedSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAdvancedSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAdvancedSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAdvancedSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAdvancedSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscAdvancedSettings_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsTscAdvancedSettings_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsTscAdvancedSettings_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsTscAdvancedSettings_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsTscAdvancedSettings_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsTscAdvancedSettings_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsTscAdvancedSettings_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsTscAdvancedSettings_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsTscAdvancedSettings_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsTscAdvancedSettings_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsTscAdvancedSettings_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsTscAdvancedSettings_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsTscAdvancedSettings_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsTscAdvancedSettings_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscAdvancedSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("3C65B4AB-12B3-465B-ACD4-B8DAD3BFF9E2") - IMsRdpClientAdvancedSettings : public IMsTscAdvancedSettings - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SmoothScroll( - /* [in] */ long psmoothScroll) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SmoothScroll( - /* [retval][out] */ long *psmoothScroll) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AcceleratorPassthrough( - /* [in] */ long pacceleratorPassthrough) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AcceleratorPassthrough( - /* [retval][out] */ long *pacceleratorPassthrough) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ShadowBitmap( - /* [in] */ long pshadowBitmap) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ShadowBitmap( - /* [retval][out] */ long *pshadowBitmap) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_TransportType( - /* [in] */ long ptransportType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_TransportType( - /* [retval][out] */ long *ptransportType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SasSequence( - /* [in] */ long psasSequence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SasSequence( - /* [retval][out] */ long *psasSequence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EncryptionEnabled( - /* [in] */ long pencryptionEnabled) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EncryptionEnabled( - /* [retval][out] */ long *pencryptionEnabled) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DedicatedTerminal( - /* [in] */ long pdedicatedTerminal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DedicatedTerminal( - /* [retval][out] */ long *pdedicatedTerminal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RDPPort( - /* [in] */ long prdpPort) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RDPPort( - /* [retval][out] */ long *prdpPort) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableMouse( - /* [in] */ long penableMouse) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableMouse( - /* [retval][out] */ long *penableMouse) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisableCtrlAltDel( - /* [in] */ long pdisableCtrlAltDel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisableCtrlAltDel( - /* [retval][out] */ long *pdisableCtrlAltDel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableWindowsKey( - /* [in] */ long penableWindowsKey) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableWindowsKey( - /* [retval][out] */ long *penableWindowsKey) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DoubleClickDetect( - /* [in] */ long pdoubleClickDetect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DoubleClickDetect( - /* [retval][out] */ long *pdoubleClickDetect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MaximizeShell( - /* [in] */ long pmaximizeShell) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MaximizeShell( - /* [retval][out] */ long *pmaximizeShell) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyFullScreen( - /* [in] */ long photKeyFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyFullScreen( - /* [retval][out] */ long *photKeyFullScreen) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyCtrlEsc( - /* [in] */ long photKeyCtrlEsc) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyCtrlEsc( - /* [retval][out] */ long *photKeyCtrlEsc) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltEsc( - /* [in] */ long photKeyAltEsc) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltEsc( - /* [retval][out] */ long *photKeyAltEsc) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltTab( - /* [in] */ long photKeyAltTab) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltTab( - /* [retval][out] */ long *photKeyAltTab) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltShiftTab( - /* [in] */ long photKeyAltShiftTab) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltShiftTab( - /* [retval][out] */ long *photKeyAltShiftTab) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltSpace( - /* [in] */ long photKeyAltSpace) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltSpace( - /* [retval][out] */ long *photKeyAltSpace) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyCtrlAltDel( - /* [in] */ long photKeyCtrlAltDel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyCtrlAltDel( - /* [retval][out] */ long *photKeyCtrlAltDel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_orderDrawThreshold( - /* [in] */ long porderDrawThreshold) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_orderDrawThreshold( - /* [retval][out] */ long *porderDrawThreshold) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapCacheSize( - /* [in] */ long pbitmapCacheSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapCacheSize( - /* [retval][out] */ long *pbitmapCacheSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCacheSize( - /* [in] */ long pbitmapVirtualCacheSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCacheSize( - /* [retval][out] */ long *pbitmapVirtualCacheSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ScaleBitmapCachesByBPP( - /* [in] */ long pbScale) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ScaleBitmapCachesByBPP( - /* [retval][out] */ long *pbScale) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NumBitmapCaches( - /* [in] */ long pnumBitmapCaches) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NumBitmapCaches( - /* [retval][out] */ long *pnumBitmapCaches) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CachePersistenceActive( - /* [in] */ long pcachePersistenceActive) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CachePersistenceActive( - /* [retval][out] */ long *pcachePersistenceActive) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PersistCacheDirectory( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_brushSupportLevel( - /* [in] */ long pbrushSupportLevel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_brushSupportLevel( - /* [retval][out] */ long *pbrushSupportLevel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_minInputSendInterval( - /* [in] */ long pminInputSendInterval) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_minInputSendInterval( - /* [retval][out] */ long *pminInputSendInterval) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_InputEventsAtOnce( - /* [in] */ long pinputEventsAtOnce) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_InputEventsAtOnce( - /* [retval][out] */ long *pinputEventsAtOnce) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_maxEventCount( - /* [in] */ long pmaxEventCount) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_maxEventCount( - /* [retval][out] */ long *pmaxEventCount) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_keepAliveInterval( - /* [in] */ long pkeepAliveInterval) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_keepAliveInterval( - /* [retval][out] */ long *pkeepAliveInterval) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_shutdownTimeout( - /* [in] */ long pshutdownTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_shutdownTimeout( - /* [retval][out] */ long *pshutdownTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_overallConnectionTimeout( - /* [in] */ long poverallConnectionTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_overallConnectionTimeout( - /* [retval][out] */ long *poverallConnectionTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_singleConnectionTimeout( - /* [in] */ long psingleConnectionTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_singleConnectionTimeout( - /* [retval][out] */ long *psingleConnectionTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardType( - /* [in] */ long pkeyboardType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardType( - /* [retval][out] */ long *pkeyboardType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardSubType( - /* [in] */ long pkeyboardSubType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardSubType( - /* [retval][out] */ long *pkeyboardSubType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardFunctionKey( - /* [in] */ long pkeyboardFunctionKey) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardFunctionKey( - /* [retval][out] */ long *pkeyboardFunctionKey) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_WinceFixedPalette( - /* [in] */ long pwinceFixedPalette) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_WinceFixedPalette( - /* [retval][out] */ long *pwinceFixedPalette) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectToServerConsole( - /* [in] */ VARIANT_BOOL pConnectToConsole) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectToServerConsole( - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapPersistence( - /* [in] */ long pbitmapPersistence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapPersistence( - /* [retval][out] */ long *pbitmapPersistence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MinutesToIdleTimeout( - /* [in] */ long pminutesToIdleTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MinutesToIdleTimeout( - /* [retval][out] */ long *pminutesToIdleTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SmartSizing( - /* [in] */ VARIANT_BOOL pfSmartSizing) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SmartSizing( - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrLocalPrintingDocName( - /* [in] */ BSTR pLocalPrintingDocName) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrLocalPrintingDocName( - /* [retval][out] */ BSTR *pLocalPrintingDocName) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrClipCleanTempDirString( - /* [in] */ BSTR clipCleanTempDirString) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrClipCleanTempDirString( - /* [retval][out] */ BSTR *clipCleanTempDirString) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrClipPasteInfoString( - /* [in] */ BSTR clipPasteInfoString) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrClipPasteInfoString( - /* [retval][out] */ BSTR *clipPasteInfoString) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ClearTextPassword( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisplayConnectionBar( - /* [in] */ VARIANT_BOOL pDisplayConnectionBar) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisplayConnectionBar( - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PinConnectionBar( - /* [in] */ VARIANT_BOOL pPinConnectionBar) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PinConnectionBar( - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_GrabFocusOnConnect( - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_GrabFocusOnConnect( - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_LoadBalanceInfo( - /* [in] */ BSTR pLBInfo) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_LoadBalanceInfo( - /* [retval][out] */ BSTR *pLBInfo) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectDrives( - /* [in] */ VARIANT_BOOL pRedirectDrives) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectDrives( - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectPrinters( - /* [in] */ VARIANT_BOOL pRedirectPrinters) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectPrinters( - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectPorts( - /* [in] */ VARIANT_BOOL pRedirectPorts) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectPorts( - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectSmartCards( - /* [in] */ VARIANT_BOOL pRedirectSmartCards) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectSmartCards( - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCache16BppSize( - /* [in] */ long pBitmapVirtualCache16BppSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCache16BppSize( - /* [retval][out] */ long *pBitmapVirtualCache16BppSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCache24BppSize( - /* [in] */ long pBitmapVirtualCache24BppSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCache24BppSize( - /* [retval][out] */ long *pBitmapVirtualCache24BppSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PerformanceFlags( - /* [in] */ long pDisableList) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PerformanceFlags( - /* [retval][out] */ long *pDisableList) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectWithEndpoint( - /* [in] */ VARIANT *rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NotifyTSPublicKey( - /* [in] */ VARIANT_BOOL pfNotify) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NotifyTSPublicKey( - /* [retval][out] */ VARIANT_BOOL *pfNotify) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - END_INTERFACE - } IMsRdpClientAdvancedSettingsVtbl; - - interface IMsRdpClientAdvancedSettings - { - CONST_VTBL struct IMsRdpClientAdvancedSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_RedirectSmartCards_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_RedirectSmartCards_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_PerformanceFlags_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableList); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_PerformanceFlags_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_PerformanceFlags_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableList); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_PerformanceFlags_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT *rhs); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfNotify); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings2 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("9AC42117-2B76-4320-AA44-0E616AB8437B") - IMsRdpClientAdvancedSettings2 : public IMsRdpClientAdvancedSettings - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CanAutoReconnect( - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableAutoReconnect( - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableAutoReconnect( - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MaxReconnectAttempts( - /* [in] */ long pMaxReconnectAttempts) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MaxReconnectAttempts( - /* [retval][out] */ long *pMaxReconnectAttempts) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings2 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - END_INTERFACE - } IMsRdpClientAdvancedSettings2Vtbl; - - interface IMsRdpClientAdvancedSettings2 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings2_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings2_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings2_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings2_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings2_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings2_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings2_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings2_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings2_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings2_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings2_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings2_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings2_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings2_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings2_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings2_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings2_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings2_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings2_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings2_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings2_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings2_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings2_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings2_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings2_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings2_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings2_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings2_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings2_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings2_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings2_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings2_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings2_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings2_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings2_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings2_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings2_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings2_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings2_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings2_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings2_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings2_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings2_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings2_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings2_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings2_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings2_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings2_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings2_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings2_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings2_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings2_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings2_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings2_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings2_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings2_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings2_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings2_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings2_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_CanAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_CanAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pMaxReconnectAttempts); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings3 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings3; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("19CD856B-C542-4C53-ACEE-F127E3BE1A59") - IMsRdpClientAdvancedSettings3 : public IMsRdpClientAdvancedSettings2 - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectionBarShowMinimizeButton( - /* [in] */ VARIANT_BOOL pfShowMinimize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectionBarShowMinimizeButton( - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectionBarShowRestoreButton( - /* [in] */ VARIANT_BOOL pfShowRestore) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectionBarShowRestoreButton( - /* [retval][out] */ VARIANT_BOOL *pfShowRestore) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings3Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings3 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings3 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - END_INTERFACE - } IMsRdpClientAdvancedSettings3Vtbl; - - interface IMsRdpClientAdvancedSettings3 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings3Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings3_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings3_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings3_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings3_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings3_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings3_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings3_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings3_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings3_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings3_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings3_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings3_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings3_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings3_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings3_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings3_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings3_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings3_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings3_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings3_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings3_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings3_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings3_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings3_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings3_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings3_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings3_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings3_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings3_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings3_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings3_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings3_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings3_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings3_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings3_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings3_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings3_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings3_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings3_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings3_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings3_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings3_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings3_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings3_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings3_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings3_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings3_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings3_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings3_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings3_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings3_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings3_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings3_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings3_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings3_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings3_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings3_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings3_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings3_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings3_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - - -#define IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> put_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> get_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings4 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings4; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("FBA7F64E-7345-4405-AE50-FA4A763DC0DE") - IMsRdpClientAdvancedSettings4 : public IMsRdpClientAdvancedSettings3 - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AuthenticationLevel( - /* [in] */ unsigned int puiAuthLevel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AuthenticationLevel( - /* [retval][out] */ unsigned int *puiAuthLevel) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings4Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings4 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings4 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AuthenticationLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ unsigned int puiAuthLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AuthenticationLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ unsigned int *puiAuthLevel); - - END_INTERFACE - } IMsRdpClientAdvancedSettings4Vtbl; - - interface IMsRdpClientAdvancedSettings4 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings4Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings4_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings4_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings4_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings4_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings4_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings4_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings4_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings4_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings4_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings4_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings4_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings4_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings4_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings4_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings4_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings4_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings4_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings4_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings4_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings4_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings4_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings4_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings4_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings4_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings4_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings4_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings4_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings4_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings4_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings4_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings4_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings4_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings4_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings4_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings4_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings4_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings4_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings4_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings4_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings4_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings4_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings4_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings4_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings4_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings4_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings4_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings4_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings4_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings4_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings4_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings4_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings4_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings4_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings4_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings4_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings4_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings4_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings4_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings4_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings4_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - - -#define IMsRdpClientAdvancedSettings4_put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> put_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> get_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - - -#define IMsRdpClientAdvancedSettings4_put_AuthenticationLevel(This,puiAuthLevel) \ - ( (This)->lpVtbl -> put_AuthenticationLevel(This,puiAuthLevel) ) - -#define IMsRdpClientAdvancedSettings4_get_AuthenticationLevel(This,puiAuthLevel) \ - ( (This)->lpVtbl -> get_AuthenticationLevel(This,puiAuthLevel) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings4_put_AuthenticationLevel_Proxy( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ unsigned int puiAuthLevel); - - -void __RPC_STUB IMsRdpClientAdvancedSettings4_put_AuthenticationLevel_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings4_get_AuthenticationLevel_Proxy( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ unsigned int *puiAuthLevel); - - -void __RPC_STUB IMsRdpClientAdvancedSettings4_get_AuthenticationLevel_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscSecuredSettings_INTERFACE_DEFINED__ -#define __IMsTscSecuredSettings_INTERFACE_DEFINED__ - -/* interface IMsTscSecuredSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscSecuredSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("C9D65442-A0F9-45B2-8F73-D61D2DB8CBB6") - IMsTscSecuredSettings : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_StartProgram( - /* [in] */ BSTR pStartProgram) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_StartProgram( - /* [retval][out] */ BSTR *pStartProgram) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_WorkDir( - /* [in] */ BSTR pWorkDir) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_WorkDir( - /* [retval][out] */ BSTR *pWorkDir) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreen( - /* [in] */ long pfFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_FullScreen( - /* [retval][out] */ long *pfFullScreen) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscSecuredSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscSecuredSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscSecuredSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscSecuredSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscSecuredSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscSecuredSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscSecuredSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscSecuredSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartProgram )( - IMsTscSecuredSettings * This, - /* [in] */ BSTR pStartProgram); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartProgram )( - IMsTscSecuredSettings * This, - /* [retval][out] */ BSTR *pStartProgram); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WorkDir )( - IMsTscSecuredSettings * This, - /* [in] */ BSTR pWorkDir); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WorkDir )( - IMsTscSecuredSettings * This, - /* [retval][out] */ BSTR *pWorkDir); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsTscSecuredSettings * This, - /* [in] */ long pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsTscSecuredSettings * This, - /* [retval][out] */ long *pfFullScreen); - - END_INTERFACE - } IMsTscSecuredSettingsVtbl; - - interface IMsTscSecuredSettings - { - CONST_VTBL struct IMsTscSecuredSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscSecuredSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscSecuredSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscSecuredSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscSecuredSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscSecuredSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscSecuredSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscSecuredSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscSecuredSettings_put_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> put_StartProgram(This,pStartProgram) ) - -#define IMsTscSecuredSettings_get_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> get_StartProgram(This,pStartProgram) ) - -#define IMsTscSecuredSettings_put_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> put_WorkDir(This,pWorkDir) ) - -#define IMsTscSecuredSettings_get_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> get_WorkDir(This,pWorkDir) ) - -#define IMsTscSecuredSettings_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsTscSecuredSettings_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscSecuredSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ -#define __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ - -/* interface IMsRdpClientSecuredSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientSecuredSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("605BEFCF-39C1-45CC-A811-068FB7BE346D") - IMsRdpClientSecuredSettings : public IMsTscSecuredSettings - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardHookMode( - /* [in] */ long pkeyboardHookMode) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardHookMode( - /* [retval][out] */ long *pkeyboardHookMode) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AudioRedirectionMode( - /* [in] */ long pAudioRedirectionMode) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AudioRedirectionMode( - /* [retval][out] */ long *pAudioRedirectionMode) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientSecuredSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientSecuredSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientSecuredSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientSecuredSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientSecuredSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientSecuredSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientSecuredSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientSecuredSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartProgram )( - IMsRdpClientSecuredSettings * This, - /* [in] */ BSTR pStartProgram); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartProgram )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ BSTR *pStartProgram); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WorkDir )( - IMsRdpClientSecuredSettings * This, - /* [in] */ BSTR pWorkDir); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WorkDir )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ BSTR *pWorkDir); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pfFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardHookMode )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pkeyboardHookMode); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardHookMode )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pkeyboardHookMode); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AudioRedirectionMode )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pAudioRedirectionMode); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AudioRedirectionMode )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pAudioRedirectionMode); - - END_INTERFACE - } IMsRdpClientSecuredSettingsVtbl; - - interface IMsRdpClientSecuredSettings - { - CONST_VTBL struct IMsRdpClientSecuredSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientSecuredSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientSecuredSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientSecuredSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientSecuredSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientSecuredSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientSecuredSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientSecuredSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientSecuredSettings_put_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> put_StartProgram(This,pStartProgram) ) - -#define IMsRdpClientSecuredSettings_get_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> get_StartProgram(This,pStartProgram) ) - -#define IMsRdpClientSecuredSettings_put_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> put_WorkDir(This,pWorkDir) ) - -#define IMsRdpClientSecuredSettings_get_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> get_WorkDir(This,pWorkDir) ) - -#define IMsRdpClientSecuredSettings_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClientSecuredSettings_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - - -#define IMsRdpClientSecuredSettings_put_KeyboardHookMode(This,pkeyboardHookMode) \ - ( (This)->lpVtbl -> put_KeyboardHookMode(This,pkeyboardHookMode) ) - -#define IMsRdpClientSecuredSettings_get_KeyboardHookMode(This,pkeyboardHookMode) \ - ( (This)->lpVtbl -> get_KeyboardHookMode(This,pkeyboardHookMode) ) - -#define IMsRdpClientSecuredSettings_put_AudioRedirectionMode(This,pAudioRedirectionMode) \ - ( (This)->lpVtbl -> put_AudioRedirectionMode(This,pAudioRedirectionMode) ) - -#define IMsRdpClientSecuredSettings_get_AudioRedirectionMode(This,pAudioRedirectionMode) \ - ( (This)->lpVtbl -> get_AudioRedirectionMode(This,pAudioRedirectionMode) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscDebug_INTERFACE_DEFINED__ -#define __IMsTscDebug_INTERFACE_DEFINED__ - -/* interface IMsTscDebug */ -/* [object][oleautomation][dual][hidden][uuid] */ - - -EXTERN_C const IID IID_IMsTscDebug; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("209D0EB9-6254-47B1-9033-A98DAE55BB27") - IMsTscDebug : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchBitmapPDU( - /* [in] */ long phatchBitmapPDU) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchBitmapPDU( - /* [retval][out] */ long *phatchBitmapPDU) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchSSBOrder( - /* [in] */ long phatchSSBOrder) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchSSBOrder( - /* [retval][out] */ long *phatchSSBOrder) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchMembltOrder( - /* [in] */ long phatchMembltOrder) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchMembltOrder( - /* [retval][out] */ long *phatchMembltOrder) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchIndexPDU( - /* [in] */ long phatchIndexPDU) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchIndexPDU( - /* [retval][out] */ long *phatchIndexPDU) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_LabelMemblt( - /* [in] */ long plabelMemblt) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_LabelMemblt( - /* [retval][out] */ long *plabelMemblt) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapCacheMonitor( - /* [in] */ long pbitmapCacheMonitor) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapCacheMonitor( - /* [retval][out] */ long *pbitmapCacheMonitor) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MallocFailuresPercent( - /* [in] */ long pmallocFailuresPercent) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MallocFailuresPercent( - /* [retval][out] */ long *pmallocFailuresPercent) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MallocHugeFailuresPercent( - /* [in] */ long pmallocHugeFailuresPercent) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MallocHugeFailuresPercent( - /* [retval][out] */ long *pmallocHugeFailuresPercent) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NetThroughput( - /* [in] */ long NetThroughput) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NetThroughput( - /* [retval][out] */ long *NetThroughput) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CLXCmdLine( - /* [in] */ BSTR pCLXCmdLine) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CLXCmdLine( - /* [retval][out] */ BSTR *pCLXCmdLine) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CLXDll( - /* [in] */ BSTR pCLXDll) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CLXDll( - /* [retval][out] */ BSTR *pCLXDll) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscDebugVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscDebug * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscDebug * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscDebug * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscDebug * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscDebug * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscDebug * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscDebug * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchBitmapPDU )( - IMsTscDebug * This, - /* [in] */ long phatchBitmapPDU); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchBitmapPDU )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchBitmapPDU); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchSSBOrder )( - IMsTscDebug * This, - /* [in] */ long phatchSSBOrder); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchSSBOrder )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchSSBOrder); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchMembltOrder )( - IMsTscDebug * This, - /* [in] */ long phatchMembltOrder); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchMembltOrder )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchMembltOrder); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchIndexPDU )( - IMsTscDebug * This, - /* [in] */ long phatchIndexPDU); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchIndexPDU )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchIndexPDU); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LabelMemblt )( - IMsTscDebug * This, - /* [in] */ long plabelMemblt); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LabelMemblt )( - IMsTscDebug * This, - /* [retval][out] */ long *plabelMemblt); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheMonitor )( - IMsTscDebug * This, - /* [in] */ long pbitmapCacheMonitor); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheMonitor )( - IMsTscDebug * This, - /* [retval][out] */ long *pbitmapCacheMonitor); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MallocFailuresPercent )( - IMsTscDebug * This, - /* [in] */ long pmallocFailuresPercent); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MallocFailuresPercent )( - IMsTscDebug * This, - /* [retval][out] */ long *pmallocFailuresPercent); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MallocHugeFailuresPercent )( - IMsTscDebug * This, - /* [in] */ long pmallocHugeFailuresPercent); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MallocHugeFailuresPercent )( - IMsTscDebug * This, - /* [retval][out] */ long *pmallocHugeFailuresPercent); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NetThroughput )( - IMsTscDebug * This, - /* [in] */ long NetThroughput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NetThroughput )( - IMsTscDebug * This, - /* [retval][out] */ long *NetThroughput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CLXCmdLine )( - IMsTscDebug * This, - /* [in] */ BSTR pCLXCmdLine); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLXCmdLine )( - IMsTscDebug * This, - /* [retval][out] */ BSTR *pCLXCmdLine); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CLXDll )( - IMsTscDebug * This, - /* [in] */ BSTR pCLXDll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLXDll )( - IMsTscDebug * This, - /* [retval][out] */ BSTR *pCLXDll); - - END_INTERFACE - } IMsTscDebugVtbl; - - interface IMsTscDebug - { - CONST_VTBL struct IMsTscDebugVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscDebug_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscDebug_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscDebug_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscDebug_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscDebug_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscDebug_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscDebug_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscDebug_put_HatchBitmapPDU(This,phatchBitmapPDU) \ - ( (This)->lpVtbl -> put_HatchBitmapPDU(This,phatchBitmapPDU) ) - -#define IMsTscDebug_get_HatchBitmapPDU(This,phatchBitmapPDU) \ - ( (This)->lpVtbl -> get_HatchBitmapPDU(This,phatchBitmapPDU) ) - -#define IMsTscDebug_put_HatchSSBOrder(This,phatchSSBOrder) \ - ( (This)->lpVtbl -> put_HatchSSBOrder(This,phatchSSBOrder) ) - -#define IMsTscDebug_get_HatchSSBOrder(This,phatchSSBOrder) \ - ( (This)->lpVtbl -> get_HatchSSBOrder(This,phatchSSBOrder) ) - -#define IMsTscDebug_put_HatchMembltOrder(This,phatchMembltOrder) \ - ( (This)->lpVtbl -> put_HatchMembltOrder(This,phatchMembltOrder) ) - -#define IMsTscDebug_get_HatchMembltOrder(This,phatchMembltOrder) \ - ( (This)->lpVtbl -> get_HatchMembltOrder(This,phatchMembltOrder) ) - -#define IMsTscDebug_put_HatchIndexPDU(This,phatchIndexPDU) \ - ( (This)->lpVtbl -> put_HatchIndexPDU(This,phatchIndexPDU) ) - -#define IMsTscDebug_get_HatchIndexPDU(This,phatchIndexPDU) \ - ( (This)->lpVtbl -> get_HatchIndexPDU(This,phatchIndexPDU) ) - -#define IMsTscDebug_put_LabelMemblt(This,plabelMemblt) \ - ( (This)->lpVtbl -> put_LabelMemblt(This,plabelMemblt) ) - -#define IMsTscDebug_get_LabelMemblt(This,plabelMemblt) \ - ( (This)->lpVtbl -> get_LabelMemblt(This,plabelMemblt) ) - -#define IMsTscDebug_put_BitmapCacheMonitor(This,pbitmapCacheMonitor) \ - ( (This)->lpVtbl -> put_BitmapCacheMonitor(This,pbitmapCacheMonitor) ) - -#define IMsTscDebug_get_BitmapCacheMonitor(This,pbitmapCacheMonitor) \ - ( (This)->lpVtbl -> get_BitmapCacheMonitor(This,pbitmapCacheMonitor) ) - -#define IMsTscDebug_put_MallocFailuresPercent(This,pmallocFailuresPercent) \ - ( (This)->lpVtbl -> put_MallocFailuresPercent(This,pmallocFailuresPercent) ) - -#define IMsTscDebug_get_MallocFailuresPercent(This,pmallocFailuresPercent) \ - ( (This)->lpVtbl -> get_MallocFailuresPercent(This,pmallocFailuresPercent) ) - -#define IMsTscDebug_put_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) \ - ( (This)->lpVtbl -> put_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) ) - -#define IMsTscDebug_get_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) \ - ( (This)->lpVtbl -> get_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) ) - -#define IMsTscDebug_put_NetThroughput(This,NetThroughput) \ - ( (This)->lpVtbl -> put_NetThroughput(This,NetThroughput) ) - -#define IMsTscDebug_get_NetThroughput(This,NetThroughput) \ - ( (This)->lpVtbl -> get_NetThroughput(This,NetThroughput) ) - -#define IMsTscDebug_put_CLXCmdLine(This,pCLXCmdLine) \ - ( (This)->lpVtbl -> put_CLXCmdLine(This,pCLXCmdLine) ) - -#define IMsTscDebug_get_CLXCmdLine(This,pCLXCmdLine) \ - ( (This)->lpVtbl -> get_CLXCmdLine(This,pCLXCmdLine) ) - -#define IMsTscDebug_put_CLXDll(This,pCLXDll) \ - ( (This)->lpVtbl -> put_CLXDll(This,pCLXDll) ) - -#define IMsTscDebug_get_CLXDll(This,pCLXDll) \ - ( (This)->lpVtbl -> get_CLXDll(This,pCLXDll) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscDebug_INTERFACE_DEFINED__ */ - - -EXTERN_C const CLSID CLSID_MsTscAx; - -#ifdef __cplusplus - -class DECLSPEC_UUID("A41A4187-5A86-4E26-B40A-856F9035D9CB") -MsTscAx; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient; - -#ifdef __cplusplus - -class DECLSPEC_UUID("7CACBD7B-0D99-468F-AC33-22E495C0AFE5") -MsRdpClient; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient2; - -#ifdef __cplusplus - -class DECLSPEC_UUID("3523C2FB-4031-44E4-9A3B-F1E94986EE7F") -MsRdpClient2; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient3; - -#ifdef __cplusplus - -class DECLSPEC_UUID("ACE575FD-1FCF-4074-9401-EBAB990FA9DE") -MsRdpClient3; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient4; - -#ifdef __cplusplus - -class DECLSPEC_UUID("6AE29350-321B-42BE-BBE5-12FB5270C0DE") -MsRdpClient4; -#endif -#endif /* __MSTSCLib_LIBRARY_DEFINED__ */ - -/* Additional Prototypes for ALL interfaces */ - -/* end of Additional Prototypes */ - -#ifdef __cplusplus -} -#endif - -#endif - - diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_i.c b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_i.c deleted file mode 100644 index b66a1a51b68..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_i.c +++ /dev/null @@ -1,145 +0,0 @@ - - -/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */ - -/* link this file in with the server and any clients */ - - - /* File created by MIDL compiler version 7.00.0493 */ -/* at Sun Aug 13 16:46:06 2006 - */ -/* Compiler settings for .\mstsclib.idl: - Oicf, W1, Zp8, env=Win32 (32b run) - protocol : dce , ms_ext, c_ext, robust - error checks: allocation ref bounds_check enum stub_data - VC __declspec() decoration level: - __declspec(uuid()), __declspec(selectany), __declspec(novtable) - DECLSPEC_UUID(), MIDL_INTERFACE() -*/ -//@@MIDL_FILE_HEADING( ) - -#pragma warning( disable: 4049 ) /* more than 64k source lines */ - - -#ifdef __cplusplus -extern "C"{ -#endif - - -#include -#include - -#ifdef _MIDL_USE_GUIDDEF_ - -#ifndef INITGUID -#define INITGUID -#include -#undef INITGUID -#else -#include -#endif - -#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \ - DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) - -#else // !_MIDL_USE_GUIDDEF_ - -#ifndef __IID_DEFINED__ -#define __IID_DEFINED__ - -typedef struct _IID -{ - unsigned long x; - unsigned short s1; - unsigned short s2; - unsigned char c[8]; -} IID; - -#endif // __IID_DEFINED__ - -#ifndef CLSID_DEFINED -#define CLSID_DEFINED -typedef IID CLSID; -#endif // CLSID_DEFINED - -#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \ - const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}} - -#endif !_MIDL_USE_GUIDDEF_ - -MIDL_DEFINE_GUID(IID, LIBID_MSTSCLib,0x8C11EFA1,0x92C3,0x11D1,0xBC,0x1E,0x00,0xC0,0x4F,0xA3,0x14,0x89); - - -MIDL_DEFINE_GUID(IID, DIID_IMsTscAxEvents,0x336D5562,0xEFA8,0x482E,0x8C,0xB3,0xC5,0xC0,0xFC,0x7A,0x7D,0xB6); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscAx,0x8C11EFAE,0x92C3,0x11D1,0xBC,0x1E,0x00,0xC0,0x4F,0xA3,0x14,0x89); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient,0x92B4A539,0x7115,0x4B7C,0xA5,0xA9,0xE5,0xD9,0xEF,0xC2,0x78,0x0A); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient2,0xE7E17DC4,0x3B71,0x4BA7,0xA8,0xE6,0x28,0x1F,0xFA,0xDC,0xA2,0x8F); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient3,0x91B7CBC5,0xA72E,0x4FA0,0x93,0x00,0xD6,0x47,0xD7,0xE8,0x97,0xFF); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient4,0x095E0738,0xD97D,0x488B,0xB9,0xF6,0xDD,0x0E,0x8D,0x66,0xC0,0xDE); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscNonScriptable,0xC1E6743A,0x41C1,0x4A74,0x83,0x2A,0x0D,0xD0,0x6C,0x1C,0x7A,0x0E); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable,0x2F079C4C,0x87B2,0x4AFD,0x97,0xAB,0x20,0xCD,0xB4,0x30,0x38,0xAE); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable2,0x17A5E535,0x4072,0x4FA4,0xAF,0x32,0xC8,0xD0,0xD4,0x73,0x45,0xE9); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscAdvancedSettings,0x809945CC,0x4B3B,0x4A92,0xA6,0xB0,0xDB,0xF9,0xB5,0xF2,0xEF,0x2D); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings,0x3C65B4AB,0x12B3,0x465B,0xAC,0xD4,0xB8,0xDA,0xD3,0xBF,0xF9,0xE2); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings2,0x9AC42117,0x2B76,0x4320,0xAA,0x44,0x0E,0x61,0x6A,0xB8,0x43,0x7B); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings3,0x19CD856B,0xC542,0x4C53,0xAC,0xEE,0xF1,0x27,0xE3,0xBE,0x1A,0x59); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings4,0xFBA7F64E,0x7345,0x4405,0xAE,0x50,0xFA,0x4A,0x76,0x3D,0xC0,0xDE); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscSecuredSettings,0xC9D65442,0xA0F9,0x45B2,0x8F,0x73,0xD6,0x1D,0x2D,0xB8,0xCB,0xB6); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientSecuredSettings,0x605BEFCF,0x39C1,0x45CC,0xA8,0x11,0x06,0x8F,0xB7,0xBE,0x34,0x6D); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscDebug,0x209D0EB9,0x6254,0x47B1,0x90,0x33,0xA9,0x8D,0xAE,0x55,0xBB,0x27); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsTscAx,0xA41A4187,0x5A86,0x4E26,0xB4,0x0A,0x85,0x6F,0x90,0x35,0xD9,0xCB); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient,0x7CACBD7B,0x0D99,0x468F,0xAC,0x33,0x22,0xE4,0x95,0xC0,0xAF,0xE5); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient2,0x3523C2FB,0x4031,0x44E4,0x9A,0x3B,0xF1,0xE9,0x49,0x86,0xEE,0x7F); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient3,0xACE575FD,0x1FCF,0x4074,0x94,0x01,0xEB,0xAB,0x99,0x0F,0xA9,0xDE); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient4,0x6AE29350,0x321B,0x42BE,0xBB,0xE5,0x12,0xFB,0x52,0x70,0xC0,0xDE); - -#undef MIDL_DEFINE_GUID - -#ifdef __cplusplus -} -#endif - - - diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.idl b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.idl deleted file mode 100644 index 8a2421bc5e5..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.idl +++ /dev/null @@ -1,3 +0,0 @@ -#define MSTSCLIB_REDIST_ -#include "./mstsclib.idl" -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.rc b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.rc deleted file mode 100644 index 3cbb8ee6746..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist.rc +++ /dev/null @@ -1,3 +0,0 @@ -#define TYPELIB_RESOURCEID__ 2 -#include "./typelib.rh" -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_h.h b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_h.h deleted file mode 100644 index 3ee3213df53..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_h.h +++ /dev/null @@ -1,8946 +0,0 @@ - - -/* this ALWAYS GENERATED file contains the definitions for the interfaces */ - - - /* File created by MIDL compiler version 7.00.0493 */ -/* at Sun Aug 13 16:46:05 2006 - */ -/* Compiler settings for .\mstsclib_redist.idl: - Oicf, W1, Zp8, env=Win32 (32b run) - protocol : dce , ms_ext, c_ext, robust - error checks: allocation ref bounds_check enum stub_data - VC __declspec() decoration level: - __declspec(uuid()), __declspec(selectany), __declspec(novtable) - DECLSPEC_UUID(), MIDL_INTERFACE() -*/ -//@@MIDL_FILE_HEADING( ) - -#pragma warning( disable: 4049 ) /* more than 64k source lines */ - - -/* verify that the version is high enough to compile this file*/ -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif - -#include "rpc.h" -#include "rpcndr.h" - -#ifndef __RPCNDR_H_VERSION__ -#error this stub requires an updated version of -#endif // __RPCNDR_H_VERSION__ - - -#ifndef __mstsclib_redist_h_h__ -#define __mstsclib_redist_h_h__ - -#if defined(_MSC_VER) && (_MSC_VER >= 1020) -#pragma once -#endif - -/* Forward Declarations */ - -#ifndef __IMsTscAxEvents_FWD_DEFINED__ -#define __IMsTscAxEvents_FWD_DEFINED__ -typedef interface IMsTscAxEvents IMsTscAxEvents; -#endif /* __IMsTscAxEvents_FWD_DEFINED__ */ - - -#ifndef __IMsTscAx_FWD_DEFINED__ -#define __IMsTscAx_FWD_DEFINED__ -typedef interface IMsTscAx IMsTscAx; -#endif /* __IMsTscAx_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient_FWD_DEFINED__ -#define __IMsRdpClient_FWD_DEFINED__ -typedef interface IMsRdpClient IMsRdpClient; -#endif /* __IMsRdpClient_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient2_FWD_DEFINED__ -#define __IMsRdpClient2_FWD_DEFINED__ -typedef interface IMsRdpClient2 IMsRdpClient2; -#endif /* __IMsRdpClient2_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient3_FWD_DEFINED__ -#define __IMsRdpClient3_FWD_DEFINED__ -typedef interface IMsRdpClient3 IMsRdpClient3; -#endif /* __IMsRdpClient3_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClient4_FWD_DEFINED__ -#define __IMsRdpClient4_FWD_DEFINED__ -typedef interface IMsRdpClient4 IMsRdpClient4; -#endif /* __IMsRdpClient4_FWD_DEFINED__ */ - - -#ifndef __IMsTscNonScriptable_FWD_DEFINED__ -#define __IMsTscNonScriptable_FWD_DEFINED__ -typedef interface IMsTscNonScriptable IMsTscNonScriptable; -#endif /* __IMsTscNonScriptable_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable_FWD_DEFINED__ -#define __IMsRdpClientNonScriptable_FWD_DEFINED__ -typedef interface IMsRdpClientNonScriptable IMsRdpClientNonScriptable; -#endif /* __IMsRdpClientNonScriptable_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable2_FWD_DEFINED__ -#define __IMsRdpClientNonScriptable2_FWD_DEFINED__ -typedef interface IMsRdpClientNonScriptable2 IMsRdpClientNonScriptable2; -#endif /* __IMsRdpClientNonScriptable2_FWD_DEFINED__ */ - - -#ifndef __IMsTscAdvancedSettings_FWD_DEFINED__ -#define __IMsTscAdvancedSettings_FWD_DEFINED__ -typedef interface IMsTscAdvancedSettings IMsTscAdvancedSettings; -#endif /* __IMsTscAdvancedSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings IMsRdpClientAdvancedSettings; -#endif /* __IMsRdpClientAdvancedSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings2 IMsRdpClientAdvancedSettings2; -#endif /* __IMsRdpClientAdvancedSettings2_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings3 IMsRdpClientAdvancedSettings3; -#endif /* __IMsRdpClientAdvancedSettings3_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ -#define __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ -typedef interface IMsRdpClientAdvancedSettings4 IMsRdpClientAdvancedSettings4; -#endif /* __IMsRdpClientAdvancedSettings4_FWD_DEFINED__ */ - - -#ifndef __IMsTscSecuredSettings_FWD_DEFINED__ -#define __IMsTscSecuredSettings_FWD_DEFINED__ -typedef interface IMsTscSecuredSettings IMsTscSecuredSettings; -#endif /* __IMsTscSecuredSettings_FWD_DEFINED__ */ - - -#ifndef __IMsRdpClientSecuredSettings_FWD_DEFINED__ -#define __IMsRdpClientSecuredSettings_FWD_DEFINED__ -typedef interface IMsRdpClientSecuredSettings IMsRdpClientSecuredSettings; -#endif /* __IMsRdpClientSecuredSettings_FWD_DEFINED__ */ - - -#ifndef __IMsTscDebug_FWD_DEFINED__ -#define __IMsTscDebug_FWD_DEFINED__ -typedef interface IMsTscDebug IMsTscDebug; -#endif /* __IMsTscDebug_FWD_DEFINED__ */ - - -#ifndef __MsTscAx_FWD_DEFINED__ -#define __MsTscAx_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsTscAx MsTscAx; -#else -typedef struct MsTscAx MsTscAx; -#endif /* __cplusplus */ - -#endif /* __MsTscAx_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient_FWD_DEFINED__ -#define __MsRdpClient_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient MsRdpClient; -#else -typedef struct MsRdpClient MsRdpClient; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient2_FWD_DEFINED__ -#define __MsRdpClient2_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient2 MsRdpClient2; -#else -typedef struct MsRdpClient2 MsRdpClient2; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient2_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient3_FWD_DEFINED__ -#define __MsRdpClient3_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient3 MsRdpClient3; -#else -typedef struct MsRdpClient3 MsRdpClient3; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient3_FWD_DEFINED__ */ - - -#ifndef __MsRdpClient4_FWD_DEFINED__ -#define __MsRdpClient4_FWD_DEFINED__ - -#ifdef __cplusplus -typedef class MsRdpClient4 MsRdpClient4; -#else -typedef struct MsRdpClient4 MsRdpClient4; -#endif /* __cplusplus */ - -#endif /* __MsRdpClient4_FWD_DEFINED__ */ - - -#ifdef __cplusplus -extern "C"{ -#endif - - - -#ifndef __MSTSCLib_LIBRARY_DEFINED__ -#define __MSTSCLib_LIBRARY_DEFINED__ - -/* library MSTSCLib */ -/* [version][uuid] */ - - - - - - - - - - - - - - - - - - -typedef /* [public][public][public] */ -enum __MIDL___MIDL_itf_mstsax_0275_0001 - { autoReconnectContinueAutomatic = 0, - autoReconnectContinueStop = 1, - autoReconnectContinueManual = 2 - } AutoReconnectContinueState; - -typedef /* [public][public][public] */ -enum __MIDL_IMsRdpClient_0001 - { exDiscReasonNoInfo = 0, - exDiscReasonAPIInitiatedDisconnect = 1, - exDiscReasonAPIInitiatedLogoff = 2, - exDiscReasonServerIdleTimeout = 3, - exDiscReasonServerLogonTimeout = 4, - exDiscReasonReplacedByOtherConnection = 5, - exDiscReasonOutOfMemory = 6, - exDiscReasonServerDeniedConnection = 7, - exDiscReasonServerDeniedConnectionFips = 8, - exDiscReasonLicenseInternal = 256, - exDiscReasonLicenseNoLicenseServer = 257, - exDiscReasonLicenseNoLicense = 258, - exDiscReasonLicenseErrClientMsg = 259, - exDiscReasonLicenseHwidDoesntMatchLicense = 260, - exDiscReasonLicenseErrClientLicense = 261, - exDiscReasonLicenseCantFinishProtocol = 262, - exDiscReasonLicenseClientEndedProtocol = 263, - exDiscReasonLicenseErrClientEncryption = 264, - exDiscReasonLicenseCantUpgradeLicense = 265, - exDiscReasonLicenseNoRemoteConnections = 266, - exDiscReasonProtocolRangeStart = 4096, - exDiscReasonProtocolRangeEnd = 32767 - } ExtendedDisconnectReasonCode; - -typedef /* [public][public][public] */ -enum __MIDL_IMsRdpClient_0002 - { controlCloseCanProceed = 0, - controlCloseWaitForEvents = 1 - } ControlCloseStatus; - -typedef /* [custom][public] */ unsigned __int3264 UINT_PTR; - -typedef /* [custom][public] */ __int3264 LONG_PTR; - - -EXTERN_C const IID LIBID_MSTSCLib; - -#ifndef __IMsTscAxEvents_DISPINTERFACE_DEFINED__ -#define __IMsTscAxEvents_DISPINTERFACE_DEFINED__ - -/* dispinterface IMsTscAxEvents */ -/* [uuid] */ - - -EXTERN_C const IID DIID_IMsTscAxEvents; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("336D5562-EFA8-482E-8CB3-C5C0FC7A7DB6") - IMsTscAxEvents : public IDispatch - { - }; - -#else /* C style interface */ - - typedef struct IMsTscAxEventsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAxEvents * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAxEvents * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAxEvents * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAxEvents * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAxEvents * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAxEvents * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAxEvents * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - END_INTERFACE - } IMsTscAxEventsVtbl; - - interface IMsTscAxEvents - { - CONST_VTBL struct IMsTscAxEventsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAxEvents_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAxEvents_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAxEvents_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAxEvents_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAxEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAxEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAxEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - -#endif /* __IMsTscAxEvents_DISPINTERFACE_DEFINED__ */ - - -#ifndef __IMsTscAx_INTERFACE_DEFINED__ -#define __IMsTscAx_INTERFACE_DEFINED__ - -/* interface IMsTscAx */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscAx; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("327BB5CD-834E-4400-AEF2-B30E15E5D682") - IMsTscAx : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Server( - /* [in] */ BSTR pServer) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Server( - /* [retval][out] */ BSTR *pServer) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Domain( - /* [in] */ BSTR pDomain) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Domain( - /* [retval][out] */ BSTR *pDomain) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_UserName( - /* [in] */ BSTR pUserName) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_UserName( - /* [retval][out] */ BSTR *pUserName) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisconnectedText( - /* [in] */ BSTR pDisconnectedText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisconnectedText( - /* [retval][out] */ BSTR *pDisconnectedText) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectingText( - /* [in] */ BSTR pConnectingText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectingText( - /* [retval][out] */ BSTR *pConnectingText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Connected( - /* [retval][out] */ short *pIsConnected) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DesktopWidth( - /* [in] */ long pVal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DesktopWidth( - /* [retval][out] */ long *pVal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DesktopHeight( - /* [in] */ long pVal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DesktopHeight( - /* [retval][out] */ long *pVal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_StartConnected( - /* [in] */ long pfStartConnected) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_StartConnected( - /* [retval][out] */ long *pfStartConnected) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HorizontalScrollBarVisible( - /* [retval][out] */ long *pfHScrollVisible) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_VerticalScrollBarVisible( - /* [retval][out] */ long *pfVScrollVisible) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreenTitle( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CipherStrength( - /* [retval][out] */ long *pCipherStrength) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Version( - /* [retval][out] */ BSTR *pVersion) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettingsEnabled( - /* [retval][out] */ long *pSecuredSettingsEnabled) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettings( - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings( - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings) = 0; - - virtual /* [hidden][propget][id] */ HRESULT STDMETHODCALLTYPE get_Debugger( - /* [retval][out] */ IMsTscDebug **ppDebugger) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE Connect( void) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE Disconnect( void) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE CreateVirtualChannels( - /* [in] */ BSTR newVal) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE SendOnVirtualChannel( - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscAxVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAx * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAx * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAx * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAx * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAx * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAx * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAx * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsTscAx * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsTscAx * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsTscAx * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsTscAx * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsTscAx * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsTscAx * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsTscAx * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsTscAx * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsTscAx * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsTscAx * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsTscAx * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsTscAx * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsTscAx * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsTscAx * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsTscAx * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsTscAx * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsTscAx * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsTscAx * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsTscAx * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsTscAx * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsTscAx * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsTscAx * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsTscAx * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsTscAx * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsTscAx * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - END_INTERFACE - } IMsTscAxVtbl; - - interface IMsTscAx - { - CONST_VTBL struct IMsTscAxVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAx_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAx_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAx_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAx_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscAx_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsTscAx_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsTscAx_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsTscAx_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsTscAx_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsTscAx_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsTscAx_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsTscAx_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsTscAx_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsTscAx_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsTscAx_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsTscAx_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsTscAx_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsTscAx_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsTscAx_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsTscAx_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsTscAx_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsTscAx_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsTscAx_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsTscAx_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsTscAx_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsTscAx_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsTscAx_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsTscAx_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsTscAx_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsTscAx_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsTscAx_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsTscAx_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsTscAx_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsTscAx_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscAx_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient_INTERFACE_DEFINED__ -#define __IMsRdpClient_INTERFACE_DEFINED__ - -/* interface IMsRdpClient */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("92B4A539-7115-4B7C-A5A9-E5D9EFC2780A") - IMsRdpClient : public IMsTscAx - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ColorDepth( - /* [in] */ long pcolorDepth) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ColorDepth( - /* [retval][out] */ long *pcolorDepth) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings2( - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SecuredSettings2( - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ExtendedDisconnectReason( - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreen( - /* [in] */ VARIANT_BOOL pfFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_FullScreen( - /* [retval][out] */ VARIANT_BOOL *pfFullScreen) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE SetVirtualChannelOptions( - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE GetVirtualChannelOptions( - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions) = 0; - - virtual /* [id] */ HRESULT STDMETHODCALLTYPE RequestClose( - /* [retval][out] */ ControlCloseStatus *pCloseStatus) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - END_INTERFACE - } IMsRdpClientVtbl; - - interface IMsRdpClient - { - CONST_VTBL struct IMsRdpClientVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient2_INTERFACE_DEFINED__ -#define __IMsRdpClient2_INTERFACE_DEFINED__ - -/* interface IMsRdpClient2 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("E7E17DC4-3B71-4BA7-A8E6-281FFADCA28F") - IMsRdpClient2 : public IMsRdpClient - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings3( - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectedStatusText( - /* [in] */ BSTR pConnectedStatusText) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectedStatusText( - /* [retval][out] */ BSTR *pConnectedStatusText) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient2 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient2 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient2 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient2 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient2 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient2 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient2 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient2 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient2 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient2 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient2 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient2 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient2 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient2 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient2 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient2 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient2 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient2 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient2 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient2 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient2 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient2 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient2 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient2 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient2 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient2 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - END_INTERFACE - } IMsRdpClient2Vtbl; - - interface IMsRdpClient2 - { - CONST_VTBL struct IMsRdpClient2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient2_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient2_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient2_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient2_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient2_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient2_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient2_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient2_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient2_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient2_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient2_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient2_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient2_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient2_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient2_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient2_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient2_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient2_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient2_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient2_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient2_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient2_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient2_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient2_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient2_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient2_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient2_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient2_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient2_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient2_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient2_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient2_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient2_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient2_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient2_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient2_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient2_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient2_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient2_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient2_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient2_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient2_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient2_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient2_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient3_INTERFACE_DEFINED__ -#define __IMsRdpClient3_INTERFACE_DEFINED__ - -/* interface IMsRdpClient3 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient3; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("91B7CBC5-A72E-4FA0-9300-D647D7E897FF") - IMsRdpClient3 : public IMsRdpClient2 - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings4( - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient3Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient3 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient3 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient3 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient3 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient3 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient3 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient3 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient3 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient3 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient3 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient3 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient3 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient3 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient3 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient3 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient3 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient3 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient3 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient3 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient3 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient3 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient3 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient3 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient3 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient3 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient3 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient3 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings4 )( - IMsRdpClient3 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings); - - END_INTERFACE - } IMsRdpClient3Vtbl; - - interface IMsRdpClient3 - { - CONST_VTBL struct IMsRdpClient3Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient3_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient3_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient3_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient3_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient3_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient3_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient3_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient3_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient3_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient3_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient3_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient3_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient3_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient3_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient3_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient3_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient3_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient3_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient3_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient3_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient3_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient3_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient3_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient3_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient3_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient3_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient3_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient3_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient3_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient3_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient3_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient3_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient3_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient3_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient3_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient3_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient3_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient3_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient3_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient3_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient3_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient3_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient3_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient3_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient3_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient3_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient3_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - - -#define IMsRdpClient3_get_AdvancedSettings4(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings4(This,ppAdvSettings) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient3_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClient4_INTERFACE_DEFINED__ -#define __IMsRdpClient4_INTERFACE_DEFINED__ - -/* interface IMsRdpClient4 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClient4; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("095E0738-D97D-488B-B9F6-DD0E8D66C0DE") - IMsRdpClient4 : public IMsRdpClient3 - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AdvancedSettings5( - /* [retval][out] */ IMsRdpClientAdvancedSettings4 **ppAdvSettings5) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClient4Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClient4 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClient4 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClient4 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClient4 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClient4 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClient4 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClient4 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Server )( - IMsRdpClient4 * This, - /* [in] */ BSTR pServer); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Server )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pServer); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Domain )( - IMsRdpClient4 * This, - /* [in] */ BSTR pDomain); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Domain )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pDomain); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UserName )( - IMsRdpClient4 * This, - /* [in] */ BSTR pUserName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UserName )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pUserName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisconnectedText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pDisconnectedText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisconnectedText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pDisconnectedText); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectingText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectingText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pConnectingText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Connected )( - IMsRdpClient4 * This, - /* [retval][out] */ short *pIsConnected); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopWidth )( - IMsRdpClient4 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopWidth )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DesktopHeight )( - IMsRdpClient4 * This, - /* [in] */ long pVal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DesktopHeight )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pVal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartConnected )( - IMsRdpClient4 * This, - /* [in] */ long pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartConnected )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfStartConnected); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HorizontalScrollBarVisible )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfHScrollVisible); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_VerticalScrollBarVisible )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pfVScrollVisible); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreenTitle )( - IMsRdpClient4 * This, - /* [in] */ BSTR rhs); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CipherStrength )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pCipherStrength); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Version )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pVersion); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettingsEnabled )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pSecuredSettingsEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscAdvancedSettings **ppAdvSettings); - - /* [hidden][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Debugger )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsTscDebug **ppDebugger); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Connect )( - IMsRdpClient4 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *Disconnect )( - IMsRdpClient4 * This); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannels )( - IMsRdpClient4 * This, - /* [in] */ BSTR newVal); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SendOnVirtualChannel )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [in] */ BSTR ChanData); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ColorDepth )( - IMsRdpClient4 * This, - /* [in] */ long pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ColorDepth )( - IMsRdpClient4 * This, - /* [retval][out] */ long *pcolorDepth); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings2 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SecuredSettings2 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientSecuredSettings **ppSecuredSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExtendedDisconnectReason )( - IMsRdpClient4 * This, - /* [retval][out] */ ExtendedDisconnectReasonCode *pExtendedDisconnectReason); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClient4 * This, - /* [in] */ VARIANT_BOOL pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClient4 * This, - /* [retval][out] */ VARIANT_BOOL *pfFullScreen); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *SetVirtualChannelOptions )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [in] */ long chanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *GetVirtualChannelOptions )( - IMsRdpClient4 * This, - /* [in] */ BSTR chanName, - /* [retval][out] */ long *pChanOptions); - - /* [id] */ HRESULT ( STDMETHODCALLTYPE *RequestClose )( - IMsRdpClient4 * This, - /* [retval][out] */ ControlCloseStatus *pCloseStatus); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings3 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings2 **ppAdvSettings); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectedStatusText )( - IMsRdpClient4 * This, - /* [in] */ BSTR pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectedStatusText )( - IMsRdpClient4 * This, - /* [retval][out] */ BSTR *pConnectedStatusText); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings4 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings3 **ppAdvSettings); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AdvancedSettings5 )( - IMsRdpClient4 * This, - /* [retval][out] */ IMsRdpClientAdvancedSettings4 **ppAdvSettings5); - - END_INTERFACE - } IMsRdpClient4Vtbl; - - interface IMsRdpClient4 - { - CONST_VTBL struct IMsRdpClient4Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClient4_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClient4_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClient4_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClient4_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClient4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClient4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClient4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClient4_put_Server(This,pServer) \ - ( (This)->lpVtbl -> put_Server(This,pServer) ) - -#define IMsRdpClient4_get_Server(This,pServer) \ - ( (This)->lpVtbl -> get_Server(This,pServer) ) - -#define IMsRdpClient4_put_Domain(This,pDomain) \ - ( (This)->lpVtbl -> put_Domain(This,pDomain) ) - -#define IMsRdpClient4_get_Domain(This,pDomain) \ - ( (This)->lpVtbl -> get_Domain(This,pDomain) ) - -#define IMsRdpClient4_put_UserName(This,pUserName) \ - ( (This)->lpVtbl -> put_UserName(This,pUserName) ) - -#define IMsRdpClient4_get_UserName(This,pUserName) \ - ( (This)->lpVtbl -> get_UserName(This,pUserName) ) - -#define IMsRdpClient4_put_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> put_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient4_get_DisconnectedText(This,pDisconnectedText) \ - ( (This)->lpVtbl -> get_DisconnectedText(This,pDisconnectedText) ) - -#define IMsRdpClient4_put_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> put_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient4_get_ConnectingText(This,pConnectingText) \ - ( (This)->lpVtbl -> get_ConnectingText(This,pConnectingText) ) - -#define IMsRdpClient4_get_Connected(This,pIsConnected) \ - ( (This)->lpVtbl -> get_Connected(This,pIsConnected) ) - -#define IMsRdpClient4_put_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopWidth(This,pVal) ) - -#define IMsRdpClient4_get_DesktopWidth(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopWidth(This,pVal) ) - -#define IMsRdpClient4_put_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> put_DesktopHeight(This,pVal) ) - -#define IMsRdpClient4_get_DesktopHeight(This,pVal) \ - ( (This)->lpVtbl -> get_DesktopHeight(This,pVal) ) - -#define IMsRdpClient4_put_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> put_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient4_get_StartConnected(This,pfStartConnected) \ - ( (This)->lpVtbl -> get_StartConnected(This,pfStartConnected) ) - -#define IMsRdpClient4_get_HorizontalScrollBarVisible(This,pfHScrollVisible) \ - ( (This)->lpVtbl -> get_HorizontalScrollBarVisible(This,pfHScrollVisible) ) - -#define IMsRdpClient4_get_VerticalScrollBarVisible(This,pfVScrollVisible) \ - ( (This)->lpVtbl -> get_VerticalScrollBarVisible(This,pfVScrollVisible) ) - -#define IMsRdpClient4_put_FullScreenTitle(This,rhs) \ - ( (This)->lpVtbl -> put_FullScreenTitle(This,rhs) ) - -#define IMsRdpClient4_get_CipherStrength(This,pCipherStrength) \ - ( (This)->lpVtbl -> get_CipherStrength(This,pCipherStrength) ) - -#define IMsRdpClient4_get_Version(This,pVersion) \ - ( (This)->lpVtbl -> get_Version(This,pVersion) ) - -#define IMsRdpClient4_get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) \ - ( (This)->lpVtbl -> get_SecuredSettingsEnabled(This,pSecuredSettingsEnabled) ) - -#define IMsRdpClient4_get_SecuredSettings(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings(This,ppSecuredSettings) ) - -#define IMsRdpClient4_get_AdvancedSettings(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings(This,ppAdvSettings) ) - -#define IMsRdpClient4_get_Debugger(This,ppDebugger) \ - ( (This)->lpVtbl -> get_Debugger(This,ppDebugger) ) - -#define IMsRdpClient4_Connect(This) \ - ( (This)->lpVtbl -> Connect(This) ) - -#define IMsRdpClient4_Disconnect(This) \ - ( (This)->lpVtbl -> Disconnect(This) ) - -#define IMsRdpClient4_CreateVirtualChannels(This,newVal) \ - ( (This)->lpVtbl -> CreateVirtualChannels(This,newVal) ) - -#define IMsRdpClient4_SendOnVirtualChannel(This,chanName,ChanData) \ - ( (This)->lpVtbl -> SendOnVirtualChannel(This,chanName,ChanData) ) - - -#define IMsRdpClient4_put_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> put_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient4_get_ColorDepth(This,pcolorDepth) \ - ( (This)->lpVtbl -> get_ColorDepth(This,pcolorDepth) ) - -#define IMsRdpClient4_get_AdvancedSettings2(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings2(This,ppAdvSettings) ) - -#define IMsRdpClient4_get_SecuredSettings2(This,ppSecuredSettings) \ - ( (This)->lpVtbl -> get_SecuredSettings2(This,ppSecuredSettings) ) - -#define IMsRdpClient4_get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) \ - ( (This)->lpVtbl -> get_ExtendedDisconnectReason(This,pExtendedDisconnectReason) ) - -#define IMsRdpClient4_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient4_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClient4_SetVirtualChannelOptions(This,chanName,chanOptions) \ - ( (This)->lpVtbl -> SetVirtualChannelOptions(This,chanName,chanOptions) ) - -#define IMsRdpClient4_GetVirtualChannelOptions(This,chanName,pChanOptions) \ - ( (This)->lpVtbl -> GetVirtualChannelOptions(This,chanName,pChanOptions) ) - -#define IMsRdpClient4_RequestClose(This,pCloseStatus) \ - ( (This)->lpVtbl -> RequestClose(This,pCloseStatus) ) - - -#define IMsRdpClient4_get_AdvancedSettings3(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings3(This,ppAdvSettings) ) - -#define IMsRdpClient4_put_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> put_ConnectedStatusText(This,pConnectedStatusText) ) - -#define IMsRdpClient4_get_ConnectedStatusText(This,pConnectedStatusText) \ - ( (This)->lpVtbl -> get_ConnectedStatusText(This,pConnectedStatusText) ) - - -#define IMsRdpClient4_get_AdvancedSettings4(This,ppAdvSettings) \ - ( (This)->lpVtbl -> get_AdvancedSettings4(This,ppAdvSettings) ) - - -#define IMsRdpClient4_get_AdvancedSettings5(This,ppAdvSettings5) \ - ( (This)->lpVtbl -> get_AdvancedSettings5(This,ppAdvSettings5) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClient4_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscNonScriptable_INTERFACE_DEFINED__ -#define __IMsTscNonScriptable_INTERFACE_DEFINED__ - -/* interface IMsTscNonScriptable */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsTscNonScriptable; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("C1E6743A-41C1-4A74-832A-0DD06C1C7A0E") - IMsTscNonScriptable : public IUnknown - { - public: - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ClearTextPassword( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortablePassword( - /* [in] */ BSTR pPortablePass) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortablePassword( - /* [retval][out] */ BSTR *pPortablePass) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PortableSalt( - /* [in] */ BSTR pPortableSalt) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PortableSalt( - /* [retval][out] */ BSTR *pPortableSalt) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinaryPassword( - /* [in] */ BSTR pBinaryPassword) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinaryPassword( - /* [retval][out] */ BSTR *pBinaryPassword) = 0; - - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_BinarySalt( - /* [in] */ BSTR pSalt) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_BinarySalt( - /* [retval][out] */ BSTR *pSalt) = 0; - - virtual HRESULT STDMETHODCALLTYPE ResetPassword( void) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscNonScriptableVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscNonScriptable * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscNonScriptable * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscNonScriptable * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsTscNonScriptable * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsTscNonScriptable * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsTscNonScriptable * This); - - END_INTERFACE - } IMsTscNonScriptableVtbl; - - interface IMsTscNonScriptable - { - CONST_VTBL struct IMsTscNonScriptableVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscNonScriptable_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscNonScriptable_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscNonScriptable_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscNonScriptable_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsTscNonScriptable_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsTscNonScriptable_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsTscNonScriptable_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsTscNonScriptable_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsTscNonScriptable_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsTscNonScriptable_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsTscNonScriptable_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsTscNonScriptable_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsTscNonScriptable_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscNonScriptable_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ -#define __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ - -/* interface IMsRdpClientNonScriptable */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientNonScriptable; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("2F079C4C-87B2-4AFD-97AB-20CDB43038AE") - IMsRdpClientNonScriptable : public IMsTscNonScriptable - { - public: - virtual HRESULT STDMETHODCALLTYPE NotifyRedirectDeviceChange( - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam) = 0; - - virtual HRESULT STDMETHODCALLTYPE SendKeys( - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientNonScriptableVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientNonScriptable * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientNonScriptable * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientNonScriptable * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsRdpClientNonScriptable * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsRdpClientNonScriptable * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsRdpClientNonScriptable * This); - - HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )( - IMsRdpClientNonScriptable * This, - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam); - - HRESULT ( STDMETHODCALLTYPE *SendKeys )( - IMsRdpClientNonScriptable * This, - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData); - - END_INTERFACE - } IMsRdpClientNonScriptableVtbl; - - interface IMsRdpClientNonScriptable - { - CONST_VTBL struct IMsRdpClientNonScriptableVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientNonScriptable_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientNonScriptable_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientNonScriptable_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientNonScriptable_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientNonScriptable_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - - -#define IMsRdpClientNonScriptable_NotifyRedirectDeviceChange(This,wParam,lParam) \ - ( (This)->lpVtbl -> NotifyRedirectDeviceChange(This,wParam,lParam) ) - -#define IMsRdpClientNonScriptable_SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) \ - ( (This)->lpVtbl -> SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientNonScriptable_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ -#define __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ - -/* interface IMsRdpClientNonScriptable2 */ -/* [object][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientNonScriptable2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("17A5E535-4072-4FA4-AF32-C8D0D47345E9") - IMsRdpClientNonScriptable2 : public IMsRdpClientNonScriptable - { - public: - virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UIParentWindowHandle( - /* [in] */ HWND phwndUIParentWindowHandle) = 0; - - virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UIParentWindowHandle( - /* [retval][out] */ HWND *phwndUIParentWindowHandle) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientNonScriptable2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientNonScriptable2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientNonScriptable2 * This); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR rhs); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortablePassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pPortablePass); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortablePassword )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pPortablePass); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PortableSalt )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pPortableSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PortableSalt )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pPortableSalt); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinaryPassword )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pBinaryPassword); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinaryPassword )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pBinaryPassword); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_BinarySalt )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ BSTR pSalt); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_BinarySalt )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ BSTR *pSalt); - - HRESULT ( STDMETHODCALLTYPE *ResetPassword )( - IMsRdpClientNonScriptable2 * This); - - HRESULT ( STDMETHODCALLTYPE *NotifyRedirectDeviceChange )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ UINT_PTR wParam, - /* [in] */ LONG_PTR lParam); - - HRESULT ( STDMETHODCALLTYPE *SendKeys )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ long numKeys, - /* [in] */ VARIANT_BOOL *pbArrayKeyUp, - /* [in] */ long *plKeyData); - - /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UIParentWindowHandle )( - IMsRdpClientNonScriptable2 * This, - /* [in] */ HWND phwndUIParentWindowHandle); - - /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UIParentWindowHandle )( - IMsRdpClientNonScriptable2 * This, - /* [retval][out] */ HWND *phwndUIParentWindowHandle); - - END_INTERFACE - } IMsRdpClientNonScriptable2Vtbl; - - interface IMsRdpClientNonScriptable2 - { - CONST_VTBL struct IMsRdpClientNonScriptable2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientNonScriptable2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientNonScriptable2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientNonScriptable2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientNonScriptable2_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientNonScriptable2_put_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> put_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable2_get_PortablePassword(This,pPortablePass) \ - ( (This)->lpVtbl -> get_PortablePassword(This,pPortablePass) ) - -#define IMsRdpClientNonScriptable2_put_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> put_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable2_get_PortableSalt(This,pPortableSalt) \ - ( (This)->lpVtbl -> get_PortableSalt(This,pPortableSalt) ) - -#define IMsRdpClientNonScriptable2_put_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> put_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable2_get_BinaryPassword(This,pBinaryPassword) \ - ( (This)->lpVtbl -> get_BinaryPassword(This,pBinaryPassword) ) - -#define IMsRdpClientNonScriptable2_put_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> put_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable2_get_BinarySalt(This,pSalt) \ - ( (This)->lpVtbl -> get_BinarySalt(This,pSalt) ) - -#define IMsRdpClientNonScriptable2_ResetPassword(This) \ - ( (This)->lpVtbl -> ResetPassword(This) ) - - -#define IMsRdpClientNonScriptable2_NotifyRedirectDeviceChange(This,wParam,lParam) \ - ( (This)->lpVtbl -> NotifyRedirectDeviceChange(This,wParam,lParam) ) - -#define IMsRdpClientNonScriptable2_SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) \ - ( (This)->lpVtbl -> SendKeys(This,numKeys,pbArrayKeyUp,plKeyData) ) - - -#define IMsRdpClientNonScriptable2_put_UIParentWindowHandle(This,phwndUIParentWindowHandle) \ - ( (This)->lpVtbl -> put_UIParentWindowHandle(This,phwndUIParentWindowHandle) ) - -#define IMsRdpClientNonScriptable2_get_UIParentWindowHandle(This,phwndUIParentWindowHandle) \ - ( (This)->lpVtbl -> get_UIParentWindowHandle(This,phwndUIParentWindowHandle) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientNonScriptable2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscAdvancedSettings_INTERFACE_DEFINED__ -#define __IMsTscAdvancedSettings_INTERFACE_DEFINED__ - -/* interface IMsTscAdvancedSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscAdvancedSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("809945CC-4B3B-4A92-A6B0-DBF9B5F2EF2D") - IMsTscAdvancedSettings : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_Compress( - /* [in] */ long pcompress) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_Compress( - /* [retval][out] */ long *pcompress) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapPeristence( - /* [in] */ long pbitmapPeristence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapPeristence( - /* [retval][out] */ long *pbitmapPeristence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_allowBackgroundInput( - /* [in] */ long pallowBackgroundInput) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_allowBackgroundInput( - /* [retval][out] */ long *pallowBackgroundInput) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyBoardLayoutStr( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PluginDlls( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_IconFile( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_IconIndex( - /* [in] */ long rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ContainerHandledFullScreen( - /* [in] */ long pContainerHandledFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ContainerHandledFullScreen( - /* [retval][out] */ long *pContainerHandledFullScreen) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisableRdpdr( - /* [in] */ long pDisableRdpdr) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisableRdpdr( - /* [retval][out] */ long *pDisableRdpdr) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscAdvancedSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscAdvancedSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscAdvancedSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscAdvancedSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscAdvancedSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscAdvancedSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsTscAdvancedSettings * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsTscAdvancedSettings * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsTscAdvancedSettings * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsTscAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsTscAdvancedSettings * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsTscAdvancedSettings * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsTscAdvancedSettings * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsTscAdvancedSettings * This, - /* [retval][out] */ long *pDisableRdpdr); - - END_INTERFACE - } IMsTscAdvancedSettingsVtbl; - - interface IMsTscAdvancedSettings - { - CONST_VTBL struct IMsTscAdvancedSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscAdvancedSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscAdvancedSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscAdvancedSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscAdvancedSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscAdvancedSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscAdvancedSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscAdvancedSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscAdvancedSettings_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsTscAdvancedSettings_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsTscAdvancedSettings_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsTscAdvancedSettings_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsTscAdvancedSettings_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsTscAdvancedSettings_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsTscAdvancedSettings_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsTscAdvancedSettings_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsTscAdvancedSettings_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsTscAdvancedSettings_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsTscAdvancedSettings_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsTscAdvancedSettings_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsTscAdvancedSettings_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsTscAdvancedSettings_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscAdvancedSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("3C65B4AB-12B3-465B-ACD4-B8DAD3BFF9E2") - IMsRdpClientAdvancedSettings : public IMsTscAdvancedSettings - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SmoothScroll( - /* [in] */ long psmoothScroll) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SmoothScroll( - /* [retval][out] */ long *psmoothScroll) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AcceleratorPassthrough( - /* [in] */ long pacceleratorPassthrough) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AcceleratorPassthrough( - /* [retval][out] */ long *pacceleratorPassthrough) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ShadowBitmap( - /* [in] */ long pshadowBitmap) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ShadowBitmap( - /* [retval][out] */ long *pshadowBitmap) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_TransportType( - /* [in] */ long ptransportType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_TransportType( - /* [retval][out] */ long *ptransportType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SasSequence( - /* [in] */ long psasSequence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SasSequence( - /* [retval][out] */ long *psasSequence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EncryptionEnabled( - /* [in] */ long pencryptionEnabled) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EncryptionEnabled( - /* [retval][out] */ long *pencryptionEnabled) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DedicatedTerminal( - /* [in] */ long pdedicatedTerminal) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DedicatedTerminal( - /* [retval][out] */ long *pdedicatedTerminal) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RDPPort( - /* [in] */ long prdpPort) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RDPPort( - /* [retval][out] */ long *prdpPort) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableMouse( - /* [in] */ long penableMouse) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableMouse( - /* [retval][out] */ long *penableMouse) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisableCtrlAltDel( - /* [in] */ long pdisableCtrlAltDel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisableCtrlAltDel( - /* [retval][out] */ long *pdisableCtrlAltDel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableWindowsKey( - /* [in] */ long penableWindowsKey) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableWindowsKey( - /* [retval][out] */ long *penableWindowsKey) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DoubleClickDetect( - /* [in] */ long pdoubleClickDetect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DoubleClickDetect( - /* [retval][out] */ long *pdoubleClickDetect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MaximizeShell( - /* [in] */ long pmaximizeShell) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MaximizeShell( - /* [retval][out] */ long *pmaximizeShell) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyFullScreen( - /* [in] */ long photKeyFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyFullScreen( - /* [retval][out] */ long *photKeyFullScreen) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyCtrlEsc( - /* [in] */ long photKeyCtrlEsc) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyCtrlEsc( - /* [retval][out] */ long *photKeyCtrlEsc) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltEsc( - /* [in] */ long photKeyAltEsc) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltEsc( - /* [retval][out] */ long *photKeyAltEsc) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltTab( - /* [in] */ long photKeyAltTab) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltTab( - /* [retval][out] */ long *photKeyAltTab) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltShiftTab( - /* [in] */ long photKeyAltShiftTab) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltShiftTab( - /* [retval][out] */ long *photKeyAltShiftTab) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyAltSpace( - /* [in] */ long photKeyAltSpace) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyAltSpace( - /* [retval][out] */ long *photKeyAltSpace) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HotKeyCtrlAltDel( - /* [in] */ long photKeyCtrlAltDel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HotKeyCtrlAltDel( - /* [retval][out] */ long *photKeyCtrlAltDel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_orderDrawThreshold( - /* [in] */ long porderDrawThreshold) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_orderDrawThreshold( - /* [retval][out] */ long *porderDrawThreshold) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapCacheSize( - /* [in] */ long pbitmapCacheSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapCacheSize( - /* [retval][out] */ long *pbitmapCacheSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCacheSize( - /* [in] */ long pbitmapVirtualCacheSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCacheSize( - /* [retval][out] */ long *pbitmapVirtualCacheSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ScaleBitmapCachesByBPP( - /* [in] */ long pbScale) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ScaleBitmapCachesByBPP( - /* [retval][out] */ long *pbScale) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NumBitmapCaches( - /* [in] */ long pnumBitmapCaches) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NumBitmapCaches( - /* [retval][out] */ long *pnumBitmapCaches) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CachePersistenceActive( - /* [in] */ long pcachePersistenceActive) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CachePersistenceActive( - /* [retval][out] */ long *pcachePersistenceActive) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PersistCacheDirectory( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_brushSupportLevel( - /* [in] */ long pbrushSupportLevel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_brushSupportLevel( - /* [retval][out] */ long *pbrushSupportLevel) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_minInputSendInterval( - /* [in] */ long pminInputSendInterval) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_minInputSendInterval( - /* [retval][out] */ long *pminInputSendInterval) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_InputEventsAtOnce( - /* [in] */ long pinputEventsAtOnce) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_InputEventsAtOnce( - /* [retval][out] */ long *pinputEventsAtOnce) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_maxEventCount( - /* [in] */ long pmaxEventCount) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_maxEventCount( - /* [retval][out] */ long *pmaxEventCount) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_keepAliveInterval( - /* [in] */ long pkeepAliveInterval) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_keepAliveInterval( - /* [retval][out] */ long *pkeepAliveInterval) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_shutdownTimeout( - /* [in] */ long pshutdownTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_shutdownTimeout( - /* [retval][out] */ long *pshutdownTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_overallConnectionTimeout( - /* [in] */ long poverallConnectionTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_overallConnectionTimeout( - /* [retval][out] */ long *poverallConnectionTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_singleConnectionTimeout( - /* [in] */ long psingleConnectionTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_singleConnectionTimeout( - /* [retval][out] */ long *psingleConnectionTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardType( - /* [in] */ long pkeyboardType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardType( - /* [retval][out] */ long *pkeyboardType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardSubType( - /* [in] */ long pkeyboardSubType) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardSubType( - /* [retval][out] */ long *pkeyboardSubType) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardFunctionKey( - /* [in] */ long pkeyboardFunctionKey) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardFunctionKey( - /* [retval][out] */ long *pkeyboardFunctionKey) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_WinceFixedPalette( - /* [in] */ long pwinceFixedPalette) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_WinceFixedPalette( - /* [retval][out] */ long *pwinceFixedPalette) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectToServerConsole( - /* [in] */ VARIANT_BOOL pConnectToConsole) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectToServerConsole( - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapPersistence( - /* [in] */ long pbitmapPersistence) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapPersistence( - /* [retval][out] */ long *pbitmapPersistence) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MinutesToIdleTimeout( - /* [in] */ long pminutesToIdleTimeout) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MinutesToIdleTimeout( - /* [retval][out] */ long *pminutesToIdleTimeout) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_SmartSizing( - /* [in] */ VARIANT_BOOL pfSmartSizing) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_SmartSizing( - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrLocalPrintingDocName( - /* [in] */ BSTR pLocalPrintingDocName) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrLocalPrintingDocName( - /* [retval][out] */ BSTR *pLocalPrintingDocName) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrClipCleanTempDirString( - /* [in] */ BSTR clipCleanTempDirString) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrClipCleanTempDirString( - /* [retval][out] */ BSTR *clipCleanTempDirString) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RdpdrClipPasteInfoString( - /* [in] */ BSTR clipPasteInfoString) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RdpdrClipPasteInfoString( - /* [retval][out] */ BSTR *clipPasteInfoString) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ClearTextPassword( - /* [in] */ BSTR rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_DisplayConnectionBar( - /* [in] */ VARIANT_BOOL pDisplayConnectionBar) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_DisplayConnectionBar( - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PinConnectionBar( - /* [in] */ VARIANT_BOOL pPinConnectionBar) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PinConnectionBar( - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_GrabFocusOnConnect( - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_GrabFocusOnConnect( - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_LoadBalanceInfo( - /* [in] */ BSTR pLBInfo) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_LoadBalanceInfo( - /* [retval][out] */ BSTR *pLBInfo) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectDrives( - /* [in] */ VARIANT_BOOL pRedirectDrives) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectDrives( - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectPrinters( - /* [in] */ VARIANT_BOOL pRedirectPrinters) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectPrinters( - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectPorts( - /* [in] */ VARIANT_BOOL pRedirectPorts) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectPorts( - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_RedirectSmartCards( - /* [in] */ VARIANT_BOOL pRedirectSmartCards) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_RedirectSmartCards( - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCache16BppSize( - /* [in] */ long pBitmapVirtualCache16BppSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCache16BppSize( - /* [retval][out] */ long *pBitmapVirtualCache16BppSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapVirtualCache24BppSize( - /* [in] */ long pBitmapVirtualCache24BppSize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapVirtualCache24BppSize( - /* [retval][out] */ long *pBitmapVirtualCache24BppSize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_PerformanceFlags( - /* [in] */ long pDisableList) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_PerformanceFlags( - /* [retval][out] */ long *pDisableList) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectWithEndpoint( - /* [in] */ VARIANT *rhs) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NotifyTSPublicKey( - /* [in] */ VARIANT_BOOL pfNotify) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NotifyTSPublicKey( - /* [retval][out] */ VARIANT_BOOL *pfNotify) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - END_INTERFACE - } IMsRdpClientAdvancedSettingsVtbl; - - interface IMsRdpClientAdvancedSettings - { - CONST_VTBL struct IMsRdpClientAdvancedSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_RedirectSmartCards_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_RedirectSmartCards_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_BitmapVirtualCache16BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_BitmapVirtualCache16BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_BitmapVirtualCache24BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_BitmapVirtualCache24BppSize_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_PerformanceFlags_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ long pDisableList); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_PerformanceFlags_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_PerformanceFlags_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ long *pDisableList); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_PerformanceFlags_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT *rhs); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_ConnectWithEndpoint_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [in] */ VARIANT_BOOL pfNotify); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_put_NotifyTSPublicKey_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey_Proxy( - IMsRdpClientAdvancedSettings * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - -void __RPC_STUB IMsRdpClientAdvancedSettings_get_NotifyTSPublicKey_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings2 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings2; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("9AC42117-2B76-4320-AA44-0E616AB8437B") - IMsRdpClientAdvancedSettings2 : public IMsRdpClientAdvancedSettings - { - public: - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CanAutoReconnect( - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_EnableAutoReconnect( - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_EnableAutoReconnect( - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MaxReconnectAttempts( - /* [in] */ long pMaxReconnectAttempts) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MaxReconnectAttempts( - /* [retval][out] */ long *pMaxReconnectAttempts) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings2Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings2 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings2 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - END_INTERFACE - } IMsRdpClientAdvancedSettings2Vtbl; - - interface IMsRdpClientAdvancedSettings2 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings2Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings2_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings2_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings2_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings2_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings2_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings2_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings2_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings2_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings2_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings2_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings2_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings2_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings2_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings2_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings2_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings2_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings2_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings2_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings2_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings2_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings2_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings2_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings2_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings2_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings2_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings2_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings2_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings2_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings2_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings2_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings2_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings2_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings2_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings2_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings2_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings2_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings2_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings2_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings2_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings2_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings2_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings2_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings2_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings2_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings2_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings2_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings2_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings2_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings2_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings2_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings2_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings2_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings2_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings2_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings2_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings2_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings2_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings2_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings2_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings2_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings2_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings2_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings2_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings2_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings2_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings2_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings2_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings2_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings2_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings2_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings2_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings2_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings2_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings2_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings2_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings2_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings2_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_CanAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_CanAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_put_EnableAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_EnableAutoReconnect_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [in] */ long pMaxReconnectAttempts); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_put_MaxReconnectAttempts_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts_Proxy( - IMsRdpClientAdvancedSettings2 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - -void __RPC_STUB IMsRdpClientAdvancedSettings2_get_MaxReconnectAttempts_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings2_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings3 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings3; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("19CD856B-C542-4C53-ACEE-F127E3BE1A59") - IMsRdpClientAdvancedSettings3 : public IMsRdpClientAdvancedSettings2 - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectionBarShowMinimizeButton( - /* [in] */ VARIANT_BOOL pfShowMinimize) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectionBarShowMinimizeButton( - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_ConnectionBarShowRestoreButton( - /* [in] */ VARIANT_BOOL pfShowRestore) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_ConnectionBarShowRestoreButton( - /* [retval][out] */ VARIANT_BOOL *pfShowRestore) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings3Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings3 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings3 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - END_INTERFACE - } IMsRdpClientAdvancedSettings3Vtbl; - - interface IMsRdpClientAdvancedSettings3 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings3Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings3_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings3_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings3_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings3_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings3_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings3_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings3_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings3_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings3_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings3_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings3_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings3_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings3_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings3_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings3_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings3_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings3_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings3_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings3_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings3_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings3_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings3_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings3_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings3_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings3_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings3_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings3_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings3_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings3_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings3_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings3_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings3_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings3_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings3_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings3_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings3_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings3_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings3_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings3_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings3_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings3_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings3_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings3_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings3_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings3_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings3_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings3_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings3_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings3_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings3_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings3_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings3_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings3_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings3_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings3_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings3_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings3_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings3_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings3_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings3_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings3_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings3_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings3_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings3_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings3_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings3_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings3_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings3_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings3_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings3_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings3_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings3_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings3_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings3_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings3_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings3_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - - -#define IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> put_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#define IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> get_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_put_ConnectionBarShowMinimizeButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_get_ConnectionBarShowMinimizeButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_put_ConnectionBarShowRestoreButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton_Proxy( - IMsRdpClientAdvancedSettings3 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - -void __RPC_STUB IMsRdpClientAdvancedSettings3_get_ConnectionBarShowRestoreButton_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings3_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ -#define __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ - -/* interface IMsRdpClientAdvancedSettings4 */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientAdvancedSettings4; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("FBA7F64E-7345-4405-AE50-FA4A763DC0DE") - IMsRdpClientAdvancedSettings4 : public IMsRdpClientAdvancedSettings3 - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AuthenticationLevel( - /* [in] */ unsigned int puiAuthLevel) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AuthenticationLevel( - /* [retval][out] */ unsigned int *puiAuthLevel) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientAdvancedSettings4Vtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientAdvancedSettings4 * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientAdvancedSettings4 * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Compress )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pcompress); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Compress )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pcompress); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPeristence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapPeristence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPeristence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapPeristence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_allowBackgroundInput )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pallowBackgroundInput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_allowBackgroundInput )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pallowBackgroundInput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyBoardLayoutStr )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PluginDlls )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconFile )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IconIndex )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pContainerHandledFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ContainerHandledFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pContainerHandledFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableRdpdr )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pDisableRdpdr); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableRdpdr )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pDisableRdpdr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmoothScroll )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psmoothScroll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmoothScroll )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psmoothScroll); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pacceleratorPassthrough); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AcceleratorPassthrough )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pacceleratorPassthrough); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ShadowBitmap )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pshadowBitmap); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ShadowBitmap )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pshadowBitmap); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_TransportType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long ptransportType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_TransportType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *ptransportType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SasSequence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psasSequence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SasSequence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psasSequence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EncryptionEnabled )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pencryptionEnabled); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EncryptionEnabled )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pencryptionEnabled); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DedicatedTerminal )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdedicatedTerminal); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DedicatedTerminal )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdedicatedTerminal); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RDPPort )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long prdpPort); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RDPPort )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *prdpPort); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableMouse )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long penableMouse); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableMouse )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *penableMouse); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdisableCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisableCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdisableCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableWindowsKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long penableWindowsKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableWindowsKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *penableWindowsKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DoubleClickDetect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pdoubleClickDetect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DoubleClickDetect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pdoubleClickDetect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaximizeShell )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pmaximizeShell); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaximizeShell )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pmaximizeShell); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyFullScreen )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyCtrlEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyCtrlEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltEsc); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltEsc )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltEsc); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltShiftTab); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltShiftTab )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltShiftTab); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyAltSpace); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyAltSpace )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyAltSpace); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long photKeyCtrlAltDel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HotKeyCtrlAltDel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *photKeyCtrlAltDel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_orderDrawThreshold )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long porderDrawThreshold); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_orderDrawThreshold )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *porderDrawThreshold); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapVirtualCacheSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCacheSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapVirtualCacheSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbScale); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ScaleBitmapCachesByBPP )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbScale); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NumBitmapCaches )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pnumBitmapCaches); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NumBitmapCaches )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pnumBitmapCaches); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CachePersistenceActive )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pcachePersistenceActive); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CachePersistenceActive )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pcachePersistenceActive); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PersistCacheDirectory )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_brushSupportLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbrushSupportLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_brushSupportLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbrushSupportLevel); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_minInputSendInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pminInputSendInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_minInputSendInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pminInputSendInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pinputEventsAtOnce); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InputEventsAtOnce )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pinputEventsAtOnce); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_maxEventCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pmaxEventCount); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_maxEventCount )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pmaxEventCount); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_keepAliveInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeepAliveInterval); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_keepAliveInterval )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeepAliveInterval); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_shutdownTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pshutdownTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_shutdownTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pshutdownTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long poverallConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_overallConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *poverallConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long psingleConnectionTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_singleConnectionTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *psingleConnectionTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardSubType )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardSubType); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardSubType )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardSubType); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pkeyboardFunctionKey); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardFunctionKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pkeyboardFunctionKey); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WinceFixedPalette )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pwinceFixedPalette); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WinceFixedPalette )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pwinceFixedPalette); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pConnectToConsole); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectToServerConsole )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pConnectToConsole); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapPersistence )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pbitmapPersistence); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapPersistence )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pbitmapPersistence); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pminutesToIdleTimeout); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MinutesToIdleTimeout )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pminutesToIdleTimeout); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_SmartSizing )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfSmartSizing); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_SmartSizing )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfSmartSizing); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR pLocalPrintingDocName); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrLocalPrintingDocName )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *pLocalPrintingDocName); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR clipCleanTempDirString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipCleanTempDirString )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *clipCleanTempDirString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR clipPasteInfoString); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RdpdrClipPasteInfoString )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *clipPasteInfoString); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ClearTextPassword )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pDisplayConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pDisplayConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PinConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pPinConnectionBar); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PinConnectionBar )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pPinConnectionBar); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfGrabFocusOnConnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_GrabFocusOnConnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfGrabFocusOnConnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ BSTR pLBInfo); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LoadBalanceInfo )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ BSTR *pLBInfo); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectDrives )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectDrives); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectDrives )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectDrives); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPrinters )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectPrinters); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPrinters )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPrinters); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectPorts )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectPorts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectPorts )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectPorts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RedirectSmartCards )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pRedirectSmartCards); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RedirectSmartCards )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pRedirectSmartCards); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pBitmapVirtualCache16BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache16BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pBitmapVirtualCache16BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pBitmapVirtualCache24BppSize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapVirtualCache24BppSize )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pBitmapVirtualCache24BppSize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_PerformanceFlags )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pDisableList); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_PerformanceFlags )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pDisableList); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectWithEndpoint )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT *rhs); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotifyTSPublicKey )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfNotify); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CanAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfCanAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfEnableAutoReconnect); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EnableAutoReconnect )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfEnableAutoReconnect); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ long pMaxReconnectAttempts); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MaxReconnectAttempts )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ long *pMaxReconnectAttempts); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfShowMinimize); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowMinimizeButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowMinimize); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ VARIANT_BOOL pfShowRestore); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ConnectionBarShowRestoreButton )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ VARIANT_BOOL *pfShowRestore); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AuthenticationLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ unsigned int puiAuthLevel); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AuthenticationLevel )( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ unsigned int *puiAuthLevel); - - END_INTERFACE - } IMsRdpClientAdvancedSettings4Vtbl; - - interface IMsRdpClientAdvancedSettings4 - { - CONST_VTBL struct IMsRdpClientAdvancedSettings4Vtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientAdvancedSettings4_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientAdvancedSettings4_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientAdvancedSettings4_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientAdvancedSettings4_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientAdvancedSettings4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientAdvancedSettings4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientAdvancedSettings4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientAdvancedSettings4_put_Compress(This,pcompress) \ - ( (This)->lpVtbl -> put_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings4_get_Compress(This,pcompress) \ - ( (This)->lpVtbl -> get_Compress(This,pcompress) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> put_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapPeristence(This,pbitmapPeristence) \ - ( (This)->lpVtbl -> get_BitmapPeristence(This,pbitmapPeristence) ) - -#define IMsRdpClientAdvancedSettings4_put_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> put_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings4_get_allowBackgroundInput(This,pallowBackgroundInput) \ - ( (This)->lpVtbl -> get_allowBackgroundInput(This,pallowBackgroundInput) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyBoardLayoutStr(This,rhs) \ - ( (This)->lpVtbl -> put_KeyBoardLayoutStr(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_PluginDlls(This,rhs) \ - ( (This)->lpVtbl -> put_PluginDlls(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_IconFile(This,rhs) \ - ( (This)->lpVtbl -> put_IconFile(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_IconIndex(This,rhs) \ - ( (This)->lpVtbl -> put_IconIndex(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> put_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) \ - ( (This)->lpVtbl -> get_ContainerHandledFullScreen(This,pContainerHandledFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_put_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> put_DisableRdpdr(This,pDisableRdpdr) ) - -#define IMsRdpClientAdvancedSettings4_get_DisableRdpdr(This,pDisableRdpdr) \ - ( (This)->lpVtbl -> get_DisableRdpdr(This,pDisableRdpdr) ) - - -#define IMsRdpClientAdvancedSettings4_put_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> put_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings4_get_SmoothScroll(This,psmoothScroll) \ - ( (This)->lpVtbl -> get_SmoothScroll(This,psmoothScroll) ) - -#define IMsRdpClientAdvancedSettings4_put_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> put_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings4_get_AcceleratorPassthrough(This,pacceleratorPassthrough) \ - ( (This)->lpVtbl -> get_AcceleratorPassthrough(This,pacceleratorPassthrough) ) - -#define IMsRdpClientAdvancedSettings4_put_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> put_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings4_get_ShadowBitmap(This,pshadowBitmap) \ - ( (This)->lpVtbl -> get_ShadowBitmap(This,pshadowBitmap) ) - -#define IMsRdpClientAdvancedSettings4_put_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> put_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings4_get_TransportType(This,ptransportType) \ - ( (This)->lpVtbl -> get_TransportType(This,ptransportType) ) - -#define IMsRdpClientAdvancedSettings4_put_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> put_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings4_get_SasSequence(This,psasSequence) \ - ( (This)->lpVtbl -> get_SasSequence(This,psasSequence) ) - -#define IMsRdpClientAdvancedSettings4_put_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> put_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings4_get_EncryptionEnabled(This,pencryptionEnabled) \ - ( (This)->lpVtbl -> get_EncryptionEnabled(This,pencryptionEnabled) ) - -#define IMsRdpClientAdvancedSettings4_put_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> put_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings4_get_DedicatedTerminal(This,pdedicatedTerminal) \ - ( (This)->lpVtbl -> get_DedicatedTerminal(This,pdedicatedTerminal) ) - -#define IMsRdpClientAdvancedSettings4_put_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> put_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings4_get_RDPPort(This,prdpPort) \ - ( (This)->lpVtbl -> get_RDPPort(This,prdpPort) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> put_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableMouse(This,penableMouse) \ - ( (This)->lpVtbl -> get_EnableMouse(This,penableMouse) ) - -#define IMsRdpClientAdvancedSettings4_put_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> put_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_get_DisableCtrlAltDel(This,pdisableCtrlAltDel) \ - ( (This)->lpVtbl -> get_DisableCtrlAltDel(This,pdisableCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> put_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableWindowsKey(This,penableWindowsKey) \ - ( (This)->lpVtbl -> get_EnableWindowsKey(This,penableWindowsKey) ) - -#define IMsRdpClientAdvancedSettings4_put_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> put_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings4_get_DoubleClickDetect(This,pdoubleClickDetect) \ - ( (This)->lpVtbl -> get_DoubleClickDetect(This,pdoubleClickDetect) ) - -#define IMsRdpClientAdvancedSettings4_put_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> put_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings4_get_MaximizeShell(This,pmaximizeShell) \ - ( (This)->lpVtbl -> get_MaximizeShell(This,pmaximizeShell) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> put_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyFullScreen(This,photKeyFullScreen) \ - ( (This)->lpVtbl -> get_HotKeyFullScreen(This,photKeyFullScreen) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> put_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyCtrlEsc(This,photKeyCtrlEsc) \ - ( (This)->lpVtbl -> get_HotKeyCtrlEsc(This,photKeyCtrlEsc) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> put_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltEsc(This,photKeyAltEsc) \ - ( (This)->lpVtbl -> get_HotKeyAltEsc(This,photKeyAltEsc) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> put_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltTab(This,photKeyAltTab) \ - ( (This)->lpVtbl -> get_HotKeyAltTab(This,photKeyAltTab) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> put_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltShiftTab(This,photKeyAltShiftTab) \ - ( (This)->lpVtbl -> get_HotKeyAltShiftTab(This,photKeyAltShiftTab) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> put_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyAltSpace(This,photKeyAltSpace) \ - ( (This)->lpVtbl -> get_HotKeyAltSpace(This,photKeyAltSpace) ) - -#define IMsRdpClientAdvancedSettings4_put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> put_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) \ - ( (This)->lpVtbl -> get_HotKeyCtrlAltDel(This,photKeyCtrlAltDel) ) - -#define IMsRdpClientAdvancedSettings4_put_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> put_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings4_get_orderDrawThreshold(This,porderDrawThreshold) \ - ( (This)->lpVtbl -> get_orderDrawThreshold(This,porderDrawThreshold) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> put_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapCacheSize(This,pbitmapCacheSize) \ - ( (This)->lpVtbl -> get_BitmapCacheSize(This,pbitmapCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCacheSize(This,pbitmapVirtualCacheSize) ) - -#define IMsRdpClientAdvancedSettings4_put_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> put_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings4_get_ScaleBitmapCachesByBPP(This,pbScale) \ - ( (This)->lpVtbl -> get_ScaleBitmapCachesByBPP(This,pbScale) ) - -#define IMsRdpClientAdvancedSettings4_put_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> put_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings4_get_NumBitmapCaches(This,pnumBitmapCaches) \ - ( (This)->lpVtbl -> get_NumBitmapCaches(This,pnumBitmapCaches) ) - -#define IMsRdpClientAdvancedSettings4_put_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> put_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings4_get_CachePersistenceActive(This,pcachePersistenceActive) \ - ( (This)->lpVtbl -> get_CachePersistenceActive(This,pcachePersistenceActive) ) - -#define IMsRdpClientAdvancedSettings4_put_PersistCacheDirectory(This,rhs) \ - ( (This)->lpVtbl -> put_PersistCacheDirectory(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> put_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings4_get_brushSupportLevel(This,pbrushSupportLevel) \ - ( (This)->lpVtbl -> get_brushSupportLevel(This,pbrushSupportLevel) ) - -#define IMsRdpClientAdvancedSettings4_put_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> put_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings4_get_minInputSendInterval(This,pminInputSendInterval) \ - ( (This)->lpVtbl -> get_minInputSendInterval(This,pminInputSendInterval) ) - -#define IMsRdpClientAdvancedSettings4_put_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> put_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings4_get_InputEventsAtOnce(This,pinputEventsAtOnce) \ - ( (This)->lpVtbl -> get_InputEventsAtOnce(This,pinputEventsAtOnce) ) - -#define IMsRdpClientAdvancedSettings4_put_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> put_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings4_get_maxEventCount(This,pmaxEventCount) \ - ( (This)->lpVtbl -> get_maxEventCount(This,pmaxEventCount) ) - -#define IMsRdpClientAdvancedSettings4_put_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> put_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings4_get_keepAliveInterval(This,pkeepAliveInterval) \ - ( (This)->lpVtbl -> get_keepAliveInterval(This,pkeepAliveInterval) ) - -#define IMsRdpClientAdvancedSettings4_put_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> put_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_shutdownTimeout(This,pshutdownTimeout) \ - ( (This)->lpVtbl -> get_shutdownTimeout(This,pshutdownTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> put_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_overallConnectionTimeout(This,poverallConnectionTimeout) \ - ( (This)->lpVtbl -> get_overallConnectionTimeout(This,poverallConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> put_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_singleConnectionTimeout(This,psingleConnectionTimeout) \ - ( (This)->lpVtbl -> get_singleConnectionTimeout(This,psingleConnectionTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> put_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardType(This,pkeyboardType) \ - ( (This)->lpVtbl -> get_KeyboardType(This,pkeyboardType) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> put_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardSubType(This,pkeyboardSubType) \ - ( (This)->lpVtbl -> get_KeyboardSubType(This,pkeyboardSubType) ) - -#define IMsRdpClientAdvancedSettings4_put_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> put_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings4_get_KeyboardFunctionKey(This,pkeyboardFunctionKey) \ - ( (This)->lpVtbl -> get_KeyboardFunctionKey(This,pkeyboardFunctionKey) ) - -#define IMsRdpClientAdvancedSettings4_put_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> put_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings4_get_WinceFixedPalette(This,pwinceFixedPalette) \ - ( (This)->lpVtbl -> get_WinceFixedPalette(This,pwinceFixedPalette) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> put_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectToServerConsole(This,pConnectToConsole) \ - ( (This)->lpVtbl -> get_ConnectToServerConsole(This,pConnectToConsole) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> put_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapPersistence(This,pbitmapPersistence) \ - ( (This)->lpVtbl -> get_BitmapPersistence(This,pbitmapPersistence) ) - -#define IMsRdpClientAdvancedSettings4_put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> put_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings4_get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) \ - ( (This)->lpVtbl -> get_MinutesToIdleTimeout(This,pminutesToIdleTimeout) ) - -#define IMsRdpClientAdvancedSettings4_put_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> put_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings4_get_SmartSizing(This,pfSmartSizing) \ - ( (This)->lpVtbl -> get_SmartSizing(This,pfSmartSizing) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> put_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) \ - ( (This)->lpVtbl -> get_RdpdrLocalPrintingDocName(This,pLocalPrintingDocName) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> put_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) \ - ( (This)->lpVtbl -> get_RdpdrClipCleanTempDirString(This,clipCleanTempDirString) ) - -#define IMsRdpClientAdvancedSettings4_put_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> put_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings4_get_RdpdrClipPasteInfoString(This,clipPasteInfoString) \ - ( (This)->lpVtbl -> get_RdpdrClipPasteInfoString(This,clipPasteInfoString) ) - -#define IMsRdpClientAdvancedSettings4_put_ClearTextPassword(This,rhs) \ - ( (This)->lpVtbl -> put_ClearTextPassword(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> put_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_get_DisplayConnectionBar(This,pDisplayConnectionBar) \ - ( (This)->lpVtbl -> get_DisplayConnectionBar(This,pDisplayConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_put_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> put_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_get_PinConnectionBar(This,pPinConnectionBar) \ - ( (This)->lpVtbl -> get_PinConnectionBar(This,pPinConnectionBar) ) - -#define IMsRdpClientAdvancedSettings4_put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> put_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings4_get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) \ - ( (This)->lpVtbl -> get_GrabFocusOnConnect(This,pfGrabFocusOnConnect) ) - -#define IMsRdpClientAdvancedSettings4_put_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> put_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings4_get_LoadBalanceInfo(This,pLBInfo) \ - ( (This)->lpVtbl -> get_LoadBalanceInfo(This,pLBInfo) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> put_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectDrives(This,pRedirectDrives) \ - ( (This)->lpVtbl -> get_RedirectDrives(This,pRedirectDrives) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> put_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectPrinters(This,pRedirectPrinters) \ - ( (This)->lpVtbl -> get_RedirectPrinters(This,pRedirectPrinters) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> put_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectPorts(This,pRedirectPorts) \ - ( (This)->lpVtbl -> get_RedirectPorts(This,pRedirectPorts) ) - -#define IMsRdpClientAdvancedSettings4_put_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> put_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings4_get_RedirectSmartCards(This,pRedirectSmartCards) \ - ( (This)->lpVtbl -> get_RedirectSmartCards(This,pRedirectSmartCards) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache16BppSize(This,pBitmapVirtualCache16BppSize) ) - -#define IMsRdpClientAdvancedSettings4_put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> put_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings4_get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) \ - ( (This)->lpVtbl -> get_BitmapVirtualCache24BppSize(This,pBitmapVirtualCache24BppSize) ) - -#define IMsRdpClientAdvancedSettings4_put_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> put_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings4_get_PerformanceFlags(This,pDisableList) \ - ( (This)->lpVtbl -> get_PerformanceFlags(This,pDisableList) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectWithEndpoint(This,rhs) \ - ( (This)->lpVtbl -> put_ConnectWithEndpoint(This,rhs) ) - -#define IMsRdpClientAdvancedSettings4_put_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> put_NotifyTSPublicKey(This,pfNotify) ) - -#define IMsRdpClientAdvancedSettings4_get_NotifyTSPublicKey(This,pfNotify) \ - ( (This)->lpVtbl -> get_NotifyTSPublicKey(This,pfNotify) ) - - -#define IMsRdpClientAdvancedSettings4_get_CanAutoReconnect(This,pfCanAutoReconnect) \ - ( (This)->lpVtbl -> get_CanAutoReconnect(This,pfCanAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_put_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> put_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_get_EnableAutoReconnect(This,pfEnableAutoReconnect) \ - ( (This)->lpVtbl -> get_EnableAutoReconnect(This,pfEnableAutoReconnect) ) - -#define IMsRdpClientAdvancedSettings4_put_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> put_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - -#define IMsRdpClientAdvancedSettings4_get_MaxReconnectAttempts(This,pMaxReconnectAttempts) \ - ( (This)->lpVtbl -> get_MaxReconnectAttempts(This,pMaxReconnectAttempts) ) - - -#define IMsRdpClientAdvancedSettings4_put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> put_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) \ - ( (This)->lpVtbl -> get_ConnectionBarShowMinimizeButton(This,pfShowMinimize) ) - -#define IMsRdpClientAdvancedSettings4_put_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> put_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - -#define IMsRdpClientAdvancedSettings4_get_ConnectionBarShowRestoreButton(This,pfShowRestore) \ - ( (This)->lpVtbl -> get_ConnectionBarShowRestoreButton(This,pfShowRestore) ) - - -#define IMsRdpClientAdvancedSettings4_put_AuthenticationLevel(This,puiAuthLevel) \ - ( (This)->lpVtbl -> put_AuthenticationLevel(This,puiAuthLevel) ) - -#define IMsRdpClientAdvancedSettings4_get_AuthenticationLevel(This,puiAuthLevel) \ - ( (This)->lpVtbl -> get_AuthenticationLevel(This,puiAuthLevel) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - -/* [propput][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings4_put_AuthenticationLevel_Proxy( - IMsRdpClientAdvancedSettings4 * This, - /* [in] */ unsigned int puiAuthLevel); - - -void __RPC_STUB IMsRdpClientAdvancedSettings4_put_AuthenticationLevel_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - -/* [propget][id] */ HRESULT STDMETHODCALLTYPE IMsRdpClientAdvancedSettings4_get_AuthenticationLevel_Proxy( - IMsRdpClientAdvancedSettings4 * This, - /* [retval][out] */ unsigned int *puiAuthLevel); - - -void __RPC_STUB IMsRdpClientAdvancedSettings4_get_AuthenticationLevel_Stub( - IRpcStubBuffer *This, - IRpcChannelBuffer *_pRpcChannelBuffer, - PRPC_MESSAGE _pRpcMessage, - DWORD *_pdwStubPhase); - - - -#endif /* __IMsRdpClientAdvancedSettings4_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscSecuredSettings_INTERFACE_DEFINED__ -#define __IMsTscSecuredSettings_INTERFACE_DEFINED__ - -/* interface IMsTscSecuredSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsTscSecuredSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("C9D65442-A0F9-45B2-8F73-D61D2DB8CBB6") - IMsTscSecuredSettings : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_StartProgram( - /* [in] */ BSTR pStartProgram) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_StartProgram( - /* [retval][out] */ BSTR *pStartProgram) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_WorkDir( - /* [in] */ BSTR pWorkDir) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_WorkDir( - /* [retval][out] */ BSTR *pWorkDir) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_FullScreen( - /* [in] */ long pfFullScreen) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_FullScreen( - /* [retval][out] */ long *pfFullScreen) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscSecuredSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscSecuredSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscSecuredSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscSecuredSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscSecuredSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscSecuredSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscSecuredSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscSecuredSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartProgram )( - IMsTscSecuredSettings * This, - /* [in] */ BSTR pStartProgram); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartProgram )( - IMsTscSecuredSettings * This, - /* [retval][out] */ BSTR *pStartProgram); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WorkDir )( - IMsTscSecuredSettings * This, - /* [in] */ BSTR pWorkDir); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WorkDir )( - IMsTscSecuredSettings * This, - /* [retval][out] */ BSTR *pWorkDir); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsTscSecuredSettings * This, - /* [in] */ long pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsTscSecuredSettings * This, - /* [retval][out] */ long *pfFullScreen); - - END_INTERFACE - } IMsTscSecuredSettingsVtbl; - - interface IMsTscSecuredSettings - { - CONST_VTBL struct IMsTscSecuredSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscSecuredSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscSecuredSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscSecuredSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscSecuredSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscSecuredSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscSecuredSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscSecuredSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscSecuredSettings_put_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> put_StartProgram(This,pStartProgram) ) - -#define IMsTscSecuredSettings_get_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> get_StartProgram(This,pStartProgram) ) - -#define IMsTscSecuredSettings_put_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> put_WorkDir(This,pWorkDir) ) - -#define IMsTscSecuredSettings_get_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> get_WorkDir(This,pWorkDir) ) - -#define IMsTscSecuredSettings_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsTscSecuredSettings_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscSecuredSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ -#define __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ - -/* interface IMsRdpClientSecuredSettings */ -/* [object][oleautomation][dual][uuid] */ - - -EXTERN_C const IID IID_IMsRdpClientSecuredSettings; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("605BEFCF-39C1-45CC-A811-068FB7BE346D") - IMsRdpClientSecuredSettings : public IMsTscSecuredSettings - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_KeyboardHookMode( - /* [in] */ long pkeyboardHookMode) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_KeyboardHookMode( - /* [retval][out] */ long *pkeyboardHookMode) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_AudioRedirectionMode( - /* [in] */ long pAudioRedirectionMode) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_AudioRedirectionMode( - /* [retval][out] */ long *pAudioRedirectionMode) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsRdpClientSecuredSettingsVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsRdpClientSecuredSettings * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsRdpClientSecuredSettings * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsRdpClientSecuredSettings * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsRdpClientSecuredSettings * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsRdpClientSecuredSettings * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsRdpClientSecuredSettings * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsRdpClientSecuredSettings * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_StartProgram )( - IMsRdpClientSecuredSettings * This, - /* [in] */ BSTR pStartProgram); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_StartProgram )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ BSTR *pStartProgram); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_WorkDir )( - IMsRdpClientSecuredSettings * This, - /* [in] */ BSTR pWorkDir); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_WorkDir )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ BSTR *pWorkDir); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FullScreen )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pfFullScreen); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FullScreen )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pfFullScreen); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_KeyboardHookMode )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pkeyboardHookMode); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_KeyboardHookMode )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pkeyboardHookMode); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_AudioRedirectionMode )( - IMsRdpClientSecuredSettings * This, - /* [in] */ long pAudioRedirectionMode); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_AudioRedirectionMode )( - IMsRdpClientSecuredSettings * This, - /* [retval][out] */ long *pAudioRedirectionMode); - - END_INTERFACE - } IMsRdpClientSecuredSettingsVtbl; - - interface IMsRdpClientSecuredSettings - { - CONST_VTBL struct IMsRdpClientSecuredSettingsVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsRdpClientSecuredSettings_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsRdpClientSecuredSettings_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsRdpClientSecuredSettings_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsRdpClientSecuredSettings_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsRdpClientSecuredSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsRdpClientSecuredSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsRdpClientSecuredSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsRdpClientSecuredSettings_put_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> put_StartProgram(This,pStartProgram) ) - -#define IMsRdpClientSecuredSettings_get_StartProgram(This,pStartProgram) \ - ( (This)->lpVtbl -> get_StartProgram(This,pStartProgram) ) - -#define IMsRdpClientSecuredSettings_put_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> put_WorkDir(This,pWorkDir) ) - -#define IMsRdpClientSecuredSettings_get_WorkDir(This,pWorkDir) \ - ( (This)->lpVtbl -> get_WorkDir(This,pWorkDir) ) - -#define IMsRdpClientSecuredSettings_put_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> put_FullScreen(This,pfFullScreen) ) - -#define IMsRdpClientSecuredSettings_get_FullScreen(This,pfFullScreen) \ - ( (This)->lpVtbl -> get_FullScreen(This,pfFullScreen) ) - - -#define IMsRdpClientSecuredSettings_put_KeyboardHookMode(This,pkeyboardHookMode) \ - ( (This)->lpVtbl -> put_KeyboardHookMode(This,pkeyboardHookMode) ) - -#define IMsRdpClientSecuredSettings_get_KeyboardHookMode(This,pkeyboardHookMode) \ - ( (This)->lpVtbl -> get_KeyboardHookMode(This,pkeyboardHookMode) ) - -#define IMsRdpClientSecuredSettings_put_AudioRedirectionMode(This,pAudioRedirectionMode) \ - ( (This)->lpVtbl -> put_AudioRedirectionMode(This,pAudioRedirectionMode) ) - -#define IMsRdpClientSecuredSettings_get_AudioRedirectionMode(This,pAudioRedirectionMode) \ - ( (This)->lpVtbl -> get_AudioRedirectionMode(This,pAudioRedirectionMode) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsRdpClientSecuredSettings_INTERFACE_DEFINED__ */ - - -#ifndef __IMsTscDebug_INTERFACE_DEFINED__ -#define __IMsTscDebug_INTERFACE_DEFINED__ - -/* interface IMsTscDebug */ -/* [object][oleautomation][dual][hidden][uuid] */ - - -EXTERN_C const IID IID_IMsTscDebug; - -#if defined(__cplusplus) && !defined(CINTERFACE) - - MIDL_INTERFACE("209D0EB9-6254-47B1-9033-A98DAE55BB27") - IMsTscDebug : public IDispatch - { - public: - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchBitmapPDU( - /* [in] */ long phatchBitmapPDU) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchBitmapPDU( - /* [retval][out] */ long *phatchBitmapPDU) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchSSBOrder( - /* [in] */ long phatchSSBOrder) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchSSBOrder( - /* [retval][out] */ long *phatchSSBOrder) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchMembltOrder( - /* [in] */ long phatchMembltOrder) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchMembltOrder( - /* [retval][out] */ long *phatchMembltOrder) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_HatchIndexPDU( - /* [in] */ long phatchIndexPDU) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_HatchIndexPDU( - /* [retval][out] */ long *phatchIndexPDU) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_LabelMemblt( - /* [in] */ long plabelMemblt) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_LabelMemblt( - /* [retval][out] */ long *plabelMemblt) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_BitmapCacheMonitor( - /* [in] */ long pbitmapCacheMonitor) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_BitmapCacheMonitor( - /* [retval][out] */ long *pbitmapCacheMonitor) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MallocFailuresPercent( - /* [in] */ long pmallocFailuresPercent) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MallocFailuresPercent( - /* [retval][out] */ long *pmallocFailuresPercent) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_MallocHugeFailuresPercent( - /* [in] */ long pmallocHugeFailuresPercent) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_MallocHugeFailuresPercent( - /* [retval][out] */ long *pmallocHugeFailuresPercent) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_NetThroughput( - /* [in] */ long NetThroughput) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_NetThroughput( - /* [retval][out] */ long *NetThroughput) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CLXCmdLine( - /* [in] */ BSTR pCLXCmdLine) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CLXCmdLine( - /* [retval][out] */ BSTR *pCLXCmdLine) = 0; - - virtual /* [propput][id] */ HRESULT STDMETHODCALLTYPE put_CLXDll( - /* [in] */ BSTR pCLXDll) = 0; - - virtual /* [propget][id] */ HRESULT STDMETHODCALLTYPE get_CLXDll( - /* [retval][out] */ BSTR *pCLXDll) = 0; - - }; - -#else /* C style interface */ - - typedef struct IMsTscDebugVtbl - { - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - IMsTscDebug * This, - /* [in] */ REFIID riid, - /* [iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - IMsTscDebug * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - IMsTscDebug * This); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( - IMsTscDebug * This, - /* [out] */ UINT *pctinfo); - - HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( - IMsTscDebug * This, - /* [in] */ UINT iTInfo, - /* [in] */ LCID lcid, - /* [out] */ ITypeInfo **ppTInfo); - - HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( - IMsTscDebug * This, - /* [in] */ REFIID riid, - /* [size_is][in] */ LPOLESTR *rgszNames, - /* [range][in] */ UINT cNames, - /* [in] */ LCID lcid, - /* [size_is][out] */ DISPID *rgDispId); - - /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( - IMsTscDebug * This, - /* [in] */ DISPID dispIdMember, - /* [in] */ REFIID riid, - /* [in] */ LCID lcid, - /* [in] */ WORD wFlags, - /* [out][in] */ DISPPARAMS *pDispParams, - /* [out] */ VARIANT *pVarResult, - /* [out] */ EXCEPINFO *pExcepInfo, - /* [out] */ UINT *puArgErr); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchBitmapPDU )( - IMsTscDebug * This, - /* [in] */ long phatchBitmapPDU); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchBitmapPDU )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchBitmapPDU); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchSSBOrder )( - IMsTscDebug * This, - /* [in] */ long phatchSSBOrder); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchSSBOrder )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchSSBOrder); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchMembltOrder )( - IMsTscDebug * This, - /* [in] */ long phatchMembltOrder); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchMembltOrder )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchMembltOrder); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_HatchIndexPDU )( - IMsTscDebug * This, - /* [in] */ long phatchIndexPDU); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_HatchIndexPDU )( - IMsTscDebug * This, - /* [retval][out] */ long *phatchIndexPDU); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LabelMemblt )( - IMsTscDebug * This, - /* [in] */ long plabelMemblt); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LabelMemblt )( - IMsTscDebug * This, - /* [retval][out] */ long *plabelMemblt); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BitmapCacheMonitor )( - IMsTscDebug * This, - /* [in] */ long pbitmapCacheMonitor); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BitmapCacheMonitor )( - IMsTscDebug * This, - /* [retval][out] */ long *pbitmapCacheMonitor); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MallocFailuresPercent )( - IMsTscDebug * This, - /* [in] */ long pmallocFailuresPercent); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MallocFailuresPercent )( - IMsTscDebug * This, - /* [retval][out] */ long *pmallocFailuresPercent); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_MallocHugeFailuresPercent )( - IMsTscDebug * This, - /* [in] */ long pmallocHugeFailuresPercent); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_MallocHugeFailuresPercent )( - IMsTscDebug * This, - /* [retval][out] */ long *pmallocHugeFailuresPercent); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NetThroughput )( - IMsTscDebug * This, - /* [in] */ long NetThroughput); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NetThroughput )( - IMsTscDebug * This, - /* [retval][out] */ long *NetThroughput); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CLXCmdLine )( - IMsTscDebug * This, - /* [in] */ BSTR pCLXCmdLine); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLXCmdLine )( - IMsTscDebug * This, - /* [retval][out] */ BSTR *pCLXCmdLine); - - /* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_CLXDll )( - IMsTscDebug * This, - /* [in] */ BSTR pCLXDll); - - /* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CLXDll )( - IMsTscDebug * This, - /* [retval][out] */ BSTR *pCLXDll); - - END_INTERFACE - } IMsTscDebugVtbl; - - interface IMsTscDebug - { - CONST_VTBL struct IMsTscDebugVtbl *lpVtbl; - }; - - - -#ifdef COBJMACROS - - -#define IMsTscDebug_QueryInterface(This,riid,ppvObject) \ - ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) - -#define IMsTscDebug_AddRef(This) \ - ( (This)->lpVtbl -> AddRef(This) ) - -#define IMsTscDebug_Release(This) \ - ( (This)->lpVtbl -> Release(This) ) - - -#define IMsTscDebug_GetTypeInfoCount(This,pctinfo) \ - ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) - -#define IMsTscDebug_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \ - ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) - -#define IMsTscDebug_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \ - ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) - -#define IMsTscDebug_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \ - ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) - - -#define IMsTscDebug_put_HatchBitmapPDU(This,phatchBitmapPDU) \ - ( (This)->lpVtbl -> put_HatchBitmapPDU(This,phatchBitmapPDU) ) - -#define IMsTscDebug_get_HatchBitmapPDU(This,phatchBitmapPDU) \ - ( (This)->lpVtbl -> get_HatchBitmapPDU(This,phatchBitmapPDU) ) - -#define IMsTscDebug_put_HatchSSBOrder(This,phatchSSBOrder) \ - ( (This)->lpVtbl -> put_HatchSSBOrder(This,phatchSSBOrder) ) - -#define IMsTscDebug_get_HatchSSBOrder(This,phatchSSBOrder) \ - ( (This)->lpVtbl -> get_HatchSSBOrder(This,phatchSSBOrder) ) - -#define IMsTscDebug_put_HatchMembltOrder(This,phatchMembltOrder) \ - ( (This)->lpVtbl -> put_HatchMembltOrder(This,phatchMembltOrder) ) - -#define IMsTscDebug_get_HatchMembltOrder(This,phatchMembltOrder) \ - ( (This)->lpVtbl -> get_HatchMembltOrder(This,phatchMembltOrder) ) - -#define IMsTscDebug_put_HatchIndexPDU(This,phatchIndexPDU) \ - ( (This)->lpVtbl -> put_HatchIndexPDU(This,phatchIndexPDU) ) - -#define IMsTscDebug_get_HatchIndexPDU(This,phatchIndexPDU) \ - ( (This)->lpVtbl -> get_HatchIndexPDU(This,phatchIndexPDU) ) - -#define IMsTscDebug_put_LabelMemblt(This,plabelMemblt) \ - ( (This)->lpVtbl -> put_LabelMemblt(This,plabelMemblt) ) - -#define IMsTscDebug_get_LabelMemblt(This,plabelMemblt) \ - ( (This)->lpVtbl -> get_LabelMemblt(This,plabelMemblt) ) - -#define IMsTscDebug_put_BitmapCacheMonitor(This,pbitmapCacheMonitor) \ - ( (This)->lpVtbl -> put_BitmapCacheMonitor(This,pbitmapCacheMonitor) ) - -#define IMsTscDebug_get_BitmapCacheMonitor(This,pbitmapCacheMonitor) \ - ( (This)->lpVtbl -> get_BitmapCacheMonitor(This,pbitmapCacheMonitor) ) - -#define IMsTscDebug_put_MallocFailuresPercent(This,pmallocFailuresPercent) \ - ( (This)->lpVtbl -> put_MallocFailuresPercent(This,pmallocFailuresPercent) ) - -#define IMsTscDebug_get_MallocFailuresPercent(This,pmallocFailuresPercent) \ - ( (This)->lpVtbl -> get_MallocFailuresPercent(This,pmallocFailuresPercent) ) - -#define IMsTscDebug_put_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) \ - ( (This)->lpVtbl -> put_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) ) - -#define IMsTscDebug_get_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) \ - ( (This)->lpVtbl -> get_MallocHugeFailuresPercent(This,pmallocHugeFailuresPercent) ) - -#define IMsTscDebug_put_NetThroughput(This,NetThroughput) \ - ( (This)->lpVtbl -> put_NetThroughput(This,NetThroughput) ) - -#define IMsTscDebug_get_NetThroughput(This,NetThroughput) \ - ( (This)->lpVtbl -> get_NetThroughput(This,NetThroughput) ) - -#define IMsTscDebug_put_CLXCmdLine(This,pCLXCmdLine) \ - ( (This)->lpVtbl -> put_CLXCmdLine(This,pCLXCmdLine) ) - -#define IMsTscDebug_get_CLXCmdLine(This,pCLXCmdLine) \ - ( (This)->lpVtbl -> get_CLXCmdLine(This,pCLXCmdLine) ) - -#define IMsTscDebug_put_CLXDll(This,pCLXDll) \ - ( (This)->lpVtbl -> put_CLXDll(This,pCLXDll) ) - -#define IMsTscDebug_get_CLXDll(This,pCLXDll) \ - ( (This)->lpVtbl -> get_CLXDll(This,pCLXDll) ) - -#endif /* COBJMACROS */ - - -#endif /* C style interface */ - - - - -#endif /* __IMsTscDebug_INTERFACE_DEFINED__ */ - - -EXTERN_C const CLSID CLSID_MsTscAx; - -#ifdef __cplusplus - -class DECLSPEC_UUID("1FB464C8-09BB-4017-A2F5-EB742F04392F") -MsTscAx; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient; - -#ifdef __cplusplus - -class DECLSPEC_UUID("791FA017-2DE3-492E-ACC5-53C67A2B94D0") -MsRdpClient; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient2; - -#ifdef __cplusplus - -class DECLSPEC_UUID("9059F30F-4EB1-4BD2-9FDC-36F43A218F4A") -MsRdpClient2; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient3; - -#ifdef __cplusplus - -class DECLSPEC_UUID("7584C670-2274-4EFB-B00B-D6AABA6D3850") -MsRdpClient3; -#endif - -EXTERN_C const CLSID CLSID_MsRdpClient4; - -#ifdef __cplusplus - -class DECLSPEC_UUID("6AE29350-321B-42BE-BBE5-12FB5270C0DE") -MsRdpClient4; -#endif -#endif /* __MSTSCLib_LIBRARY_DEFINED__ */ - -/* Additional Prototypes for ALL interfaces */ - -/* end of Additional Prototypes */ - -#ifdef __cplusplus -} -#endif - -#endif - - diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_i.c b/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_i.c deleted file mode 100644 index eb8092fc8e4..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/mstsclib_redist_i.c +++ /dev/null @@ -1,145 +0,0 @@ - - -/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */ - -/* link this file in with the server and any clients */ - - - /* File created by MIDL compiler version 7.00.0493 */ -/* at Sun Aug 13 16:46:05 2006 - */ -/* Compiler settings for .\mstsclib_redist.idl: - Oicf, W1, Zp8, env=Win32 (32b run) - protocol : dce , ms_ext, c_ext, robust - error checks: allocation ref bounds_check enum stub_data - VC __declspec() decoration level: - __declspec(uuid()), __declspec(selectany), __declspec(novtable) - DECLSPEC_UUID(), MIDL_INTERFACE() -*/ -//@@MIDL_FILE_HEADING( ) - -#pragma warning( disable: 4049 ) /* more than 64k source lines */ - - -#ifdef __cplusplus -extern "C"{ -#endif - - -#include -#include - -#ifdef _MIDL_USE_GUIDDEF_ - -#ifndef INITGUID -#define INITGUID -#include -#undef INITGUID -#else -#include -#endif - -#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \ - DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) - -#else // !_MIDL_USE_GUIDDEF_ - -#ifndef __IID_DEFINED__ -#define __IID_DEFINED__ - -typedef struct _IID -{ - unsigned long x; - unsigned short s1; - unsigned short s2; - unsigned char c[8]; -} IID; - -#endif // __IID_DEFINED__ - -#ifndef CLSID_DEFINED -#define CLSID_DEFINED -typedef IID CLSID; -#endif // CLSID_DEFINED - -#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \ - const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}} - -#endif !_MIDL_USE_GUIDDEF_ - -MIDL_DEFINE_GUID(IID, LIBID_MSTSCLib,0xAF586AAE,0xB62A,0x420E,0xB7,0x96,0x29,0x4E,0x7E,0xE6,0x4C,0x70); - - -MIDL_DEFINE_GUID(IID, DIID_IMsTscAxEvents,0x336D5562,0xEFA8,0x482E,0x8C,0xB3,0xC5,0xC0,0xFC,0x7A,0x7D,0xB6); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscAx,0x327BB5CD,0x834E,0x4400,0xAE,0xF2,0xB3,0x0E,0x15,0xE5,0xD6,0x82); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient,0x92B4A539,0x7115,0x4B7C,0xA5,0xA9,0xE5,0xD9,0xEF,0xC2,0x78,0x0A); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient2,0xE7E17DC4,0x3B71,0x4BA7,0xA8,0xE6,0x28,0x1F,0xFA,0xDC,0xA2,0x8F); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient3,0x91B7CBC5,0xA72E,0x4FA0,0x93,0x00,0xD6,0x47,0xD7,0xE8,0x97,0xFF); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClient4,0x095E0738,0xD97D,0x488B,0xB9,0xF6,0xDD,0x0E,0x8D,0x66,0xC0,0xDE); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscNonScriptable,0xC1E6743A,0x41C1,0x4A74,0x83,0x2A,0x0D,0xD0,0x6C,0x1C,0x7A,0x0E); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable,0x2F079C4C,0x87B2,0x4AFD,0x97,0xAB,0x20,0xCD,0xB4,0x30,0x38,0xAE); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientNonScriptable2,0x17A5E535,0x4072,0x4FA4,0xAF,0x32,0xC8,0xD0,0xD4,0x73,0x45,0xE9); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscAdvancedSettings,0x809945CC,0x4B3B,0x4A92,0xA6,0xB0,0xDB,0xF9,0xB5,0xF2,0xEF,0x2D); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings,0x3C65B4AB,0x12B3,0x465B,0xAC,0xD4,0xB8,0xDA,0xD3,0xBF,0xF9,0xE2); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings2,0x9AC42117,0x2B76,0x4320,0xAA,0x44,0x0E,0x61,0x6A,0xB8,0x43,0x7B); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings3,0x19CD856B,0xC542,0x4C53,0xAC,0xEE,0xF1,0x27,0xE3,0xBE,0x1A,0x59); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientAdvancedSettings4,0xFBA7F64E,0x7345,0x4405,0xAE,0x50,0xFA,0x4A,0x76,0x3D,0xC0,0xDE); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscSecuredSettings,0xC9D65442,0xA0F9,0x45B2,0x8F,0x73,0xD6,0x1D,0x2D,0xB8,0xCB,0xB6); - - -MIDL_DEFINE_GUID(IID, IID_IMsRdpClientSecuredSettings,0x605BEFCF,0x39C1,0x45CC,0xA8,0x11,0x06,0x8F,0xB7,0xBE,0x34,0x6D); - - -MIDL_DEFINE_GUID(IID, IID_IMsTscDebug,0x209D0EB9,0x6254,0x47B1,0x90,0x33,0xA9,0x8D,0xAE,0x55,0xBB,0x27); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsTscAx,0x1FB464C8,0x09BB,0x4017,0xA2,0xF5,0xEB,0x74,0x2F,0x04,0x39,0x2F); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient,0x791FA017,0x2DE3,0x492E,0xAC,0xC5,0x53,0xC6,0x7A,0x2B,0x94,0xD0); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient2,0x9059F30F,0x4EB1,0x4BD2,0x9F,0xDC,0x36,0xF4,0x3A,0x21,0x8F,0x4A); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient3,0x7584C670,0x2274,0x4EFB,0xB0,0x0B,0xD6,0xAA,0xBA,0x6D,0x38,0x50); - - -MIDL_DEFINE_GUID(CLSID, CLSID_MsRdpClient4,0x6AE29350,0x321B,0x42BE,0xBB,0xE5,0x12,0xFB,0x52,0x70,0xC0,0xDE); - -#undef MIDL_DEFINE_GUID - -#ifdef __cplusplus -} -#endif - - - diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.cpp b/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.cpp deleted file mode 100644 index 29992767db0..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.cpp +++ /dev/null @@ -1,653 +0,0 @@ -#include "stdafx.h" - -#include - -#include "rdesktop/rdesktop.h" -#include "rdesktop/proto.h" - -extern "C" -{ - /* ==== BEGIN POOP ==== */ - // Temporary implementations of stuff we totally positively need to make the Real Thing happy - /* produce a hex dump */ - void - hexdump(unsigned char *p, unsigned int len) - { - unsigned char *line = p; - int i, thisline; - unsigned int offset = 0; - - while (offset < len) - { - printf("%04x ", offset); - thisline = len - offset; - if (thisline > 16) - thisline = 16; - - for (i = 0; i < thisline; i++) - printf("%02x ", line[i]); - - for (; i < 16; i++) - printf(" "); - - for (i = 0; i < thisline; i++) - printf("%c", (line[i] >= 0x20 && line[i] < 0x7f) ? line[i] : '.'); - - printf("\n"); - offset += thisline; - line += thisline; - } - } - - void generate_random(uint8 * random) - { - memcpy(random, "12345678901234567890123456789012", 32); - } - - /* report an error */ - void - error(char *format, ...) - { - va_list ap; - - fprintf(stderr, "ERROR: "); - - va_start(ap, format); - vfprintf(stderr, format, ap); - va_end(ap); - } - - /* report a warning */ - void - warning(char *format, ...) - { - va_list ap; - - fprintf(stderr, "WARNING: "); - - va_start(ap, format); - vfprintf(stderr, format, ap); - va_end(ap); - } - - /* report an unimplemented protocol feature */ - void - unimpl(char *format, ...) - { - va_list ap; - - fprintf(stderr, "NOT IMPLEMENTED: "); - - va_start(ap, format); - vfprintf(stderr, format, ap); - va_end(ap); - } - - /* Create the bitmap cache directory */ - BOOL - rd_pstcache_mkdir(void) - { - char *home; - char bmpcache_dir[256]; - - home = getenv("HOME"); - - if (home == NULL) - return False; - - sprintf(bmpcache_dir, "%s/%s", home, ".rdesktop"); - - if ((_mkdir(bmpcache_dir) == -1) && errno != EEXIST) - { - perror(bmpcache_dir); - return False; - } - - sprintf(bmpcache_dir, "%s/%s", home, ".rdesktop/cache"); - - if ((_mkdir(bmpcache_dir) == -1) && errno != EEXIST) - { - perror(bmpcache_dir); - return False; - } - - return True; - } - - /* open a file in the .rdesktop directory */ - int - rd_open_file(char *filename) - { - char *home; - char fn[256]; - int fd; - - home = getenv("HOME"); - if (home == NULL) - return -1; - sprintf(fn, "%s/.rdesktop/%s", home, filename); - fd = _open(fn, _O_RDWR | _O_CREAT, 0); - if (fd == -1) - perror(fn); - return fd; - } - - /* close file */ - void - rd_close_file(int fd) - { - _close(fd); - } - - /* read from file*/ - int - rd_read_file(int fd, void *ptr, int len) - { - return _read(fd, ptr, len); - } - - /* write to file */ - int - rd_write_file(int fd, void *ptr, int len) - { - return _write(fd, ptr, len); - } - - /* move file pointer */ - int - rd_lseek_file(int fd, int offset) - { - return _lseek(fd, offset, SEEK_SET); - } - - /* do a write lock on a file */ - BOOL - rd_lock_file(int fd, int start, int len) - { - // TODOOO... - return False; - } - - int - load_licence(RDPCLIENT * This, unsigned char **data) - { - return -1; - } - - void - save_licence(RDPCLIENT * This, unsigned char *data, int length) - { - } - - /* ==== END POOP ==== */ - - /* ==== UI ==== */ - // Globals are totally teh evil, but cut me some slack here - HWND hwnd; - HBITMAP hbmBuffer; - PVOID pBuffer; - HDC hdcBuffer; - UINT wmZMouseWheel; - -}; - -static -void -mstsc_mousewheel(RDPCLIENT * This, int value, LPARAM lparam) -{ - uint16 button; - - if(value < 0) - button = MOUSE_FLAG_BUTTON5; - else - button = MOUSE_FLAG_BUTTON4; - - if(value < 0) - value = - value; - - for(int click = 0; click < value; click += WHEEL_DELTA) - rdp_send_input(This, GetTickCount(), RDP_INPUT_MOUSE, button | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); -} - -static -LRESULT -CALLBACK -mstsc_WndProc(HWND hwnd, UINT uMsg, WPARAM wparam, LPARAM lparam) -{ - // BUGBUG: LongToPtr & PtrToLong will break on Win64 - - RDPCLIENT * This = reinterpret_cast(LongToPtr(GetWindowLongPtr(hwnd, GWLP_USERDATA))); - - switch(uMsg) - { - case WM_CLOSE: - DestroyWindow(hwnd); - break; - - // FIXME: temporary - case WM_DESTROY: - PostQuitMessage(0); - break; - - /* Initialization */ - case WM_CREATE: - This = static_cast(reinterpret_cast(lparam)->lpCreateParams); - SetWindowLongPtr(hwnd, GWLP_USERDATA, PtrToLong(This)); - break; - - /* Painting */ - case WM_PRINTCLIENT: - if(wparam == 0) - break; - - case WM_PAINT: - { - HDC hdc = (HDC)wparam; - - // A DC was provided: print the whole client area into it - if(hdc) - { - RECT rc; - GetClientRect(hwnd, &rc); - BitBlt(hdc, 0, 0, rc.right, rc.bottom, hdcBuffer, 0, 0, SRCCOPY); - } - // Otherwise, we're refreshing to screen - else - { - PAINTSTRUCT ps; - hdc = BeginPaint(hwnd, &ps); - - BitBlt - ( - hdc, - ps.rcPaint.left, - ps.rcPaint.top, - ps.rcPaint.right - ps.rcPaint.left, - ps.rcPaint.bottom - ps.rcPaint.top, - hdcBuffer, - ps.rcPaint.left, - ps.rcPaint.top, - SRCCOPY - ); - - EndPaint(hwnd, &ps); - } - } - - break; - - /* Keyboard stuff */ - case WM_SYSKEYDOWN: - case WM_KEYDOWN: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_SCANCODE, RDP_KEYPRESS | (lparam & 0x1000000 ? KBD_FLAG_EXT : 0), LOBYTE(HIWORD(lparam)), 0); - break; - - case WM_SYSKEYUP: - case WM_KEYUP: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_SCANCODE, RDP_KEYRELEASE | (lparam & 0x1000000 ? KBD_FLAG_EXT : 0), LOBYTE(HIWORD(lparam)), 0); - break; - - /* Mouse stuff */ - // Cursor shape - case WM_SETCURSOR: - if(LOWORD(lparam) == HTCLIENT) - { - //SetCursor(hcursor); - return TRUE; - } - - break; - - // Movement - case WM_MOUSEMOVE: - //if(This->sendmotion || wparam & (MK_LBUTTON | MK_RBUTTON | MK_MBUTTON | MK_XBUTTON1 | MK_XBUTTON2)) - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_MOVE, LOWORD(lparam), HIWORD(lparam)); - - break; - - // Buttons - // TODO: X buttons - case WM_LBUTTONDOWN: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON1 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_RBUTTONDOWN: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON2 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_MBUTTONDOWN: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON3 | MOUSE_FLAG_DOWN, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_LBUTTONUP: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON1, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_RBUTTONUP: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON2, LOWORD(lparam), HIWORD(lparam)); - break; - - case WM_MBUTTONUP: - rdp_send_input(This, GetMessageTime(), RDP_INPUT_MOUSE, MOUSE_FLAG_BUTTON3, LOWORD(lparam), HIWORD(lparam)); - break; - - // Wheel - case WM_MOUSEWHEEL: - mstsc_mousewheel(This, (SHORT)HIWORD(wparam), lparam); - break; - - default: - /* Registered messages */ - // Z-Mouse wheel support - you know, just in case - if(uMsg == wmZMouseWheel) - { - mstsc_mousewheel(This, (int)wparam, lparam); - break; - } - - /* Unhandled messages */ - return DefWindowProc(hwnd, uMsg, wparam, lparam); - } - - return 0; -} - -static -DWORD -WINAPI -mstsc_ProtocolIOThread -( - LPVOID lpArgument -) -{ - RDPCLIENT * This = static_cast(lpArgument); - - WCHAR hostname[MAX_COMPUTERNAME_LENGTH + 1]; - DWORD dw = ARRAYSIZE(hostname); - GetComputerNameW(hostname, &dw); - - uint32 flags = RDP_LOGON_NORMAL | RDP_LOGON_COMPRESSION | RDP_LOGON_COMPRESSION2; - - rdp_connect(This, "10.0.0.3", flags, L"Administrator", L"", L"", L"", L"", hostname, ""); - //rdp_connect(This, "192.168.7.232", flags, "", "", "", ""); - - hdcBuffer = CreateCompatibleDC(NULL); - - BITMAPINFO bmi; - bmi.bmiHeader.biSize = sizeof(bmi.bmiHeader); - bmi.bmiHeader.biWidth = This->width; - bmi.bmiHeader.biHeight = This->height; - bmi.bmiHeader.biPlanes = 1; - bmi.bmiHeader.biBitCount = This->server_depth; - bmi.bmiHeader.biCompression = BI_RGB; - bmi.bmiHeader.biSizeImage = 0; - bmi.bmiHeader.biXPelsPerMeter = 0; - bmi.bmiHeader.biYPelsPerMeter = 0; - bmi.bmiHeader.biClrUsed = 0; // TODO! palette displays - bmi.bmiHeader.biClrImportant = 0; // TODO! palette displays - - hbmBuffer = CreateDIBSection(hdcBuffer, &bmi, DIB_RGB_COLORS, &pBuffer, NULL, 0); - - SelectObject(hdcBuffer, hbmBuffer); - -#if 0 - rcClip.left = 0; - rcClip.top = 0; - rcClip.right = This->width + 1; - rcClip.bottom = This->height + 1; -#endif - - BOOL deactivated; - uint32 ext_disc_reason; - - rdp_main_loop(This, &deactivated, &ext_disc_reason); - // TODO: handle redirection - // EVENT: OnDisconnect - - SendMessage(hwnd, WM_CLOSE, 0, 0); - - return 0; -} - -/* Virtual channel stuff */ -extern "C" void channel_process(RDPCLIENT * This, STREAM s, uint16 mcs_channel) -{ -} - -DWORD tlsIndex; - -typedef struct CHANNEL_HANDLE_ -{ - RDPCLIENT * client; - int channel; -} -CHANNEL_HANDLE; - -static -UINT -VCAPITYPE -VirtualChannelInit -( - LPVOID * ppInitHandle, - PCHANNEL_DEF pChannel, - INT channelCount, - ULONG versionRequested, - PCHANNEL_INIT_EVENT_FN pChannelInitEventProc -) -{ - if(channelCount <= 0) - return CHANNEL_RC_BAD_CHANNEL; - - if(ppInitHandle == NULL) - return CHANNEL_RC_BAD_INIT_HANDLE; - - if(pChannel == NULL) - return CHANNEL_RC_BAD_CHANNEL; - - if(pChannelInitEventProc == NULL) - return CHANNEL_RC_BAD_PROC; - - RDPCLIENT * This = (RDPCLIENT *)TlsGetValue(tlsIndex); - - if(This == NULL) - return CHANNEL_RC_NOT_IN_VIRTUALCHANNELENTRY; - - if(This->num_channels + channelCount > CHANNEL_MAX_COUNT) - return CHANNEL_RC_TOO_MANY_CHANNELS; - - for(INT i = 0; i < channelCount; ++ i) - { - if(strlen(pChannel[i].name) > CHANNEL_NAME_LEN) - return CHANNEL_RC_BAD_CHANNEL; - } - - memcpy(This->channel_defs + This->num_channels, pChannel, sizeof(*pChannel) * channelCount); - -#if 0 // TODO - for(INT i = 0; i < channelCount; ++ i) - { - pChannel[i].options |= CHANNEL_OPTION_INITIALIZED; - - int j = This->num_channels + i; - This->channel_data[j].opened = 0; - This->channel_data[j].pChannelInitEventProc = pChannelInitEventProc; - This->channel_data[j].pChannelOpenEventProc = NULL; - } -#endif - - This->num_channels += channelCount; - - *ppInitHandle = This; - - return CHANNEL_RC_OK; -} - -UINT -VCAPITYPE -VirtualChannelOpen -( - LPVOID pInitHandle, - LPDWORD pOpenHandle, - PCHAR pChannelName, - PCHANNEL_OPEN_EVENT_FN pChannelOpenEventProc -) -{ - if(pInitHandle == NULL) - return CHANNEL_RC_BAD_INIT_HANDLE; - - if(pOpenHandle == NULL) - return CHANNEL_RC_BAD_CHANNEL_HANDLE; - - if(pChannelName == NULL) - return CHANNEL_RC_UNKNOWN_CHANNEL_NAME; - - if(pChannelOpenEventProc == NULL) - return CHANNEL_RC_BAD_PROC; - - RDPCLIENT * This = (RDPCLIENT *)pInitHandle; - -#if 0 // TODO - for(unsigned i = 0; i < This->num_channels; ++ i) - { - if(strcmp(pChannelName, This->channel_defs[i].name) == 0) - { - if(This->channel_data[i].opened) - return CHANNEL_RC_ALREADY_OPEN; - - This->channel_data[i].opened = 1; - This->channel_data[i].pChannelOpenEventProc = pChannelOpenEventProc; - - // TODO: allocate a handle here - *pOpenHandle = 0; - - break; - } - } -#endif - - return CHANNEL_RC_OK; -} - -UINT VCAPITYPE VirtualChannelClose -( - DWORD openHandle -) -{ - // TODO: channel handle management - return CHANNEL_RC_BAD_CHANNEL_HANDLE; -} - -UINT VCAPITYPE VirtualChannelWrite -( - DWORD openHandle, - LPVOID pData, - ULONG dataLength, - LPVOID pUserData -) -{ - // TODO - return CHANNEL_RC_BAD_CHANNEL_HANDLE; -} - -int wmain() -{ - WSADATA wsd; - WSAStartup(MAKEWORD(2, 2), &wsd); - - static RDPCLIENT This_; // NOTE: this is HUGE and would overflow the stack! - ZeroMemory(&This_, sizeof(This_)); - - RDPCLIENT * This = &This_; - - /* - Threading model for MissTosca: - - main thread is the GUI thread. Message loop maintained by caller - - protocol I/O is handled in an I/O thread (or thread pool) - - extra threads maintained by virtual channel handlers. Virtual channel writes are thread-neutral - - How we handle drawing: at the moment just an off-screen buffer we dump on-screen when asked to. - Still considering how to draw on-screen directly and *then* buffering off-screen (for example, - when running inside another remote session) - */ - - // FIXME: keyboard mess - This->keylayout = 0x409; - This->keyboard_type = 0x4; - This->keyboard_subtype = 0x0; - This->keyboard_functionkeys = 0xc; - This->width = 800; - This->height = 600; - This->server_depth = 24; - This->bitmap_compression = True; - //This->sendmotion = True; - This->bitmap_cache = True; - This->bitmap_cache_persist_enable = False; - This->bitmap_cache_precache = True; - This->encryption = True; - This->packet_encryption = True; - This->desktop_save = True; - This->polygon_ellipse_orders = False; // = True; - //This->fullscreen = False; - //This->grab_keyboard = True; - //This->hide_decorations = False; - This->use_rdp5 = True; - //This->rdpclip = True; - This->console_session = False; - //This->numlock_sync = False; - //This->seamless_rdp = False; - This->rdp5_performanceflags = RDP5_NO_WALLPAPER | RDP5_NO_FULLWINDOWDRAG | RDP5_NO_MENUANIMATIONS; - This->tcp_port_rdp = TCP_PORT_RDP; - -#define NOT_SET -1 - This->cache.bmpcache_lru[0] = NOT_SET; - This->cache.bmpcache_lru[1] = NOT_SET; - This->cache.bmpcache_lru[2] = NOT_SET; - This->cache.bmpcache_mru[0] = NOT_SET; - This->cache.bmpcache_mru[1] = NOT_SET; - This->cache.bmpcache_mru[2] = NOT_SET; - - This->rdp.current_status = 1; - - //hcursor = NULL; - - WNDCLASS wc; - ZeroMemory(&wc, sizeof(wc)); - - wc.lpfnWndProc = mstsc_WndProc; - wc.hbrBackground = static_cast(GetStockObject(HOLLOW_BRUSH)); - wc.lpszClassName = TEXT("MissTosca_Desktop"); - - wmZMouseWheel = RegisterWindowMessage(MSH_MOUSEWHEEL); - - ATOM a = RegisterClass(&wc); - - hwnd = CreateWindow - ( - MAKEINTATOM(a), - NULL, - WS_POPUP | WS_VISIBLE, - CW_USEDEFAULT, - CW_USEDEFAULT, - This->width, - This->height, - NULL, - NULL, - NULL, - This - ); - - // The righ time to start the protocol thread - DWORD dwThreadId; - HANDLE hThread = CreateThread(NULL, 0, mstsc_ProtocolIOThread, This, 0, &dwThreadId); - - // Your standard, garden variety message loop - MSG msg; - - while(GetMessage(&msg, NULL, 0, 0)) - { - TranslateMessage(&msg); - DispatchMessage(&msg); - } -} - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.vcproj b/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.vcproj deleted file mode 100644 index 3e91425b3b5..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/rdesktop-core-tester.vcproj +++ /dev/null @@ -1,377 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.cpp b/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.cpp deleted file mode 100644 index 1e9dbf2c515..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.cpp +++ /dev/null @@ -1,3 +0,0 @@ -#include "stdafx.h" - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.h b/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.h deleted file mode 100644 index 87956e633cb..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/stdafx.h +++ /dev/null @@ -1,32 +0,0 @@ -#pragma once - -#define _CRT_SECURE_NO_DEPRECATE -#define _SECURE_SCL 0 - -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#define WIN32_LEAN_AND_MEAN -#include -#include - -#include -#include -#include -#include -#include - -#include - -// EOF diff --git a/base/applications/tsclient/porting-tools/rdesktop-core-tester/typelib.rh b/base/applications/tsclient/porting-tools/rdesktop-core-tester/typelib.rh deleted file mode 100644 index e14a7da2c05..00000000000 --- a/base/applications/tsclient/porting-tools/rdesktop-core-tester/typelib.rh +++ /dev/null @@ -1,21 +0,0 @@ -#define TOSTRING_(X) #X -#define TOSTRING(X) TOSTRING_(X) - -LANGUAGE 0, 0 - -#ifndef TYPELIB_PATH__ -#error TYPELIB_PATH__ not defined -#endif - -#ifndef TYPELIB_RESOURCEID__ -#error TYPELIB_RESOURCEID__ not defined -#endif - -/* - NOTE: - TYPELIB_PATH__ is defined on the command line (-D TYPELIB_PATH__=) - TYPELIB_RESOURCEID__ is defined before this file is included -*/ -TYPELIB_RESOURCEID__ TYPELIB TOSTRING(TYPELIB_PATH__) - -// EOF diff --git a/base/applications/tsclient/rdesktop/COPYING b/base/applications/tsclient/rdesktop/COPYING deleted file mode 100644 index 416ee71e5ba..00000000000 --- a/base/applications/tsclient/rdesktop/COPYING +++ /dev/null @@ -1,346 +0,0 @@ -This software is released under the GNU General Public License -(reproduced below) with the additional exemption that compiling, -linking, and/or using OpenSSL together with this software is -allowed. - ---- - - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. diff --git a/base/applications/tsclient/rdesktop/Makefile.in b/base/applications/tsclient/rdesktop/Makefile.in deleted file mode 100644 index 17d5522fac3..00000000000 --- a/base/applications/tsclient/rdesktop/Makefile.in +++ /dev/null @@ -1,158 +0,0 @@ -# -# rdesktop: A Remote Desktop Protocol client -# Makefile.in -# Copyright (C) Matthew Chapman 1999-2005 -# - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -bindir = @bindir@ -mandir = @mandir@ -datadir = @datadir@ - -VERSION = @PACKAGE_VERSION@ -KEYMAP_PATH = $(datadir)/rdesktop/keymaps/ - -CC = @CC@ -INSTALL = @INSTALL@ -CFLAGS = @CFLAGS@ @X_CFLAGS@ @DEFS@ -DKEYMAP_PATH=\"$(KEYMAP_PATH)\" -LDFLAGS = @LDFLAGS@ @LIBS@ @X_LIBS@ @X_EXTRA_LIBS@ -STRIP = @STRIP@ - -TARGETS = rdesktop @RDP2VNCTARGET@ -VNCINC = @VNCINC@ -LDVNC = @LDVNC@ -VNCLINK = @VNCLINK@ -SOUNDOBJ = @SOUNDOBJ@ - -RDPOBJ = tcp.o iso.o mcs.o secure.o licence.o rdp.o orders.o bitmap.o cache.o rdp5.o channels.o rdpdr.o serial.o printer.o disk.o parallel.o printercache.o mppc.o pstcache.o lspci.o seamless.o -X11OBJ = rdesktop.o xwin.o xkeymap.o ewmhints.o xclip.o cliprdr.o -VNCOBJ = vnc/rdp2vnc.o vnc/vnc.o vnc/xkeymap.o vnc/x11stubs.o - -.PHONY: all -all: $(TARGETS) - -rdesktop: $(X11OBJ) $(SOUNDOBJ) $(RDPOBJ) - $(CC) $(CFLAGS) -o rdesktop $(X11OBJ) $(SOUNDOBJ) $(RDPOBJ) $(LDFLAGS) -lX11 - -rdp2vnc: $(VNCOBJ) $(SOUNDOBJ) $(RDPOBJ) - $(VNCLINK) $(CFLAGS) -o rdp2vnc $(VNCOBJ) $(SOUNDOBJ) $(RDPOBJ) $(LDFLAGS) $(LDVNC) - -vnc/rdp2vnc.o: rdesktop.c - $(CC) $(CFLAGS) $(VNCINC) -DRDP2VNC -o vnc/rdp2vnc.o -c rdesktop.c - -vnc/vnc.o: vnc/vnc.c - $(CC) $(CFLAGS) $(VNCINC) -DRDP2VNC -o vnc/vnc.o -c vnc/vnc.c - -vnc/xkeymap.o: xkeymap.c - $(CC) $(CFLAGS) $(VNCINC) -DRDP2VNC -o vnc/xkeymap.o -c xkeymap.c - -vnc/x11stubs.o: vnc/x11stubs.c - $(CC) $(CFLAGS) $(VNCINC) -o vnc/x11stubs.o -c vnc/x11stubs.c - -.PHONY: install -install: installbin installkeymaps installman - -.PHONY: installbin -installbin: rdesktop - mkdir -p $(DESTDIR)$(bindir) - $(INSTALL) rdesktop $(DESTDIR)$(bindir) - $(STRIP) $(DESTDIR)$(bindir)/rdesktop - chmod 755 $(DESTDIR)$(bindir)/rdesktop - -.PHONY: installman -installman: doc/rdesktop.1 - mkdir -p $(DESTDIR)$(mandir)/man1 - cp doc/rdesktop.1 $(DESTDIR)$(mandir)/man1 - chmod 644 $(DESTDIR)$(mandir)/man1/rdesktop.1 - -.PHONY: installkeymaps -installkeymaps: - mkdir -p $(DESTDIR)$(KEYMAP_PATH) -# Prevent copying the CVS directory - cp keymaps/?? keymaps/??-?? $(DESTDIR)$(KEYMAP_PATH) - cp keymaps/common $(DESTDIR)$(KEYMAP_PATH) - cp keymaps/modifiers $(DESTDIR)$(KEYMAP_PATH) - chmod 644 $(DESTDIR)$(KEYMAP_PATH)/* - -.PHONY: proto -proto: - cat proto.head > proto.h - cproto -DMAKE_PROTO \ - bitmap.c cache.c channels.c cliprdr.c disk.c mppc.c ewmhints.c \ - iso.c licence.c mcs.c orders.c parallel.c printer.c printercache.c \ - pstcache.c rdesktop.c rdp5.c rdp.c rdpdr.c rdpsnd.c rdpsnd_oss.c \ - secure.c serial.c tcp.c xclip.c xkeymap.c xwin.c lspci.c seamless.c >> proto.h - cat proto.tail >> proto.h - -.PHONY: clean -clean: - rm -f *.o *~ vnc/*.o vnc/*~ rdesktop rdp2vnc - -.PHONY: distclean -distclean: clean - rm -rf autom4te.cache config.log config.status Makefile - -.PHONY: dist -dist: rdesktop-$(VERSION).tar.gz - -rdesktop-$(VERSION).tar.gz: Makefile configure - mkdir -p /tmp/rdesktop-make-dist-dir - ln -sf `pwd` /tmp/rdesktop-make-dist-dir/rdesktop-$(VERSION) - (cd /tmp/rdesktop-make-dist-dir; \ - tar zcvf rdesktop-$(VERSION)/rdesktop-$(VERSION).tar.gz \ - rdesktop-$(VERSION)/COPYING \ - rdesktop-$(VERSION)/README \ - rdesktop-$(VERSION)/configure \ - rdesktop-$(VERSION)/configure.ac \ - rdesktop-$(VERSION)/config.sub \ - rdesktop-$(VERSION)/config.guess \ - rdesktop-$(VERSION)/bootstrap \ - rdesktop-$(VERSION)/install-sh \ - rdesktop-$(VERSION)/Makefile.in \ - rdesktop-$(VERSION)/rdesktop.spec \ - rdesktop-$(VERSION)/*.c \ - rdesktop-$(VERSION)/*.h \ - rdesktop-$(VERSION)/proto.head \ - rdesktop-$(VERSION)/proto.tail \ - rdesktop-$(VERSION)/keymaps/?? \ - rdesktop-$(VERSION)/keymaps/??-?? \ - rdesktop-$(VERSION)/keymaps/common \ - rdesktop-$(VERSION)/keymaps/modifiers \ - rdesktop-$(VERSION)/keymaps/convert-map \ - rdesktop-$(VERSION)/doc/HACKING \ - rdesktop-$(VERSION)/doc/AUTHORS \ - rdesktop-$(VERSION)/doc/TODO \ - rdesktop-$(VERSION)/doc/ChangeLog \ - rdesktop-$(VERSION)/doc/keymapping.txt \ - rdesktop-$(VERSION)/doc/keymap-names.txt \ - rdesktop-$(VERSION)/doc/ipv6.txt \ - rdesktop-$(VERSION)/doc/licensing.txt \ - rdesktop-$(VERSION)/doc/patches.txt \ - rdesktop-$(VERSION)/doc/redirection.txt \ - rdesktop-$(VERSION)/doc/rdesktop.1 ) - rm -rf /tmp/rdesktop-make-dist-dir - -.PHONY: dist-noversion -dist-noversion: rdesktop.tar.gz - -rdesktop.tar.gz: rdesktop-$(VERSION).tar.gz - mkdir -p /tmp/rdesktop-make-dist-dir - tar zxvf $< -C /tmp/rdesktop-make-dist-dir - mv /tmp/rdesktop-make-dist-dir/rdesktop-$(VERSION) /tmp/rdesktop-make-dist-dir/rdesktop - ls /tmp/rdesktop-make-dist-dir/rdesktop - tar zcvf $@ -C /tmp/rdesktop-make-dist-dir rdesktop - rm -rf /tmp/rdesktop-make-dist-dir - -Makefile: Makefile.in configure - ./config.status - -configure: configure.ac - ./bootstrap - -.SUFFIXES: -.SUFFIXES: .c .o - -.c.o: - $(CC) $(CFLAGS) -o $@ -c $< - diff --git a/base/applications/tsclient/rdesktop/README b/base/applications/tsclient/rdesktop/README deleted file mode 100644 index d554582ba6d..00000000000 --- a/base/applications/tsclient/rdesktop/README +++ /dev/null @@ -1,32 +0,0 @@ -=========================================== -rdesktop: A Remote Desktop Protocol client. -=========================================== - -rdesktop is a client for Microsoft Windows NT Terminal Server, Windows 2000 -Terminal Services, Windows 2003 Terminal Services/Remote Desktop, Windows XP -Remote Desktop, and possibly other Terminal Services products. -rdesktop currently implements the RDP version 4 and 5 protocols. - -Installation ------------- -rdesktop uses a typical GNU-style build procedure: - - % ./configure [options] - % make - % make install - -where documentation for [options] can be found by running "./configure --help". -Usually no options are necessary. The default is to install under /usr/local, -this can be changed with --prefix=directory. - -Invocation ----------- - - % rdesktop [options] server - -where server is the name of the Terminal Services machine. Note: if you -receive "Connection refused", this probably means that the server does not have -Terminal Services enabled, or there is a firewall blocking access. - -The rdesktop manual page lists the possible options ("man rdesktop"). - diff --git a/base/applications/tsclient/rdesktop/bitmap.c b/base/applications/tsclient/rdesktop/bitmap.c deleted file mode 100644 index d23a77c7c15..00000000000 --- a/base/applications/tsclient/rdesktop/bitmap.c +++ /dev/null @@ -1,1112 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - rdesktop: A Remote Desktop Protocol client. - Bitmap decompression routines - Copyright (C) Matthew Chapman 1999-2005 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -/* three seperate function for speed when decompressing the bitmaps */ -/* when modifing one function make the change in the others */ -/* comment out #define BITMAP_SPEED_OVER_SIZE below for one slower function */ -/* j@american-data.com */ - -#define BITMAP_SPEED_OVER_SIZE - -/* indent is confused by this file */ -/* *INDENT-OFF* */ - -#include "rdesktop.h" - -#define CVAL(p) (*(p++)) -#ifdef NEED_ALIGN -#ifdef L_ENDIAN -#define CVAL2(p, v) { v = (*(p++)); v |= (*(p++)) << 8; } -#else -#define CVAL2(p, v) { v = (*(p++)) << 8; v |= (*(p++)); } -#endif /* L_ENDIAN */ -#else -#define CVAL2(p, v) { v = (*((uint16*)p)); p += 2; } -#endif /* NEED_ALIGN */ - -#define UNROLL8(exp) { exp exp exp exp exp exp exp exp } - -#define REPEAT(statement) \ -{ \ - while((count & ~0x7) && ((x+8) < width)) \ - UNROLL8( statement; count--; x++; ); \ - \ - while((count > 0) && (x < width)) \ - { \ - statement; \ - count--; \ - x++; \ - } \ -} - -#define MASK_UPDATE() \ -{ \ - mixmask <<= 1; \ - if (mixmask == 0) \ - { \ - mask = fom_mask ? fom_mask : CVAL(input); \ - mixmask = 1; \ - } \ -} - -#ifdef BITMAP_SPEED_OVER_SIZE - -/* 1 byte bitmap decompress */ -static BOOL -bitmap_decompress1(uint8 * output, int width, int height, uint8 * input, int size) -{ - uint8 *end = input + size; - uint8 *prevline = NULL; - int opcode, count, offset, isfillormix; - int lastopcode = -1, insertmix = False, bicolour = False; - uint8 code; - uint8 colour1 = 0, colour2 = 0; - uint8 mixmask, mask = 0; - uint8 mix = 0xff; - int fom_mask = 0; -#if 0 - uint8 *line = NULL; - int x = width; -#else - uint8 *line = output; - int x = 0; - int y = 0; -#endif - - while (input < end) - { - fom_mask = 0; - code = CVAL(input); - opcode = code >> 4; - /* Handle different opcode forms */ - switch (opcode) - { - case 0xc: - case 0xd: - case 0xe: - opcode -= 6; - count = code & 0xf; - offset = 16; - break; - case 0xf: - opcode = code & 0xf; - if (opcode < 9) - { - count = CVAL(input); - count |= CVAL(input) << 8; - } - else - { - count = (opcode < 0xb) ? 8 : 1; - } - offset = 0; - break; - default: - opcode >>= 1; - count = code & 0x1f; - offset = 32; - break; - } - /* Handle strange cases for counts */ - if (offset != 0) - { - isfillormix = ((opcode == 2) || (opcode == 7)); - if (count == 0) - { - if (isfillormix) - count = CVAL(input) + 1; - else - count = CVAL(input) + offset; - } - else if (isfillormix) - { - count <<= 3; - } - } - /* Read preliminary data */ - switch (opcode) - { - case 0: /* Fill */ - if ((lastopcode == opcode) && !((x == width) && (prevline == NULL))) - insertmix = True; - break; - case 8: /* Bicolour */ - colour1 = CVAL(input); - case 3: /* Colour */ - colour2 = CVAL(input); - break; - case 6: /* SetMix/Mix */ - case 7: /* SetMix/FillOrMix */ - mix = CVAL(input); - opcode -= 5; - break; - case 9: /* FillOrMix_1 */ - mask = 0x03; - opcode = 0x02; - fom_mask = 3; - break; - case 0x0a: /* FillOrMix_2 */ - mask = 0x05; - opcode = 0x02; - fom_mask = 5; - break; - } - lastopcode = opcode; - mixmask = 0; - /* Output body */ - while (count > 0) - { - if (x >= width) - { -#if 0 - if (height <= 0) -#else - if (y >= height) -#endif - return False; - x = 0; - -#if 0 - height--; -#else - y ++; -#endif - - prevline = line; - -#if 0 - line = output + height * width; -#else - line = output + y * width; -#endif - } - switch (opcode) - { - case 0: /* Fill */ - if (insertmix) - { - if (prevline == NULL) - line[x] = mix; - else - line[x] = prevline[x] ^ mix; - insertmix = False; - count--; - x++; - } - if (prevline == NULL) - { - REPEAT(line[x] = 0) - } - else - { - REPEAT(line[x] = prevline[x]) - } - break; - case 1: /* Mix */ - if (prevline == NULL) - { - REPEAT(line[x] = mix) - } - else - { - REPEAT(line[x] = prevline[x] ^ mix) - } - break; - case 2: /* Fill or Mix */ - if (prevline == NULL) - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - line[x] = mix; - else - line[x] = 0; - ) - } - else - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - line[x] = prevline[x] ^ mix; - else - line[x] = prevline[x]; - ) - } - break; - case 3: /* Colour */ - REPEAT(line[x] = colour2) - break; - case 4: /* Copy */ - REPEAT(line[x] = CVAL(input)) - break; - case 8: /* Bicolour */ - REPEAT - ( - if (bicolour) - { - line[x] = colour2; - bicolour = False; - } - else - { - line[x] = colour1; - bicolour = True; count++; - } - ) - break; - case 0xd: /* White */ - REPEAT(line[x] = 0xff) - break; - case 0xe: /* Black */ - REPEAT(line[x] = 0) - break; - default: - unimpl("bitmap opcode 0x%x\n", opcode); - return False; - } - } - } - return True; -} - -/* 2 byte bitmap decompress */ -static BOOL -bitmap_decompress2(uint8 * output, int width, int height, uint8 * input, int size) -{ - uint8 *end = input + size; - uint16 *prevline = NULL; - int opcode, count, offset, isfillormix; - int lastopcode = -1, insertmix = False, bicolour = False; - uint8 code; - uint16 colour1 = 0, colour2 = 0; - uint8 mixmask, mask = 0; - uint16 mix = 0xffff; - int fom_mask = 0; -#if 0 - uint8 *line = NULL; - int x = width; -#else - uint8 *line = output; - int x = 0; - int y = 0; -#endif - - while (input < end) - { - fom_mask = 0; - code = CVAL(input); - opcode = code >> 4; - /* Handle different opcode forms */ - switch (opcode) - { - case 0xc: - case 0xd: - case 0xe: - opcode -= 6; - count = code & 0xf; - offset = 16; - break; - case 0xf: - opcode = code & 0xf; - if (opcode < 9) - { - count = CVAL(input); - count |= CVAL(input) << 8; - } - else - { - count = (opcode < 0xb) ? 8 : 1; - } - offset = 0; - break; - default: - opcode >>= 1; - count = code & 0x1f; - offset = 32; - break; - } - /* Handle strange cases for counts */ - if (offset != 0) - { - isfillormix = ((opcode == 2) || (opcode == 7)); - if (count == 0) - { - if (isfillormix) - count = CVAL(input) + 1; - else - count = CVAL(input) + offset; - } - else if (isfillormix) - { - count <<= 3; - } - } - /* Read preliminary data */ - switch (opcode) - { - case 0: /* Fill */ - if ((lastopcode == opcode) && !((x == width) && (prevline == NULL))) - insertmix = True; - break; - case 8: /* Bicolour */ - CVAL2(input, colour1); - case 3: /* Colour */ - CVAL2(input, colour2); - break; - case 6: /* SetMix/Mix */ - case 7: /* SetMix/FillOrMix */ - CVAL2(input, mix); - opcode -= 5; - break; - case 9: /* FillOrMix_1 */ - mask = 0x03; - opcode = 0x02; - fom_mask = 3; - break; - case 0x0a: /* FillOrMix_2 */ - mask = 0x05; - opcode = 0x02; - fom_mask = 5; - break; - } - lastopcode = opcode; - mixmask = 0; - /* Output body */ - while (count > 0) - { - if (x >= width) - { -#if 0 - if (height <= 0) -#else - if (y >= height) -#endif - return False; - x = 0; - -#if 0 - height--; -#else - y ++; -#endif - - prevline = line; - -#if 0 - line = ((uint16 *) output) + height * width; -#else - line = ((uint16 *) output) + y * width; -#endif - } - switch (opcode) - { - case 0: /* Fill */ - if (insertmix) - { - if (prevline == NULL) - line[x] = mix; - else - line[x] = prevline[x] ^ mix; - insertmix = False; - count--; - x++; - } - if (prevline == NULL) - { - REPEAT(line[x] = 0) - } - else - { - REPEAT(line[x] = prevline[x]) - } - break; - case 1: /* Mix */ - if (prevline == NULL) - { - REPEAT(line[x] = mix) - } - else - { - REPEAT(line[x] = prevline[x] ^ mix) - } - break; - case 2: /* Fill or Mix */ - if (prevline == NULL) - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - line[x] = mix; - else - line[x] = 0; - ) - } - else - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - line[x] = prevline[x] ^ mix; - else - line[x] = prevline[x]; - ) - } - break; - case 3: /* Colour */ - REPEAT(line[x] = colour2) - break; - case 4: /* Copy */ - REPEAT(CVAL2(input, line[x])) - break; - case 8: /* Bicolour */ - REPEAT - ( - if (bicolour) - { - line[x] = colour2; - bicolour = False; - } - else - { - line[x] = colour1; - bicolour = True; - count++; - } - ) - break; - case 0xd: /* White */ - REPEAT(line[x] = 0xffff) - break; - case 0xe: /* Black */ - REPEAT(line[x] = 0) - break; - default: - unimpl("bitmap opcode 0x%x\n", opcode); - return False; - } - } - } - return True; -} - -/* 3 byte bitmap decompress */ -static BOOL -bitmap_decompress3(uint8 * output, int width, int height, uint8 * input, int size) -{ - uint8 *end = input + size; - uint8 *prevline = NULL; - int opcode, count, offset, isfillormix; - int lastopcode = -1, insertmix = False, bicolour = False; - uint8 code; - uint8 colour1[3] = {0, 0, 0}, colour2[3] = {0, 0, 0}; - uint8 mixmask, mask = 0; - uint8 mix[3] = {0xff, 0xff, 0xff}; - int fom_mask = 0; -#if 0 - uint8 *line = NULL; - int x = width; -#else - uint8 *line = output; - int x = 0; - int y = 0; -#endif - - while (input < end) - { - fom_mask = 0; - code = CVAL(input); - opcode = code >> 4; - /* Handle different opcode forms */ - switch (opcode) - { - case 0xc: - case 0xd: - case 0xe: - opcode -= 6; - count = code & 0xf; - offset = 16; - break; - case 0xf: - opcode = code & 0xf; - if (opcode < 9) - { - count = CVAL(input); - count |= CVAL(input) << 8; - } - else - { - count = (opcode < - 0xb) ? 8 : 1; - } - offset = 0; - break; - default: - opcode >>= 1; - count = code & 0x1f; - offset = 32; - break; - } - /* Handle strange cases for counts */ - if (offset != 0) - { - isfillormix = ((opcode == 2) || (opcode == 7)); - if (count == 0) - { - if (isfillormix) - count = CVAL(input) + 1; - else - count = CVAL(input) + offset; - } - else if (isfillormix) - { - count <<= 3; - } - } - /* Read preliminary data */ - switch (opcode) - { - case 0: /* Fill */ - if ((lastopcode == opcode) && !((x == width) && (prevline == NULL))) - insertmix = True; - break; - case 8: /* Bicolour */ - colour1[0] = CVAL(input); - colour1[1] = CVAL(input); - colour1[2] = CVAL(input); - case 3: /* Colour */ - colour2[0] = CVAL(input); - colour2[1] = CVAL(input); - colour2[2] = CVAL(input); - break; - case 6: /* SetMix/Mix */ - case 7: /* SetMix/FillOrMix */ - mix[0] = CVAL(input); - mix[1] = CVAL(input); - mix[2] = CVAL(input); - opcode -= 5; - break; - case 9: /* FillOrMix_1 */ - mask = 0x03; - opcode = 0x02; - fom_mask = 3; - break; - case 0x0a: /* FillOrMix_2 */ - mask = 0x05; - opcode = 0x02; - fom_mask = 5; - break; - } - lastopcode = opcode; - mixmask = 0; - /* Output body */ - while (count > 0) - { - if (x >= width) - { -#if 0 - if (height <= 0) -#else - if (y >= height) -#endif - return False; - x = 0; - -#if 0 - height--; -#else - y ++; -#endif - - prevline = line; - -#if 0 - line = output + height * (width * 3); -#else - line = output + y * (width * 3); -#endif - } - switch (opcode) - { - case 0: /* Fill */ - if (insertmix) - { - if (prevline == NULL) - { - line[x * 3] = mix[0]; - line[x * 3 + 1] = mix[1]; - line[x * 3 + 2] = mix[2]; - } - else - { - line[x * 3] = - prevline[x * 3] ^ mix[0]; - line[x * 3 + 1] = - prevline[x * 3 + 1] ^ mix[1]; - line[x * 3 + 2] = - prevline[x * 3 + 2] ^ mix[2]; - } - insertmix = False; - count--; - x++; - } - if (prevline == NULL) - { - REPEAT - ( - line[x * 3] = 0; - line[x * 3 + 1] = 0; - line[x * 3 + 2] = 0; - ) - } - else - { - REPEAT - ( - line[x * 3] = prevline[x * 3]; - line[x * 3 + 1] = prevline[x * 3 + 1]; - line[x * 3 + 2] = prevline[x * 3 + 2]; - ) - } - break; - case 1: /* Mix */ - if (prevline == NULL) - { - REPEAT - ( - line[x * 3] = mix[0]; - line[x * 3 + 1] = mix[1]; - line[x * 3 + 2] = mix[2]; - ) - } - else - { - REPEAT - ( - line[x * 3] = - prevline[x * 3] ^ mix[0]; - line[x * 3 + 1] = - prevline[x * 3 + 1] ^ mix[1]; - line[x * 3 + 2] = - prevline[x * 3 + 2] ^ mix[2]; - ) - } - break; - case 2: /* Fill or Mix */ - if (prevline == NULL) - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - { - line[x * 3] = mix[0]; - line[x * 3 + 1] = mix[1]; - line[x * 3 + 2] = mix[2]; - } - else - { - line[x * 3] = 0; - line[x * 3 + 1] = 0; - line[x * 3 + 2] = 0; - } - ) - } - else - { - REPEAT - ( - MASK_UPDATE(); - if (mask & mixmask) - { - line[x * 3] = - prevline[x * 3] ^ mix [0]; - line[x * 3 + 1] = - prevline[x * 3 + 1] ^ mix [1]; - line[x * 3 + 2] = - prevline[x * 3 + 2] ^ mix [2]; - } - else - { - line[x * 3] = - prevline[x * 3]; - line[x * 3 + 1] = - prevline[x * 3 + 1]; - line[x * 3 + 2] = - prevline[x * 3 + 2]; - } - ) - } - break; - case 3: /* Colour */ - REPEAT - ( - line[x * 3] = colour2 [0]; - line[x * 3 + 1] = colour2 [1]; - line[x * 3 + 2] = colour2 [2]; - ) - break; - case 4: /* Copy */ - REPEAT - ( - line[x * 3] = CVAL(input); - line[x * 3 + 1] = CVAL(input); - line[x * 3 + 2] = CVAL(input); - ) - break; - case 8: /* Bicolour */ - REPEAT - ( - if (bicolour) - { - line[x * 3] = colour2[0]; - line[x * 3 + 1] = colour2[1]; - line[x * 3 + 2] = colour2[2]; - bicolour = False; - } - else - { - line[x * 3] = colour1[0]; - line[x * 3 + 1] = colour1[1]; - line[x * 3 + 2] = colour1[2]; - bicolour = True; - count++; - } - ) - break; - case 0xd: /* White */ - REPEAT - ( - line[x * 3] = 0xff; - line[x * 3 + 1] = 0xff; - line[x * 3 + 2] = 0xff; - ) - break; - case 0xe: /* Black */ - REPEAT - ( - line[x * 3] = 0; - line[x * 3 + 1] = 0; - line[x * 3 + 2] = 0; - ) - break; - default: - unimpl("bitmap opcode 0x%x\n", opcode); - return False; - } - } - } - return True; -} - -#else - -static uint32 -cvalx(uint8 **input, int Bpp) -{ - uint32 rv = 0; - memcpy(&rv, *input, Bpp); - *input += Bpp; - return rv; -} - -static void -setli(uint8 *input, int offset, uint32 value, int Bpp) -{ - input += offset * Bpp; - memcpy(input, &value, Bpp); -} - -static uint32 -getli(uint8 *input, int offset, int Bpp) -{ - uint32 rv = 0; - input += offset * Bpp; - memcpy(&rv, input, Bpp); - return rv; -} - -static BOOL -bitmap_decompressx(uint8 *output, int width, int height, uint8 *input, int size, int Bpp) -{ - uint8 *end = input + size; - uint8 *prevline = NULL; - int opcode, count, offset, isfillormix; - int lastopcode = -1, insertmix = False, bicolour = False; - uint8 code; - uint32 colour1 = 0, colour2 = 0; - uint8 mixmask, mask = 0; - uint32 mix = 0xffffffff; - int fom_mask = 0; -#if 0 - uint8 *line = NULL; - int x = width; -#else - uint8 *line = output; - int x = 0; - int y = 0; -#endif - - while (input < end) - { - fom_mask = 0; - code = CVAL(input); - opcode = code >> 4; - - /* Handle different opcode forms */ - switch (opcode) - { - case 0xc: - case 0xd: - case 0xe: - opcode -= 6; - count = code & 0xf; - offset = 16; - break; - - case 0xf: - opcode = code & 0xf; - if (opcode < 9) - { - count = CVAL(input); - count |= CVAL(input) << 8; - } - else - { - count = (opcode < 0xb) ? 8 : 1; - } - offset = 0; - break; - - default: - opcode >>= 1; - count = code & 0x1f; - offset = 32; - break; - } - - /* Handle strange cases for counts */ - if (offset != 0) - { - isfillormix = ((opcode == 2) || (opcode == 7)); - - if (count == 0) - { - if (isfillormix) - count = CVAL(input) + 1; - else - count = CVAL(input) + offset; - } - else if (isfillormix) - { - count <<= 3; - } - } - - /* Read preliminary data */ - switch (opcode) - { - case 0: /* Fill */ - if ((lastopcode == opcode) && !((x == width) && (prevline == NULL))) - insertmix = True; - break; - case 8: /* Bicolour */ - colour1 = cvalx(&input, Bpp); - case 3: /* Colour */ - colour2 = cvalx(&input, Bpp); - break; - case 6: /* SetMix/Mix */ - case 7: /* SetMix/FillOrMix */ - mix = cvalx(&input, Bpp); - opcode -= 5; - break; - case 9: /* FillOrMix_1 */ - mask = 0x03; - opcode = 0x02; - fom_mask = 3; - break; - case 0x0a: /* FillOrMix_2 */ - mask = 0x05; - opcode = 0x02; - fom_mask = 5; - break; - - } - - lastopcode = opcode; - mixmask = 0; - - /* Output body */ - while (count > 0) - { - if (x >= width) - { -#if 0 - if (height <= 0) -#else - if (y >= height) -#endif - return False; - - x = 0; - -#if 0 - height--; -#else - y ++; -#endif - - prevline = line; - -#if 0 - line = output + height * width * Bpp; -#else - line = output + y * width * Bpp; -#endif - } - - switch (opcode) - { - case 0: /* Fill */ - if (insertmix) - { - if (prevline == NULL) - setli(line, x, mix, Bpp); - else - setli(line, x, - getli(prevline, x, Bpp) ^ mix, Bpp); - - insertmix = False; - count--; - x++; - } - - if (prevline == NULL) - { - REPEAT(setli(line, x, 0, Bpp))} - else - { - REPEAT(setli - (line, x, getli(prevline, x, Bpp), Bpp)); - } - break; - - case 1: /* Mix */ - if (prevline == NULL) - { - REPEAT(setli(line, x, mix, Bpp)); - } - else - { - REPEAT(setli - (line, x, getli(prevline, x, Bpp) ^ mix, - Bpp)); - } - break; - - case 2: /* Fill or Mix */ - if (prevline == NULL) - { - REPEAT(MASK_UPDATE(); - if (mask & mixmask) setli(line, x, mix, Bpp); - else - setli(line, x, 0, Bpp);); - } - else - { - REPEAT(MASK_UPDATE(); - if (mask & mixmask) - setli(line, x, getli(prevline, x, Bpp) ^ mix, - Bpp); - else - setli(line, x, getli(prevline, x, Bpp), - Bpp);); - } - break; - - case 3: /* Colour */ - REPEAT(setli(line, x, colour2, Bpp)); - break; - - case 4: /* Copy */ - REPEAT(setli(line, x, cvalx(&input, Bpp), Bpp)); - break; - - case 8: /* Bicolour */ - REPEAT(if (bicolour) - { - setli(line, x, colour2, Bpp); bicolour = False;} - else - { - setli(line, x, colour1, Bpp); bicolour = True; - count++;} - ); - break; - - case 0xd: /* White */ - REPEAT(setli(line, x, 0xffffffff, Bpp)); - break; - - case 0xe: /* Black */ - REPEAT(setli(line, x, 0, Bpp)); - break; - - default: - unimpl("bitmap opcode 0x%x\n", opcode); - return False; - } - } - } - - return True; -} - -#endif - -/* main decompress function */ -BOOL -bitmap_decompress(uint8 * output, int width, int height, uint8 * input, int size, int Bpp) -{ -#ifdef BITMAP_SPEED_OVER_SIZE - BOOL rv = False; - switch (Bpp) - { - case 1: - rv = bitmap_decompress1(output, width, height, input, size); - break; - case 2: - rv = bitmap_decompress2(output, width, height, input, size); - break; - case 3: - rv = bitmap_decompress3(output, width, height, input, size); - break; - } -#else - BOOL rv; - rv = bitmap_decompressx(output, width, height, input, size, Bpp); -#endif - return rv; -} - -/* *INDENT-ON* */ diff --git a/base/applications/tsclient/rdesktop/bootstrap b/base/applications/tsclient/rdesktop/bootstrap deleted file mode 100644 index 73979144b4b..00000000000 --- a/base/applications/tsclient/rdesktop/bootstrap +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -rm -rf autom4te.cache -autoreconf -i diff --git a/base/applications/tsclient/rdesktop/cache.c b/base/applications/tsclient/rdesktop/cache.c deleted file mode 100644 index dd0bb491755..00000000000 --- a/base/applications/tsclient/rdesktop/cache.c +++ /dev/null @@ -1,414 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - rdesktop: A Remote Desktop Protocol client. - Cache routines - Copyright (C) Matthew Chapman 1999-2005 - Copyright (C) Jeroen Meijer 2005 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include "rdesktop.h" - -#undef IS_SET // !!!FIXME!!! - -/* BITMAP CACHE */ -#define NUM_ELEMENTS(array) (sizeof(array) / sizeof(array[0])) -#define IS_PERSISTENT(id) (This->pstcache_fd[id] > 0) -#define TO_TOP -1 -#define NOT_SET -1 -#define IS_SET(idx) (idx >= 0) - -/* - * TODO: Test for optimal value of BUMP_COUNT. TO_TOP gives lowest cpu utilisation but using - * a positive value will hopefully result in less frequently used bitmaps having a greater chance - * of being evicted from the cache, and therby reducing the need to load bitmaps from disk. - * (Jeroen) - */ -#define BUMP_COUNT 40 - -/* Setup the bitmap cache lru/mru linked list */ -void -cache_rebuild_bmpcache_linked_list(RDPCLIENT * This, uint8 id, sint16 * idx, int count) -{ - int n = count, c = 0; - sint16 n_idx; - - /* find top, skip evicted bitmaps */ - while (--n >= 0 && This->cache.bmpcache[id][idx[n]].bitmap == NULL); - if (n < 0) - { - This->cache.bmpcache_mru[id] = This->cache.bmpcache_lru[id] = NOT_SET; - return; - } - - This->cache.bmpcache_mru[id] = idx[n]; - This->cache.bmpcache[id][idx[n]].next = NOT_SET; - n_idx = idx[n]; - c++; - - /* link list */ - while (n >= 0) - { - /* skip evicted bitmaps */ - while (--n >= 0 && This->cache.bmpcache[id][idx[n]].bitmap == NULL); - - if (n < 0) - break; - - This->cache.bmpcache[id][n_idx].previous = idx[n]; - This->cache.bmpcache[id][idx[n]].next = n_idx; - n_idx = idx[n]; - c++; - } - - This->cache.bmpcache[id][n_idx].previous = NOT_SET; - This->cache.bmpcache_lru[id] = n_idx; - - if (c != This->cache.bmpcache_count[id]) - { - error("Oops. %d in bitmap cache linked list, %d in ui cache...\n", c, - This->cache.bmpcache_count[id]); - exit(1); - } -} - -/* Move a bitmap to a new position in the linked list. */ -void -cache_bump_bitmap(RDPCLIENT * This, uint8 id, uint16 idx, int bump) -{ - int p_idx, n_idx, n; - - if (!IS_PERSISTENT(id)) - return; - - if (This->cache.bmpcache_mru[id] == idx) - return; - - DEBUG_RDP5(("bump bitmap: id=%d, idx=%d, bump=%d\n", id, idx, bump)); - - n_idx = This->cache.bmpcache[id][idx].next; - p_idx = This->cache.bmpcache[id][idx].previous; - - if (IS_SET(n_idx)) - { - /* remove */ - --This->cache.bmpcache_count[id]; - if (IS_SET(p_idx)) - This->cache.bmpcache[id][p_idx].next = n_idx; - else - This->cache.bmpcache_lru[id] = n_idx; - if (IS_SET(n_idx)) - This->cache.bmpcache[id][n_idx].previous = p_idx; - else - This->cache.bmpcache_mru[id] = p_idx; - } - else - { - p_idx = NOT_SET; - n_idx = This->cache.bmpcache_lru[id]; - } - - if (bump >= 0) - { - for (n = 0; n < bump && IS_SET(n_idx); n++) - { - p_idx = n_idx; - n_idx = This->cache.bmpcache[id][p_idx].next; - } - } - else - { - p_idx = This->cache.bmpcache_mru[id]; - n_idx = NOT_SET; - } - - /* insert */ - ++This->cache.bmpcache_count[id]; - This->cache.bmpcache[id][idx].previous = p_idx; - This->cache.bmpcache[id][idx].next = n_idx; - - if (p_idx >= 0) - This->cache.bmpcache[id][p_idx].next = idx; - else - This->cache.bmpcache_lru[id] = idx; - - if (n_idx >= 0) - This->cache.bmpcache[id][n_idx].previous = idx; - else - This->cache.bmpcache_mru[id] = idx; -} - -/* Evict the least-recently used bitmap from the cache */ -void -cache_evict_bitmap(RDPCLIENT * This, uint8 id) -{ - uint16 idx; - int n_idx; - - if (!IS_PERSISTENT(id)) - return; - - idx = This->cache.bmpcache_lru[id]; - n_idx = This->cache.bmpcache[id][idx].next; - DEBUG_RDP5(("evict bitmap: id=%d idx=%d n_idx=%d bmp=0x%x\n", id, idx, n_idx, - This->cache.bmpcache[id][idx].bitmap)); - - ui_destroy_bitmap(This, This->cache.bmpcache[id][idx].bitmap); - --This->cache.bmpcache_count[id]; - This->cache.bmpcache[id][idx].bitmap = 0; - - This->cache.bmpcache_lru[id] = n_idx; - This->cache.bmpcache[id][n_idx].previous = NOT_SET; - - pstcache_touch_bitmap(This, id, idx, 0); -} - -/* Retrieve a bitmap from the cache */ -HBITMAP -cache_get_bitmap(RDPCLIENT * This, uint8 id, uint16 idx) -{ - if ((id < NUM_ELEMENTS(This->cache.bmpcache)) && (idx < NUM_ELEMENTS(This->cache.bmpcache[0]))) - { - if (This->cache.bmpcache[id][idx].bitmap || pstcache_load_bitmap(This, id, idx)) - { - if (IS_PERSISTENT(id)) - cache_bump_bitmap(This, id, idx, BUMP_COUNT); - - return This->cache.bmpcache[id][idx].bitmap; - } - } - else if ((id < NUM_ELEMENTS(This->cache.volatile_bc)) && (idx == 0x7fff)) - { - return This->cache.volatile_bc[id]; - } - - error("get bitmap %d:%d\n", id, idx); - return NULL; -} - -/* Store a bitmap in the cache */ -void -cache_put_bitmap(RDPCLIENT * This, uint8 id, uint16 idx, HBITMAP bitmap) -{ - HBITMAP old; - - if ((id < NUM_ELEMENTS(This->cache.bmpcache)) && (idx < NUM_ELEMENTS(This->cache.bmpcache[0]))) - { - old = This->cache.bmpcache[id][idx].bitmap; - if (old != NULL) - ui_destroy_bitmap(This, old); - This->cache.bmpcache[id][idx].bitmap = bitmap; - - if (IS_PERSISTENT(id)) - { - if (old == NULL) - This->cache.bmpcache[id][idx].previous = This->cache.bmpcache[id][idx].next = NOT_SET; - - cache_bump_bitmap(This, id, idx, TO_TOP); - if (This->cache.bmpcache_count[id] > BMPCACHE2_C2_CELLS) - cache_evict_bitmap(This, id); - } - } - else if ((id < NUM_ELEMENTS(This->cache.volatile_bc)) && (idx == 0x7fff)) - { - old = This->cache.volatile_bc[id]; - if (old != NULL) - ui_destroy_bitmap(This, old); - This->cache.volatile_bc[id] = bitmap; - } - else - { - error("put bitmap %d:%d\n", id, idx); - } -} - -/* Updates the persistent bitmap cache MRU information on exit */ -void -cache_save_state(RDPCLIENT * This) -{ - uint32 id = 0, t = 0; - int idx; - - for (id = 0; id < NUM_ELEMENTS(This->cache.bmpcache); id++) - if (IS_PERSISTENT(id)) - { - DEBUG_RDP5(("Saving cache state for bitmap cache %d...", id)); - idx = This->cache.bmpcache_lru[id]; - while (idx >= 0) - { - pstcache_touch_bitmap(This, id, idx, ++t); - idx = This->cache.bmpcache[id][idx].next; - } - DEBUG_RDP5((" %d stamps written.\n", t)); - } -} - - -/* FONT CACHE */ -/* Retrieve a glyph from the font cache */ -FONTGLYPH * -cache_get_font(RDPCLIENT * This, uint8 font, uint16 character) -{ - FONTGLYPH *glyph; - - if ((font < NUM_ELEMENTS(This->cache.fontcache)) && (character < NUM_ELEMENTS(This->cache.fontcache[0]))) - { - glyph = &This->cache.fontcache[font][character]; - if (glyph->pixmap != NULL) - return glyph; - } - - error("get font %d:%d\n", font, character); - return NULL; -} - -/* Store a glyph in the font cache */ -void -cache_put_font(RDPCLIENT * This, uint8 font, uint16 character, uint16 offset, - uint16 baseline, uint16 width, uint16 height, HGLYPH pixmap) -{ - FONTGLYPH *glyph; - - if ((font < NUM_ELEMENTS(This->cache.fontcache)) && (character < NUM_ELEMENTS(This->cache.fontcache[0]))) - { - glyph = &This->cache.fontcache[font][character]; - if (glyph->pixmap != NULL) - ui_destroy_glyph(This, glyph->pixmap); - - glyph->offset = offset; - glyph->baseline = baseline; - glyph->width = width; - glyph->height = height; - glyph->pixmap = pixmap; - } - else - { - error("put font %d:%d\n", font, character); - } -} - - -/* TEXT CACHE */ -/* Retrieve a text item from the cache */ -DATABLOB * -cache_get_text(RDPCLIENT * This, uint8 cache_id) -{ - DATABLOB *text; - - text = &This->cache.textcache[cache_id]; - return text; -} - -/* Store a text item in the cache */ -void -cache_put_text(RDPCLIENT * This, uint8 cache_id, void *data, int length) -{ - DATABLOB *text; - void * p = malloc(length); - - if(p == NULL) - return; - - text = &This->cache.textcache[cache_id]; - if (text->data != NULL) - free(text->data); - text->data = p; - text->size = length; - memcpy(text->data, data, length); -} - - -/* DESKTOP CACHE */ -/* Retrieve desktop data from the cache */ -uint8 * -cache_get_desktop(RDPCLIENT * This, uint32 offset, int cx, int cy, int bytes_per_pixel) -{ - int length = cx * cy * bytes_per_pixel; - - if (offset > sizeof(This->cache.deskcache)) - offset = 0; - - if ((offset + length) <= sizeof(This->cache.deskcache)) - { - return &This->cache.deskcache[offset]; - } - - error("get desktop %d:%d\n", offset, length); - return NULL; -} - -/* Store desktop data in the cache */ -void -cache_put_desktop(RDPCLIENT * This, uint32 offset, int cx, int cy, int scanline, int bytes_per_pixel, uint8 * data) -{ - int length = cx * cy * bytes_per_pixel; - - if (offset > sizeof(This->cache.deskcache)) - offset = 0; - - if ((offset + length) <= sizeof(This->cache.deskcache)) - { - cx *= bytes_per_pixel; - while (cy--) - { - memcpy(&This->cache.deskcache[offset], data, cx); - data += scanline; - offset += cx; - } - } - else - { - error("put desktop %d:%d\n", offset, length); - } -} - - -/* CURSOR CACHE */ -/* Retrieve cursor from cache */ -HCURSOR -cache_get_cursor(RDPCLIENT * This, uint16 cache_idx) -{ - HCURSOR cursor; - - if (cache_idx < NUM_ELEMENTS(This->cache.cursorcache)) - { - cursor = This->cache.cursorcache[cache_idx]; - if (cursor != NULL) - return cursor; - } - - error("get cursor %d\n", cache_idx); - return NULL; -} - -/* Store cursor in cache */ -void -cache_put_cursor(RDPCLIENT * This, uint16 cache_idx, HCURSOR cursor) -{ - HCURSOR old; - - if (cache_idx < NUM_ELEMENTS(This->cache.cursorcache)) - { - old = This->cache.cursorcache[cache_idx]; - if (old != NULL) - ui_destroy_cursor(This, old); - - This->cache.cursorcache[cache_idx] = cursor; - } - else - { - error("put cursor %d\n", cache_idx); - } -} diff --git a/base/applications/tsclient/rdesktop/channels.c b/base/applications/tsclient/rdesktop/channels.c deleted file mode 100644 index 5c1f1bc696d..00000000000 --- a/base/applications/tsclient/rdesktop/channels.c +++ /dev/null @@ -1,177 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - rdesktop: A Remote Desktop Protocol client. - Protocol services - Virtual channels - Copyright (C) Erik Forsberg 2003 - Copyright (C) Matthew Chapman 2003-2005 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include "rdesktop.h" - -// FIXME: header mess -#if 0 -#define CHANNEL_CHUNK_LENGTH 1600 -#define CHANNEL_FLAG_FIRST 0x01 -#define CHANNEL_FLAG_LAST 0x02 -#define CHANNEL_FLAG_SHOW_PROTOCOL 0x10 -#endif - -/* FIXME: We should use the information in TAG_SRV_CHANNELS to map RDP5 - channels to MCS channels. - - The format of TAG_SRV_CHANNELS seems to be - - global_channel_no (uint16le) - number_of_other_channels (uint16le) - ..followed by uint16les for the other channels. -*/ - -VCHANNEL * -channel_register(RDPCLIENT * This, char *name, uint32 flags, void (*callback) (RDPCLIENT *, STREAM)) -{ - VCHANNEL *channel; - - if (!This->use_rdp5) - return NULL; - - if (This->num_channels >= MAX_CHANNELS) - { - error("Channel table full, increase MAX_CHANNELS\n"); - return NULL; - } - - channel = &This->channels[This->num_channels]; - channel->mcs_id = MCS_GLOBAL_CHANNEL + 1 + This->num_channels; - strncpy(channel->name, name, 8); - channel->flags = flags; - channel->process = callback; - This->num_channels++; - return channel; -} - -STREAM -channel_init(RDPCLIENT * This, VCHANNEL * channel, uint32 length) -{ - STREAM s; - - s = sec_init(This, This->encryption ? SEC_ENCRYPT : 0, length + 8); - s_push_layer(s, channel_hdr, 8); - return s; -} - -void -channel_send(RDPCLIENT * This, STREAM s, VCHANNEL * channel) -{ - uint32 length, flags; - uint32 thislength, remaining; - uint8 *data; - - /* first fragment sent in-place */ - s_pop_layer(s, channel_hdr); - length = s->end - s->p - sizeof(CHANNEL_PDU_HEADER); - - DEBUG_CHANNEL(("channel_send, length = %d\n", length)); - - thislength = MIN(length, CHANNEL_CHUNK_LENGTH); -/* Note: In the original clipboard implementation, this number was - 1592, not 1600. However, I don't remember the reason and 1600 seems - to work so.. This applies only to *this* length, not the length of - continuation or ending packets. */ - remaining = length - thislength; - flags = (remaining == 0) ? CHANNEL_FLAG_FIRST | CHANNEL_FLAG_LAST : CHANNEL_FLAG_FIRST; - if (channel->flags & CHANNEL_OPTION_SHOW_PROTOCOL) - flags |= CHANNEL_FLAG_SHOW_PROTOCOL; - - out_uint32_le(s, length); - out_uint32_le(s, flags); - data = s->end = s->p + thislength; - DEBUG_CHANNEL(("Sending %d bytes with FLAG_FIRST\n", thislength)); - sec_send_to_channel(This, s, This->encryption ? SEC_ENCRYPT : 0, channel->mcs_id); - - /* subsequent segments copied (otherwise would have to generate headers backwards) */ - while (remaining > 0) - { - thislength = MIN(remaining, CHANNEL_CHUNK_LENGTH); - remaining -= thislength; - flags = (remaining == 0) ? CHANNEL_FLAG_LAST : 0; - if (channel->flags & CHANNEL_OPTION_SHOW_PROTOCOL) - flags |= CHANNEL_FLAG_SHOW_PROTOCOL; - - DEBUG_CHANNEL(("Sending %d bytes with flags %d\n", thislength, flags)); - - s = sec_init(This, This->encryption ? SEC_ENCRYPT : 0, thislength + 8); - out_uint32_le(s, length); - out_uint32_le(s, flags); - out_uint8p(s, data, thislength); - s_mark_end(s); - sec_send_to_channel(This, s, This->encryption ? SEC_ENCRYPT : 0, channel->mcs_id); - - data += thislength; - } -} - -void -channel_process(RDPCLIENT * This, STREAM s, uint16 mcs_channel) -{ - uint32 length, flags; - uint32 thislength; - VCHANNEL *channel = NULL; - unsigned int i; - STREAM in; - - for (i = 0; i < This->num_channels; i++) - { - channel = &This->channels[i]; - if (channel->mcs_id == mcs_channel) - break; - } - - if (i >= This->num_channels) - return; - - in_uint32_le(s, length); - in_uint32_le(s, flags); - if ((flags & CHANNEL_FLAG_FIRST) && (flags & CHANNEL_FLAG_LAST)) - { - /* single fragment - pass straight up */ - channel->process(This, s); - } - else - { - /* add fragment to defragmentation buffer */ - in = &channel->in; - if (flags & CHANNEL_FLAG_FIRST) - { - if (length > in->size) - { - in->data = (uint8 *) xrealloc(in->data, length); - in->size = length; - } - in->p = in->data; - } - - thislength = MIN(s->end - s->p, in->data + in->size - in->p); - memcpy(in->p, s->p, thislength); - in->p += thislength; - - if (flags & CHANNEL_FLAG_LAST) - { - in->end = in->p; - in->p = in->data; - channel->process(This, in); - } - } -} diff --git a/base/applications/tsclient/rdesktop/cliprdr.c b/base/applications/tsclient/rdesktop/cliprdr.c deleted file mode 100644 index 01ef9055b14..00000000000 --- a/base/applications/tsclient/rdesktop/cliprdr.c +++ /dev/null @@ -1,182 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - rdesktop: A Remote Desktop Protocol client. - Protocol services - Clipboard functions - Copyright (C) Erik Forsberg 2003 - Copyright (C) Matthew Chapman 2003 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include "rdesktop.h" - -#define CLIPRDR_CONNECT 1 -#define CLIPRDR_FORMAT_ANNOUNCE 2 -#define CLIPRDR_FORMAT_ACK 3 -#define CLIPRDR_DATA_REQUEST 4 -#define CLIPRDR_DATA_RESPONSE 5 - -#define CLIPRDR_REQUEST 0 -#define CLIPRDR_RESPONSE 1 -#define CLIPRDR_ERROR 2 - -static void -cliprdr_send_packet(RDPCLIENT * This, uint16 type, uint16 status, uint8 * data, uint32 length) -{ - STREAM s; - - DEBUG_CLIPBOARD(("CLIPRDR send: type=%d, status=%d, length=%d\n", type, status, length)); - - s = channel_init(This, This->cliprdr.channel, length + 12); - out_uint16_le(s, type); - out_uint16_le(s, status); - out_uint32_le(s, length); - out_uint8p(s, data, length); - out_uint32(s, 0); /* pad? */ - s_mark_end(s); - channel_send(This, s, This->cliprdr.channel); -} - -/* Helper which announces our readiness to supply clipboard data - in a single format (such as CF_TEXT) to the RDP side. - To announce more than one format at a time, use - cliprdr_send_native_format_announce. - */ -void -cliprdr_send_simple_native_format_announce(RDPCLIENT * This, uint32 format) -{ - uint8 buffer[36]; - - DEBUG_CLIPBOARD(("cliprdr_send_simple_native_format_announce\n")); - - buf_out_uint32(buffer, format); - memset(buffer + 4, 0, sizeof(buffer) - 4); /* description */ - cliprdr_send_native_format_announce(This, buffer, sizeof(buffer)); -} - -/* Announces our readiness to supply clipboard data in multiple - formats, each denoted by a 36-byte format descriptor of - [ uint32 format + 32-byte description ]. - */ -void -cliprdr_send_native_format_announce(RDPCLIENT * This, uint8 * formats_data, uint32 formats_data_length) -{ - DEBUG_CLIPBOARD(("cliprdr_send_native_format_announce\n")); - - cliprdr_send_packet(This, CLIPRDR_FORMAT_ANNOUNCE, CLIPRDR_REQUEST, formats_data, - formats_data_length); - - if (formats_data != This->cliprdr.last_formats) - { - if (This->cliprdr.last_formats) - xfree(This->cliprdr.last_formats); - - This->cliprdr.last_formats = xmalloc(formats_data_length); - memcpy(This->cliprdr.last_formats, formats_data, formats_data_length); - This->cliprdr.last_formats_length = formats_data_length; - } -} - -void -cliprdr_send_data_request(RDPCLIENT * This, uint32 format) -{ - uint8 buffer[4]; - - DEBUG_CLIPBOARD(("cliprdr_send_data_request\n")); - buf_out_uint32(buffer, format); - cliprdr_send_packet(This, CLIPRDR_DATA_REQUEST, CLIPRDR_REQUEST, buffer, sizeof(buffer)); -} - -void -cliprdr_send_data(RDPCLIENT * This, uint8 * data, uint32 length) -{ - DEBUG_CLIPBOARD(("cliprdr_send_data\n")); - cliprdr_send_packet(This, CLIPRDR_DATA_RESPONSE, CLIPRDR_RESPONSE, data, length); -} - -static void -cliprdr_process(RDPCLIENT * This, STREAM s) -{ - uint16 type, status; - uint32 length, format; - uint8 *data; - - in_uint16_le(s, type); - in_uint16_le(s, status); - in_uint32_le(s, length); - data = s->p; - - DEBUG_CLIPBOARD(("CLIPRDR recv: type=%d, status=%d, length=%d\n", type, status, length)); - - if (status == CLIPRDR_ERROR) - { - switch (type) - { - case CLIPRDR_FORMAT_ACK: - /* FIXME: We seem to get this when we send an announce while the server is - still processing a paste. Try sending another announce. */ - cliprdr_send_native_format_announce(This, This->cliprdr.last_formats, - This->cliprdr.last_formats_length); - break; - case CLIPRDR_DATA_RESPONSE: - ui_clip_request_failed(This); - break; - default: - DEBUG_CLIPBOARD(("CLIPRDR error (type=%d)\n", type)); - } - - return; - } - - switch (type) - { - case CLIPRDR_CONNECT: - ui_clip_sync(This); - break; - case CLIPRDR_FORMAT_ANNOUNCE: - ui_clip_format_announce(This, data, length); - cliprdr_send_packet(This, CLIPRDR_FORMAT_ACK, CLIPRDR_RESPONSE, NULL, 0); - return; - case CLIPRDR_FORMAT_ACK: - break; - case CLIPRDR_DATA_REQUEST: - in_uint32_le(s, format); - ui_clip_request_data(This, format); - break; - case CLIPRDR_DATA_RESPONSE: - ui_clip_handle_data(This, data, length); - break; - case 7: /* TODO: W2K3 SP1 sends this on connect with a value of 1 */ - break; - default: - unimpl("CLIPRDR packet type %d\n", type); - } -} - -void -cliprdr_set_mode(RDPCLIENT * This, const char *optarg) -{ - ui_clip_set_mode(This, optarg); -} - -BOOL -cliprdr_init(RDPCLIENT * This) -{ - This->cliprdr.channel = - channel_register(This, "cliprdr", - CHANNEL_OPTION_INITIALIZED | CHANNEL_OPTION_ENCRYPT_RDP | - CHANNEL_OPTION_COMPRESS_RDP | CHANNEL_OPTION_SHOW_PROTOCOL, - cliprdr_process); - return (This->cliprdr.channel != NULL); -} diff --git a/base/applications/tsclient/rdesktop/config.guess b/base/applications/tsclient/rdesktop/config.guess deleted file mode 100644 index 2fc3acce2ea..00000000000 --- a/base/applications/tsclient/rdesktop/config.guess +++ /dev/null @@ -1,1411 +0,0 @@ -#! /bin/sh -# Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - -timestamp='2003-06-17' - -# This file is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Per Bothner . -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. -# -# The plan is that this can be called by configure scripts if you -# don't specify an explicit build system type. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] - -Output the configuration name of the system \`$me' is run on. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.guess ($timestamp) - -Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" >&2 - exit 1 ;; - * ) - break ;; - esac -done - -if test $# != 0; then - echo "$me: too many arguments$help" >&2 - exit 1 -fi - -trap 'exit 1' 1 2 15 - -# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -# compiler to aid in system detection is discouraged as it requires -# temporary files to be created and, as you can see below, it is a -# headache to deal with in a portable fashion. - -# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -# use `HOST_CC' if defined, but it is deprecated. - -# Portable tmp directory creation inspired by the Autoconf team. - -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ;' - -# This is needed to find uname on a Pyramid OSx when run in the BSD universe. -# (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH -fi - -UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown -UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown -UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - -## for Red Hat Linux -if test -f /etc/redhat-release ; then - VENDOR=redhat ; -else - VENDOR= ; -fi - -# Note: order is significant - the case branches are not exclusive. - -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in - *:NetBSD:*:*) - # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, - # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently - # switched to ELF, *-*-netbsd* would select the old - # object file format. This provides both forward - # compatibility and a consistent mechanism for selecting the - # object file format. - # - # Note: NetBSD doesn't particularly care about the vendor - # portion of the name. We always set it to "unknown". - sysctl="sysctl -n hw.machine_arch" - UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || echo unknown)` - case "${UNAME_MACHINE_ARCH}" in - armeb) machine=armeb-unknown ;; - arm*) machine=arm-unknown ;; - sh3el) machine=shl-unknown ;; - sh3eb) machine=sh-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; - esac - # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. - case "${UNAME_MACHINE_ARCH}" in - arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build - if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ - | grep __ELF__ >/dev/null - then - # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). - # Return netbsd for either. FIX? - os=netbsd - else - os=netbsdelf - fi - ;; - *) - os=netbsd - ;; - esac - # The OS release - # Debian GNU/NetBSD machines have a different userland, and - # thus, need a distinct triplet. However, they do not need - # kernel version information, so it can be replaced with a - # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in - Debian*) - release='-gnu' - ;; - *) - release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - ;; - esac - # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: - # contains redundant information, the shorter form: - # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}" - exit 0 ;; - amiga:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - arc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - hp300:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mac68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - macppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme68k:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvme88k:OpenBSD:*:*) - echo m88k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - mvmeppc:OpenBSD:*:*) - echo powerpc-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - pmax:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sgi:OpenBSD:*:*) - echo mipseb-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - sun3:OpenBSD:*:*) - echo m68k-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - wgrisc:OpenBSD:*:*) - echo mipsel-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - *:OpenBSD:*:*) - echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} - exit 0 ;; - alpha:OSF1:*:*) - if test $UNAME_RELEASE = "V4.0"; then - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` - fi - # According to Compaq, /usr/sbin/psrinfo has been available on - # OSF/1 and Tru64 systems produced since 1995. I hope that - # covers most systems running today. This code pipes the CPU - # types through head -n 1, so we only detect the type of CPU 0. - ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` - case "$ALPHA_CPU_TYPE" in - "EV4 (21064)") - UNAME_MACHINE="alpha" ;; - "EV4.5 (21064)") - UNAME_MACHINE="alpha" ;; - "LCA4 (21066/21068)") - UNAME_MACHINE="alpha" ;; - "EV5 (21164)") - UNAME_MACHINE="alphaev5" ;; - "EV5.6 (21164A)") - UNAME_MACHINE="alphaev56" ;; - "EV5.6 (21164PC)") - UNAME_MACHINE="alphapca56" ;; - "EV5.7 (21164PC)") - UNAME_MACHINE="alphapca57" ;; - "EV6 (21264)") - UNAME_MACHINE="alphaev6" ;; - "EV6.7 (21264A)") - UNAME_MACHINE="alphaev67" ;; - "EV6.8CB (21264C)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8AL (21264B)") - UNAME_MACHINE="alphaev68" ;; - "EV6.8CX (21264D)") - UNAME_MACHINE="alphaev68" ;; - "EV6.9A (21264/EV69A)") - UNAME_MACHINE="alphaev69" ;; - "EV7 (21364)") - UNAME_MACHINE="alphaev7" ;; - "EV7.9 (21364A)") - UNAME_MACHINE="alphaev79" ;; - esac - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit 0 ;; - Alpha*:OpenVMS:*:*) - echo alpha-hp-vms - exit 0 ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix - exit 0 ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 - exit 0 ;; - Amiga*:UNIX_System_V:4.0:*) - echo m68k-unknown-sysv4 - exit 0;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos - exit 0 ;; - *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos - exit 0 ;; - *:OS/390:*:*) - echo i370-ibm-openedition - exit 0 ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} - exit 0;; - SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp - exit 0;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then - echo pyramid-pyramid-sysv3 - else - echo pyramid-pyramid-bsd - fi - exit 0 ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 - exit 0 ;; - DRS?6000:unix:4.0:6*) - echo sparc-icl-nx6 - exit 0 ;; - DRS?6000:UNIX_SV:4.2*:7*) - case `/usr/bin/uname -p` in - sparc) echo sparc-icl-nx7 && exit 0 ;; - esac ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - i86pc:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) - UNAME_RELEASE=`uname -v` - ;; - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` - exit 0 ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} - exit 0 ;; - sun*:*:4.2BSD:*) - UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) - echo m68k-sun-sunos${UNAME_RELEASE} - ;; - sun4) - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac - exit 0 ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} - exit 0 ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not - # MiNT. But MiNT is downward compatible to TOS, so this should - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} - exit 0 ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit 0 ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit 0 ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit 0 ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} - exit 0 ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 - exit 0 ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} - exit 0 ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} - exit 0 ;; - mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c -#ifdef __cplusplus -#include /* for printf() prototype */ - int main (int argc, char *argv[]) { -#else - int main (argc, argv) int argc; char *argv[]; { -#endif - #if defined (host_mips) && defined (MIPSEB) - #if defined (SYSTYPE_SYSV) - printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_SVR4) - printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); - #endif - #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) - printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); - #endif - #endif - exit (-1); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c \ - && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ - && exit 0 - echo mips-mips-riscos${UNAME_RELEASE} - exit 0 ;; - Motorola:PowerMAX_OS:*:*) - echo powerpc-motorola-powermax - exit 0 ;; - Motorola:*:4.3:PL8-*) - echo powerpc-harris-powermax - exit 0 ;; - Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) - echo powerpc-harris-powermax - exit 0 ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix - exit 0 ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 - exit 0 ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 - exit 0 ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 - exit 0 ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] - then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] - then - echo m88k-dg-dgux${UNAME_RELEASE} - else - echo m88k-dg-dguxbcs${UNAME_RELEASE} - fi - else - echo i586-dg-dgux${UNAME_RELEASE} - fi - exit 0 ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 - exit 0 ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 - exit 0 ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 - exit 0 ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd - exit 0 ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` - exit 0 ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. - echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id - exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' - i*86:AIX:*:*) - echo i386-ibm-aix - exit 0 ;; - ia64:AIX:*:*) - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - - main() - { - if (!__power_pc()) - exit(1); - puts("powerpc-ibm-aix3.2.5"); - exit(0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 - echo rs6000-ibm-aix3.2.5 - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi - exit 0 ;; - *:AIX:*:[45]) - IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc - fi - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} - exit 0 ;; - *:AIX:*:*) - echo rs6000-ibm-aix - exit 0 ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 - exit 0 ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to - exit 0 ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx - exit 0 ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 - exit 0 ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd - exit 0 ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 - exit 0 ;; - 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) - if [ -x /usr/bin/getconf ]; then - sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; - '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac - fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - - #define _HPUX_SOURCE - #include - #include - - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } -EOF - (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` - test -z "$HP_ARCH" && HP_ARCH=hppa - fi ;; - esac - if [ ${HP_ARCH} = "hppa2.0w" ] - then - # avoid double evaluation of $set_cc_for_build - test -n "$CC_FOR_BUILD" || eval $set_cc_for_build - if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null - then - HP_ARCH="hppa2.0w" - else - HP_ARCH="hppa64" - fi - fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} - exit 0 ;; - ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} - exit 0 ;; - 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - int - main () - { - long cpu = sysconf (_SC_CPU_VERSION); - /* The order matters, because CPU_IS_HP_MC68K erroneously returns - true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct - results, however. */ - if (CPU_IS_PA_RISC (cpu)) - { - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; - case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; - default: puts ("hppa-hitachi-hiuxwe2"); break; - } - } - else if (CPU_IS_HP_MC68K (cpu)) - puts ("m68k-hitachi-hiuxwe2"); - else puts ("unknown-hitachi-hiuxwe2"); - exit (0); - } -EOF - $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 - echo unknown-hitachi-hiuxwe2 - exit 0 ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd - exit 0 ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd - exit 0 ;; - *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix - exit 0 ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf - exit 0 ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf - exit 0 ;; - i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi - exit 0 ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites - exit 0 ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd - exit 0 ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd - exit 0 ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd - exit 0 ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd - exit 0 ;; - CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ - -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ - -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - *:UNICOS/mp:*:*) - echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' - exit 0 ;; - F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) - FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit 0 ;; - i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} - exit 0 ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} - exit 0 ;; - *:FreeBSD:*:*|*:GNU/FreeBSD:*:*) - # Determine whether the default compiler uses glibc. - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #if __GLIBC__ >= 2 - LIBC=gnu - #else - LIBC= - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} - exit 0 ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin - exit 0 ;; - i*:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 - exit 0 ;; - i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 - exit 0 ;; - x86:Interix*:[34]*) - echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' - exit 0 ;; - [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) - echo i${UNAME_MACHINE}-pc-mks - exit 0 ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? - echo i586-pc-interix - exit 0 ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin - exit 0 ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin - exit 0 ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` - exit 0 ;; - *:GNU:*:*) - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` - exit 0 ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix - exit 0 ;; - arm*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - cris:Linux:*:*) - echo cris-axis-linux-gnu - exit 0 ;; - ia64:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR:-unknown}-linux-gnu - exit 0 ;; - m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - mips:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips - #undef mipsel - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mipsel - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 - ;; - mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #undef CPU - #undef mips64 - #undef mips64el - #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) - CPU=mips64el - #else - #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) - CPU=mips64 - #else - CPU= - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` - test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 - ;; - ppc:Linux:*:*) - echo powerpc-${VENDOR:-unknown}-linux-gnu - exit 0 ;; - ppc64:Linux:*:*) - echo powerpc64-${VENDOR:-unknown}-linux-gnu - exit 0 ;; - alpha:Linux:*:*) - case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in - EV5) UNAME_MACHINE=alphaev5 ;; - EV56) UNAME_MACHINE=alphaev56 ;; - PCA56) UNAME_MACHINE=alphapca56 ;; - PCA57) UNAME_MACHINE=alphapca56 ;; - EV6) UNAME_MACHINE=alphaev6 ;; - EV67) UNAME_MACHINE=alphaev67 ;; - EV68*) UNAME_MACHINE=alphaev68 ;; - esac - objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null - if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi - echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} - exit 0 ;; - parisc:Linux:*:* | hppa:Linux:*:*) - # Look for CPU level - case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-gnu ;; - PA8*) echo hppa2.0-unknown-linux-gnu ;; - *) echo hppa-unknown-linux-gnu ;; - esac - exit 0 ;; - parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-gnu - exit 0 ;; - s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-${VENDOR:-ibm}-linux-gnu - exit 0 ;; - sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu - exit 0 ;; - x86_64:Linux:*:*) - echo x86_64-${VENDOR:-unknown}-linux-gnu - exit 0 ;; - i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. - # Set LC_ALL=C to ensure ld outputs messages in English. - ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ - | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g - s/.*supported targets: *// - s/ .*// - p'` - case "$ld_supported_targets" in - elf32-i386) - TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" - ;; - a.out-i386-linux) - echo "${UNAME_MACHINE}-pc-linux-gnuaout" - exit 0 ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit 0 ;; - "") - # Either a pre-BFD a.out linker (linux-gnuoldld) or - # one that does not give us useful --help. - echo "${UNAME_MACHINE}-pc-linux-gnuoldld" - exit 0 ;; - esac - # Determine whether the default compiler is a.out or elf - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - #ifdef __ELF__ - # ifdef __GLIBC__ - # if __GLIBC__ >= 2 - LIBC=gnu - # else - LIBC=gnulibc1 - # endif - # else - LIBC=gnulibc1 - # endif - #else - #ifdef __INTEL_COMPILER - LIBC=gnu - #else - LIBC=gnuaout - #endif - #endif -EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` - test x"${LIBC}" != x && echo "${UNAME_MACHINE}-${VENDOR:-pc}-linux-${LIBC}" && exit 0 - test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 - ;; - i*86:DYNIX/ptx:4*:*) - # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. - # earlier versions are messed up and put the nodename in both - # sysname and nodename. - echo i386-sequent-sysv4 - exit 0 ;; - i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} - exit 0 ;; - i*86:OS/2:*:*) - # If we were able to find `uname', then EMX Unix compatibility - # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx - exit 0 ;; - i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop - exit 0 ;; - i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos - exit 0 ;; - i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp - exit 0 ;; - i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi - exit 0 ;; - i*86:*:5:[78]*) - case `/bin/uname -X | grep "^Machine"` in - *486*) UNAME_MACHINE=i486 ;; - *Pentium) UNAME_MACHINE=i586 ;; - *Pent*|*Celeron) UNAME_MACHINE=i686 ;; - esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} - exit 0 ;; - i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then - UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` - (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 - (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi - exit 0 ;; - pc:*:*:*) - # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp - exit 0 ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 - exit 0 ;; - paragon:*:*:*) - echo i860-intel-osf1 - exit 0 ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi - exit 0 ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv - exit 0 ;; - mc68k:UNIX:SYSTEM5:3.51m) - echo m68k-convergent-sysv - exit 0 ;; - M680?0:D-NIX:5.3:*) - echo m68k-diab-dnix - exit 0 ;; - M68*:*:R3V[567]*:*) - test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; - 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4.3${OS_REL} && exit 0 - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && echo i486-ncr-sysv4 && exit 0 ;; - m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 - exit 0 ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} - exit 0 ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} - exit 0 ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 - exit 0 ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 - else - echo ns32k-sni-sysv - fi - exit 0 ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit 0 ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 - exit 0 ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 - exit 0 ;; - *:VOS:*:*) - # From Paul.Green@stratus.com. - echo hppa1.1-stratus-vos - exit 0 ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} - exit 0 ;; - news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 - exit 0 ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi - exit 0 ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos - exit 0 ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos - exit 0 ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos - exit 0 ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} - exit 0 ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Darwin:*:*) - case `uname -p` in - *86) UNAME_PROCESSOR=i686 ;; - powerpc) UNAME_PROCESSOR=powerpc ;; - esac - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} - exit 0 ;; - *:procnto*:*:* | *:QNX:[0123456789]*:*) - UNAME_PROCESSOR=`uname -p` - if test "$UNAME_PROCESSOR" = "x86"; then - UNAME_PROCESSOR=i386 - UNAME_MACHINE=pc - fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} - exit 0 ;; - *:QNX:*:4*) - echo i386-pc-qnx - exit 0 ;; - NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} - exit 0 ;; - *:NonStop-UX:*:*) - echo mips-compaq-nonstopux - exit 0 ;; - BS2000:POSIX*:*:*) - echo bs2000-siemens-sysv - exit 0 ;; - DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} - exit 0 ;; - *:Plan9:*:*) - # "uname -m" is not consistent, so use $cputype instead. 386 - # is converted to i386 for consistency with other x86 - # operating systems. - if test "$cputype" = "386"; then - UNAME_MACHINE=i386 - else - UNAME_MACHINE="$cputype" - fi - echo ${UNAME_MACHINE}-unknown-plan9 - exit 0 ;; - *:TOPS-10:*:*) - echo pdp10-unknown-tops10 - exit 0 ;; - *:TENEX:*:*) - echo pdp10-unknown-tenex - exit 0 ;; - KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) - echo pdp10-dec-tops20 - exit 0 ;; - XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) - echo pdp10-xkl-tops20 - exit 0 ;; - *:TOPS-20:*:*) - echo pdp10-unknown-tops20 - exit 0 ;; - *:ITS:*:*) - echo pdp10-unknown-its - exit 0 ;; - SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} - exit 0 ;; -esac - -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -eval $set_cc_for_build -cat >$dummy.c < -# include -#endif -main () -{ -#if defined (sony) -#if defined (MIPSEB) - /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, - I don't know.... */ - printf ("mips-sony-bsd\n"); exit (0); -#else -#include - printf ("m68k-sony-newsos%s\n", -#ifdef NEWSOS4 - "4" -#else - "" -#endif - ); exit (0); -#endif -#endif - -#if defined (__arm) && defined (__acorn) && defined (__unix) - printf ("arm-acorn-riscix"); exit (0); -#endif - -#if defined (hp300) && !defined (hpux) - printf ("m68k-hp-bsd\n"); exit (0); -#endif - -#if defined (NeXT) -#if !defined (__ARCHITECTURE__) -#define __ARCHITECTURE__ "m68k" -#endif - int version; - version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - if (version < 4) - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); - else - printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); - exit (0); -#endif - -#if defined (MULTIMAX) || defined (n16) -#if defined (UMAXV) - printf ("ns32k-encore-sysv\n"); exit (0); -#else -#if defined (CMU) - printf ("ns32k-encore-mach\n"); exit (0); -#else - printf ("ns32k-encore-bsd\n"); exit (0); -#endif -#endif -#endif - -#if defined (__386BSD__) - printf ("i386-pc-bsd\n"); exit (0); -#endif - -#if defined (sequent) -#if defined (i386) - printf ("i386-sequent-dynix\n"); exit (0); -#endif -#if defined (ns32000) - printf ("ns32k-sequent-dynix\n"); exit (0); -#endif -#endif - -#if defined (_SEQUENT_) - struct utsname un; - - uname(&un); - - if (strncmp(un.version, "V2", 2) == 0) { - printf ("i386-sequent-ptx2\n"); exit (0); - } - if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ - printf ("i386-sequent-ptx1\n"); exit (0); - } - printf ("i386-sequent-ptx\n"); exit (0); - -#endif - -#if defined (vax) -# if !defined (ultrix) -# include -# if defined (BSD) -# if BSD == 43 - printf ("vax-dec-bsd4.3\n"); exit (0); -# else -# if BSD == 199006 - printf ("vax-dec-bsd4.3reno\n"); exit (0); -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# endif -# else - printf ("vax-dec-bsd\n"); exit (0); -# endif -# else - printf ("vax-dec-ultrix\n"); exit (0); -# endif -#endif - -#if defined (alliant) && defined (i860) - printf ("i860-alliant-bsd\n"); exit (0); -#endif - - exit (1); -} -EOF - -$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 - -# Apollos put the system type in the environment. - -test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } - -# Convex versions that predate uname can use getsysinfo(1) - -if [ -x /usr/convex/getsysinfo ] -then - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd - exit 0 ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi - exit 0 ;; - c34*) - echo c34-convex-bsd - exit 0 ;; - c38*) - echo c38-convex-bsd - exit 0 ;; - c4*) - echo c4-convex-bsd - exit 0 ;; - esac -fi - -cat >&2 < in order to provide the needed -information to handle your system. - -config.guess timestamp = $timestamp - -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null` - -hostinfo = `(hostinfo) 2>/dev/null` -/bin/universe = `(/bin/universe) 2>/dev/null` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -/bin/arch = `(/bin/arch) 2>/dev/null` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` - -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} -EOF - -exit 1 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/base/applications/tsclient/rdesktop/config.sub b/base/applications/tsclient/rdesktop/config.sub deleted file mode 100644 index 7cee3d6ec7f..00000000000 --- a/base/applications/tsclient/rdesktop/config.sub +++ /dev/null @@ -1,1500 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. - -timestamp='2003-06-18' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit 0;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | c4x | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | fr30 | frv \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | ip2k \ - | m32r | m68000 | m68k | m88k | mcore \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64vr | mips64vrel \ - | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | msp430 \ - | ns16k | ns32k \ - | openrisc | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | s390 | s390x \ - | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xscale | xstormy16 | xtensa \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* \ - | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ - | clipper-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | ip2k-* \ - | m32r-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | mcore-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipstx39-* | mipstx39el-* \ - | msp430-* \ - | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | s390-* | s390x-* \ - | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ - | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ - | xtensa-* \ - | ymp-* \ - | z8k-*) - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - crds | unos) - basic_machine=m68k-crds - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - mmix*) - basic_machine=mmix-knuth - os=-mmixware - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nv1) - basic_machine=nv1-cray - os=-unicosmp - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - or32 | or32-*) - basic_machine=or32-unknown - os=-coff - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown - ;; - sei) - basic_machine=mips-sei - os=-seiux - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=alphaev5-cray - os=-unicos - ;; - t90) - basic_machine=t90-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - ymp) - basic_machine=ymp-cray - os=-unicos - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - romp) - basic_machine=romp-ibm - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) - basic_machine=sh-unknown - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparc | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ - | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto-qnx*) - ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -nova*) - os=-rtmk-nova - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -aros*) - os=-aros - ;; - -kaos*) - os=-kaos - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - c4x-* | tic4x-*) - os=-coff - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/base/applications/tsclient/rdesktop/configure.ac b/base/applications/tsclient/rdesktop/configure.ac deleted file mode 100644 index 34a4e79c211..00000000000 --- a/base/applications/tsclient/rdesktop/configure.ac +++ /dev/null @@ -1,727 +0,0 @@ -AC_INIT(rdesktop, 1.4.1) - -AC_CONFIG_SRCDIR([rdesktop.c]) - -AC_PROG_CC -if test "$GCC" = yes; then - CFLAGS="$CFLAGS -Wall" -fi - -AC_PROG_INSTALL -AC_LANG_C -AC_HEADER_STDC -AC_C_BIGENDIAN([AC_DEFINE(B_ENDIAN)], [AC_DEFINE(L_ENDIAN)]) -AC_PATH_XTRA - -AC_SEARCH_LIBS(socket, socket) -AC_SEARCH_LIBS(inet_aton, resolv) - -AC_CHECK_HEADER(sys/select.h, AC_DEFINE(HAVE_SYS_SELECT_H)) -AC_CHECK_HEADER(sys/modem.h, AC_DEFINE(HAVE_SYS_MODEM_H)) -AC_CHECK_HEADER(sys/filio.h, AC_DEFINE(HAVE_SYS_FILIO_H)) -AC_CHECK_HEADER(sys/strtio.h, AC_DEFINE(HAVE_SYS_STRTIO_H)) -AC_CHECK_HEADER(locale.h, AC_DEFINE(HAVE_LOCALE_H)) -AC_CHECK_HEADER(langinfo.h, AC_DEFINE(HAVE_LANGINFO_H)) - -AC_CHECK_TOOL(STRIP, strip, :) - -rpath="" - -# -# OpenSSL detection borrowed from stunnel -# -checkssldir() { : - if test -f "$1/include/openssl/ssl.h"; then - ssldir="$1" - return 0 - fi - return 1 -} -AC_MSG_CHECKING([for OpenSSL directory]) -AC_ARG_WITH(openssl, - [ --with-openssl=DIR look for OpenSSL at DIR/include, DIR/lib], - [ - dnl Check the specified location only - checkssldir "$withval" - ], - [ - dnl Search default locations of OpenSSL library - for maindir in /usr/local /usr/lib /usr/pkg /usr /var/ssl /opt; do - for dir in $maindir $maindir/openssl $maindir/ssl; do - checkssldir $dir && break 2 - done - done - ] -) -if test -z "$ssldir"; then - AC_MSG_RESULT([Not found]) - echo - echo "Couldn't find your OpenSSL library installation dir" - echo "Use --with-openssl option to fix this problem" - echo - exit 1 -fi -AC_MSG_RESULT([$ssldir]) -AC_SUBST(ssldir) -AC_DEFINE_UNQUOTED(ssldir, "$ssldir") - -dnl Add OpenSSL includes and libraries -CFLAGS="$CFLAGS -I$ssldir/include" -AC_ARG_ENABLE(static-openssl, - [ --enable-static-openssl link OpenSSL statically], - [ -LIBS="$LIBS $ssldir/lib/libcrypto.a" - ], - [ -LIBS="$LIBS -L$ssldir/lib -lcrypto" -rpath="$rpath:$ssldir/lib" - ]) - - -# -# Alignment -# -AC_MSG_CHECKING([if architecture needs alignment]) -AC_TRY_RUN([ -#include -#include -int main(int argc, char **argv) -{ - unsigned char test[8] = { 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88 }; - signal(SIGBUS, exit); - signal(SIGABRT, exit); - signal(SIGSEGV, exit); - if (*((unsigned int *)(test + 1)) != 0x55443322 && *((unsigned int *)(test + 1)) != 0x22334455) { - return 1; - } - return 0; -}], - [AC_MSG_RESULT(no)], - [AC_MSG_RESULT(yes) - AC_DEFINE(NEED_ALIGN)], - [AC_MSG_RESULT(assuming yes) - AC_DEFINE(NEED_ALIGN)]) - - -# -# EGD -# -AC_ARG_WITH(egd-socket, - [ --with-egd-socket=PATH look for Entropy Gathering Daemon socket at PATH], - [EGD_SOCKET="$withval"], - [EGD_SOCKET="/var/run/egd-pool"] -) -AC_DEFINE_UNQUOTED(EGD_SOCKET, "$EGD_SOCKET") - - -# -# rdp2vnc -# -vncserverconfig=libvncserver-config -AC_ARG_WITH(libvncserver-config, - [ --with-libvncserver-config=CMD use CMD as libvncserver-config], - [vncserverconfig="$withval"] -) -AC_ARG_WITH(libvncserver, - [ --with-libvncserver make rdp2vnc], - [ - VNCINC=`$vncserverconfig --cflags` - AC_SUBST(VNCINC) - LDVNC=`$vncserverconfig --libs` - AC_SUBST(LDVNC) - VNCLINK=`$vncserverconfig --link` - AC_SUBST(VNCLINK) - RDP2VNCTARGET="rdp2vnc" - AC_SUBST(RDP2VNCTARGET) - ] -) - -# -# sound -# -AC_ARG_WITH(libao, - [ --with-libao=DIR look for libao at DIR/include, DIR/lib], - [ - CFLAGS="$CFLAGS -I$withval/include" - CPPFLAGS="$CPPFLAGS -I$withval/include" - LIBS="$LIBS -L$withval/lib" - rpath="$rpath:$withval/lib" - ] -) - -sound="yes" -AC_ARG_WITH(sound, - [ --with-sound select sound system ("oss", "sgi", "sun" or "libao") ], - [ - sound="$withval" - ]) -if test "$sound" = yes; then - AC_CHECK_HEADER(ao/ao.h, [sound=libao]) - AC_CHECK_HEADER(sys/soundcard.h, [sound=oss]) - AC_CHECK_HEADER(dmedia/audio.h, [sound=sgi]) - AC_CHECK_HEADER(sys/audioio.h, [sound=sun]) -fi -if test "$sound" = no; then - break -elif test "$sound" = oss; then - SOUNDOBJ="rdpsnd.o rdpsnd_oss.o" - AC_DEFINE(WITH_RDPSND) -elif test "$sound" = sgi; then - SOUNDOBJ="rdpsnd.o rdpsnd_sgi.o" - LDFLAGS="$LDFLAGS -laudio" - AC_DEFINE(WITH_RDPSND) -elif test "$sound" = sun; then - SOUNDOBJ="rdpsnd.o rdpsnd_sun.o" - AC_DEFINE(WITH_RDPSND) -elif test "$sound" = libao; then - SOUNDOBJ="rdpsnd.o rdpsnd_libao.o" - LDFLAGS="$LDFLAGS -lao" - AC_DEFINE(WITH_RDPSND) -else - AC_MSG_WARN([sound support disabled]) - AC_MSG_WARN([Currently supported systems are Open Sound System (oss), SGI AL (sgi), Sun/BSD (sun) and libao]) -fi -AC_SUBST(SOUNDOBJ) - -# -# dirfd -# -dnl Find out how to get the file descriptor associated with an open DIR*. -dnl From Jim Meyering - -AC_DEFUN([UTILS_FUNC_DIRFD], -[ - - AC_HEADER_DIRENT - dirfd_headers=' -#if HAVE_DIRENT_H -# include -#else /* not HAVE_DIRENT_H */ -# define dirent direct -# if HAVE_SYS_NDIR_H -# include -# endif /* HAVE_SYS_NDIR_H */ -# if HAVE_SYS_DIR_H -# include -# endif /* HAVE_SYS_DIR_H */ -# if HAVE_NDIR_H -# include -# endif /* HAVE_NDIR_H */ -#endif /* HAVE_DIRENT_H */ -' - AC_CHECK_FUNCS(dirfd) - AC_CHECK_DECLS([dirfd], , , $dirfd_headers) - - AC_CACHE_CHECK([whether dirfd is a macro], - jm_cv_func_dirfd_macro, - [AC_EGREP_CPP([dirent_header_defines_dirfd], [$dirfd_headers -#ifdef dirfd - dirent_header_defines_dirfd -#endif], - jm_cv_func_dirfd_macro=yes, - jm_cv_func_dirfd_macro=no)]) - - # Use the replacement only if we have no function, macro, - # or declaration with that name. - if test $ac_cv_func_dirfd,$ac_cv_have_decl_dirfd,$jm_cv_func_dirfd_macro \ - = no,no,no; then - AC_REPLACE_FUNCS([dirfd]) - AC_CACHE_CHECK( - [how to get the file descriptor associated with an open DIR*], - gl_cv_sys_dir_fd_member_name, - [ - dirfd_save_CFLAGS=$CFLAGS - for ac_expr in d_fd dd_fd; do - - CFLAGS="$CFLAGS -DDIR_FD_MEMBER_NAME=$ac_expr" - AC_TRY_COMPILE( - [$dirfd_headers - ], - [DIR *dir_p = opendir("."); (void) dir_p->DIR_FD_MEMBER_NAME;], - dir_fd_found=yes - ) - CFLAGS=$dirfd_save_CFLAGS - test "$dir_fd_found" = yes && break - done - test "$dir_fd_found" = yes || ac_expr=no_such_member - - gl_cv_sys_dir_fd_member_name=$ac_expr - ] - ) - if test $gl_cv_sys_dir_fd_member_name != no_such_member; then - AC_DEFINE_UNQUOTED(DIR_FD_MEMBER_NAME, - $gl_cv_sys_dir_fd_member_name, - [the name of the file descriptor member of DIR]) - fi - AH_VERBATIM(DIR_TO_FD, - [#ifdef DIR_FD_MEMBER_NAME -# define DIR_TO_FD(Dir_p) ((Dir_p)->DIR_FD_MEMBER_NAME) -#else -# define DIR_TO_FD(Dir_p) -1 -#endif -] - ) - fi -]) - -UTILS_FUNC_DIRFD - -# -# iconv -# - -dnl This macros shamelessly stolen from -dnl http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg01398.html. -dnl Written by Bruno Haible. - -AC_DEFUN([UTILS_FUNC_ICONV], -[ - dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and - dnl those with the standalone portable GNU libiconv installed). - - AC_ARG_WITH([libiconv-prefix], -[ --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib], [ - for dir in `echo "$withval" | tr : ' '`; do - if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi - if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi - done - ]) - AC_CHECK_HEADER(iconv.h, AC_DEFINE(HAVE_ICONV_H)) - - AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_func_iconv=yes) - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS -liconv" - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_lib_iconv=yes - am_cv_func_iconv=yes) - LIBS="$am_save_LIBS" - fi - ]) - if test "$am_cv_func_iconv" = yes; then - AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) - AC_MSG_CHECKING([for iconv declaration]) - AC_CACHE_VAL(am_cv_proto_iconv, [ - AC_TRY_COMPILE([ -#include -#include -extern -#ifdef __cplusplus -"C" -#endif -#if defined(__STDC__) || defined(__cplusplus) -size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -#else -size_t iconv(); -#endif -], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") - am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) - am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` - AC_MSG_RESULT([$]{ac_t:- - }[$]am_cv_proto_iconv) - AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, - [Define as const if the declaration of iconv() needs const.]) - fi - LIBICONV= - if test "$am_cv_lib_iconv" = yes; then - LIBICONV="-liconv" - fi - AC_SUBST(LIBICONV) -]) - -UTILS_FUNC_ICONV -LIBS="$LIBS $LIBICONV" - -# -# socklen_t -# from curl - -dnl Check for socklen_t: historically on BSD it is an int, and in -dnl POSIX 1g it is a type of its own, but some platforms use different -dnl types for the argument to getsockopt, getpeername, etc. So we -dnl have to test to find something that will work. -AC_DEFUN([TYPE_SOCKLEN_T], -[ - AC_CHECK_TYPE([socklen_t], ,[ - AC_MSG_CHECKING([for socklen_t equivalent]) - AC_CACHE_VAL([socklen_t_equiv], - [ - # Systems have either "struct sockaddr *" or - # "void *" as the second argument to getpeername - socklen_t_equiv= - for arg2 in "struct sockaddr" void; do - for t in int size_t unsigned long "unsigned long"; do - AC_TRY_COMPILE([ - #include - #include - - int getpeername (int, $arg2 *, $t *); - ],[ - $t len; - getpeername(0,0,&len); - ],[ - socklen_t_equiv="$t" - break - ]) - done - done - - if test "x$socklen_t_equiv" = x; then - AC_MSG_ERROR([Cannot find a type to use in place of socklen_t]) - fi - ]) - AC_MSG_RESULT($socklen_t_equiv) - AC_DEFINE_UNQUOTED(socklen_t, $socklen_t_equiv, - [type to use in place of socklen_t if not defined])], - [#include -#include ]) -]) - -TYPE_SOCKLEN_T - -# -# statfs stuff -# -AC_CHECK_HEADERS(sys/vfs.h) -AC_CHECK_HEADERS(sys/statvfs.h) -AC_CHECK_HEADERS(sys/statfs.h) -AC_CHECK_HEADERS(sys/param.h) - -mount_includes="\ - $ac_includes_default - #if HAVE_SYS_PARAM_H - # include - #endif - " - -AC_CHECK_HEADERS(sys/mount.h,,,[$mount_includes]) - -################################################# -# these tests are taken from the GNU fileutils package -AC_CHECKING(how to get filesystem space usage) -space=no - -# Test for statvfs64. -if test $space = no; then - # SVR4 - AC_CACHE_CHECK([statvfs64 function (SVR4)], fu_cv_sys_stat_statvfs64, - [AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include -#endif -#include -#include - main () - { - struct statvfs64 fsd; - exit (statvfs64 (".", &fsd)); - }], - fu_cv_sys_stat_statvfs64=yes, - fu_cv_sys_stat_statvfs64=no, - fu_cv_sys_stat_statvfs64=cross)]) - if test $fu_cv_sys_stat_statvfs64 = yes; then - space=yes - AC_DEFINE(STAT_STATVFS64,1,[Whether statvfs64() is available]) - fi -fi - -# Perform only the link test since it seems there are no variants of the -# statvfs function. This check is more than just AC_CHECK_FUNCS(statvfs) -# because that got a false positive on SCO OSR5. Adding the declaration -# of a `struct statvfs' causes this test to fail (as it should) on such -# systems. That system is reported to work fine with STAT_STATFS4 which -# is what it gets when this test fails. -if test $space = no; then - # SVR4 - AC_CACHE_CHECK([statvfs function (SVR4)], fu_cv_sys_stat_statvfs, - [AC_TRY_LINK([#include -#include ], - [struct statvfs fsd; statvfs (0, &fsd);], - fu_cv_sys_stat_statvfs=yes, - fu_cv_sys_stat_statvfs=no)]) - if test $fu_cv_sys_stat_statvfs = yes; then - space=yes - AC_DEFINE(STAT_STATVFS,1,[Whether statvfs() is available]) - fi -fi - -if test $space = no; then - # DEC Alpha running OSF/1 - AC_MSG_CHECKING([for 3-argument statfs function (DEC OSF/1)]) - AC_CACHE_VAL(fu_cv_sys_stat_statfs3_osf1, - [AC_TRY_RUN([ -#include -#include -#include - main () - { - struct statfs fsd; - fsd.f_fsize = 0; - exit (statfs (".", &fsd, sizeof (struct statfs))); - }], - fu_cv_sys_stat_statfs3_osf1=yes, - fu_cv_sys_stat_statfs3_osf1=no, - fu_cv_sys_stat_statfs3_osf1=no)]) - - -#C_MSG_RESULT($fu_cv_sys_stat_statfs3_osf1) - if test $fu_cv_sys_stat_statfs3_osf1 = yes; then - space=yes - AC_DEFINE(STAT_STATFS3_OSF1,1,[Whether statfs requires 3 arguments]) - fi -fi - -if test $space = no; then -# AIX - AC_MSG_CHECKING([for two-argument statfs with statfs.bsize dnl -member (AIX, 4.3BSD)]) - AC_CACHE_VAL(fu_cv_sys_stat_statfs2_bsize, - [AC_TRY_RUN([ -#ifdef HAVE_SYS_PARAM_H -#include -#endif -#ifdef HAVE_SYS_MOUNT_H -#include -#endif -#ifdef HAVE_SYS_VFS_H -#include -#endif - main () - { - struct statfs fsd; - fsd.f_bsize = 0; - exit (statfs (".", &fsd)); - }], - fu_cv_sys_stat_statfs2_bsize=yes, - fu_cv_sys_stat_statfs2_bsize=no, - fu_cv_sys_stat_statfs2_bsize=no)]) - AC_MSG_RESULT($fu_cv_sys_stat_statfs2_bsize) - if test $fu_cv_sys_stat_statfs2_bsize = yes; then - space=yes - AC_DEFINE(STAT_STATFS2_BSIZE,1,[Whether statfs requires two arguments and struct statfs has bsize property]) - fi -fi - -if test $space = no; then -# SVR3 - AC_MSG_CHECKING([for four-argument statfs (AIX-3.2.5, SVR3)]) - AC_CACHE_VAL(fu_cv_sys_stat_statfs4, - [AC_TRY_RUN([#include -#include - main () - { - struct statfs fsd; - exit (statfs (".", &fsd, sizeof fsd, 0)); - }], - fu_cv_sys_stat_statfs4=yes, - fu_cv_sys_stat_statfs4=no, - fu_cv_sys_stat_statfs4=no)]) - AC_MSG_RESULT($fu_cv_sys_stat_statfs4) - if test $fu_cv_sys_stat_statfs4 = yes; then - space=yes - AC_DEFINE(STAT_STATFS4,1,[Whether statfs requires 4 arguments]) - fi -fi - -if test $space = no; then -# 4.4BSD and NetBSD - AC_MSG_CHECKING([for two-argument statfs with statfs.fsize dnl -member (4.4BSD and NetBSD)]) - AC_CACHE_VAL(fu_cv_sys_stat_statfs2_fsize, - [AC_TRY_RUN([#include -#ifdef HAVE_SYS_PARAM_H -#include -#endif -#ifdef HAVE_SYS_MOUNT_H -#include -#endif - main () - { - struct statfs fsd; - fsd.f_fsize = 0; - exit (statfs (".", &fsd)); - }], - fu_cv_sys_stat_statfs2_fsize=yes, - fu_cv_sys_stat_statfs2_fsize=no, - fu_cv_sys_stat_statfs2_fsize=no)]) - AC_MSG_RESULT($fu_cv_sys_stat_statfs2_fsize) - if test $fu_cv_sys_stat_statfs2_fsize = yes; then - space=yes - AC_DEFINE(STAT_STATFS2_FSIZE,1,[Whether statfs requires 2 arguments and struct statfs has fsize]) - fi -fi - -if test $space = no; then - # Ultrix - AC_MSG_CHECKING([for two-argument statfs with struct fs_data (Ultrix)]) - AC_CACHE_VAL(fu_cv_sys_stat_fs_data, - [AC_TRY_RUN([#include -#ifdef HAVE_SYS_PARAM_H -#include -#endif -#ifdef HAVE_SYS_MOUNT_H -#include -#endif -#ifdef HAVE_SYS_FS_TYPES_H -#include -#endif - main () - { - struct fs_data fsd; - /* Ultrix's statfs returns 1 for success, - 0 for not mounted, -1 for failure. */ - exit (statfs (".", &fsd) != 1); - }], - fu_cv_sys_stat_fs_data=yes, - fu_cv_sys_stat_fs_data=no, - fu_cv_sys_stat_fs_data=no)]) - AC_MSG_RESULT($fu_cv_sys_stat_fs_data) - if test $fu_cv_sys_stat_fs_data = yes; then - space=yes - AC_DEFINE(STAT_STATFS2_FS_DATA,1,[Whether statfs requires 2 arguments and struct fs_data is available]) - fi -fi - - statxfs_includes="\ -$ac_includes_default -#if HAVE_SYS_STATVFS_H -# include -#endif -#if HAVE_SYS_VFS_H -# include -#endif -#if !HAVE_SYS_STATVFS_H && !HAVE_SYS_VFS_H -# if HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H -/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */ -# include -# include -# elif HAVE_NETINET_IN_H && HAVE_NFS_NFS_CLNT_H && HAVE_NFS_VFS_H -/* Ultrix 4.4 needs these for the declaration of struct statfs. */ -# include -# include -# include -# endif -#endif -" - -AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes]) -AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes]) -AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes]) -AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes]) - -# -# Large file support -# -AC_SYS_LARGEFILE - -# -# mntent -# -AC_CHECK_HEADER(mntent.h, AC_DEFINE(HAVE_MNTENT_H)) -AC_CHECK_FUNCS(setmntent) - -# -# IPv6 -# -AC_ARG_WITH(ipv6, - [ --with-ipv6 enable IPv6-support], - [ - if test $withval != "no"; - then - AC_DEFINE(IPv6,1) - fi - ]) - - -# -# debugging -# -AC_ARG_WITH(debug, - [ --with-debug enable protocol debugging output], - [ - if test $withval != "no"; - then - AC_DEFINE(WITH_DEBUG,1) - fi - ]) - -AC_ARG_WITH(debug-kbd, - [ --with-debug-kbd enable debugging of keyboard handling], - [ - if test $withval != "no"; - then - AC_DEFINE(WITH_DEBUG_KBD,1) - fi - ]) - -AC_ARG_WITH(debug-rdp5, - [ --with-debug-rdp5 enable debugging of RDP5 code], - [ - if test $withval != "no"; - then - AC_DEFINE(WITH_DEBUG_RDP5,1) - fi - ]) - -AC_ARG_WITH(debug-clipboard, - [ --with-debug-clipboard enable debugging of clipboard code], - [ - if test $withval != "no"; - then - AC_DEFINE(WITH_DEBUG_CLIPBOARD,1) - fi - ]) - -AC_ARG_WITH(debug-channel, - [ --with-debug-channel enable debugging of virtual channel code], - [ - if test $withval != "no"; - then - AC_DEFINE(WITH_DEBUG_CHANNEL,1) - fi - ]) - - -# -# target-specific stuff -# -# strip leading colon from rpath -rpath=`echo $rpath |sed 's/^://'` -AC_CANONICAL_HOST -case "$host" in -*-*-solaris*) - LDFLAGS="$LDFLAGS -R$rpath" - ;; -*-dec-osf*) - LDFLAGS="$LDFLAGS -Wl,-rpath,$rpath" - ;; -*-*-hpux*) - CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED" - ;; -*-*-irix6.5*) - LIBS="$LIBS -L$ssldir/lib32 -lcrypto" - CFLAGS="$CFLAGS -D__SGI_IRIX__" - ;; -esac - - -AC_OUTPUT(Makefile) - -dnl Local Variables: -dnl comment-start: "dnl " -dnl comment-end: "" -dnl comment-start-skip: "\\bdnl\\b\\s *" -dnl compile-command: "autoconf" -dnl End: diff --git a/base/applications/tsclient/rdesktop/constants.h b/base/applications/tsclient/rdesktop/constants.h deleted file mode 100644 index fe940cca3c1..00000000000 --- a/base/applications/tsclient/rdesktop/constants.h +++ /dev/null @@ -1,430 +0,0 @@ -/* - rdesktop: A Remote Desktop Protocol client. - Miscellaneous protocol constants - Copyright (C) Matthew Chapman 1999-2005 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -/* TCP port for Remote Desktop Protocol */ -#define TCP_PORT_RDP 3389 - -#define DEFAULT_CODEPAGE "UTF-8" -#define WINDOWS_CODEPAGE "UTF-16LE" - -/* ISO PDU codes */ -enum ISO_PDU_CODE -{ - ISO_PDU_CR = 0xE0, /* Connection Request */ - ISO_PDU_CC = 0xD0, /* Connection Confirm */ - ISO_PDU_DR = 0x80, /* Disconnect Request */ - ISO_PDU_DT = 0xF0, /* Data */ - ISO_PDU_ER = 0x70 /* Error */ -}; - -/* MCS PDU codes */ -enum MCS_PDU_TYPE -{ - MCS_EDRQ = 1, /* Erect Domain Request */ - MCS_DPUM = 8, /* Disconnect Provider Ultimatum */ - MCS_AURQ = 10, /* Attach User Request */ - MCS_AUCF = 11, /* Attach User Confirm */ - MCS_CJRQ = 14, /* Channel Join Request */ - MCS_CJCF = 15, /* Channel Join Confirm */ - MCS_SDRQ = 25, /* Send Data Request */ - MCS_SDIN = 26 /* Send Data Indication */ -}; - -#define MCS_CONNECT_INITIAL 0x7f65 -#define MCS_CONNECT_RESPONSE 0x7f66 - -#define BER_TAG_BOOLEAN 1 -#define BER_TAG_INTEGER 2 -#define BER_TAG_OCTET_STRING 4 -#define BER_TAG_RESULT 10 -#define MCS_TAG_DOMAIN_PARAMS 0x30 - -#define MCS_GLOBAL_CHANNEL 1003 -#define MCS_USERCHANNEL_BASE 1001 - -/* RDP secure transport constants */ -#define SEC_RANDOM_SIZE 32 -#define SEC_MODULUS_SIZE 64 -#define SEC_MAX_MODULUS_SIZE 256 -#define SEC_PADDING_SIZE 8 -#define SEC_EXPONENT_SIZE 4 - -#define SEC_CLIENT_RANDOM 0x0001 -#define SEC_ENCRYPT 0x0008 -#define SEC_LOGON_INFO 0x0040 -#define SEC_LICENCE_NEG 0x0080 -#define SEC_REDIRECT_ENCRYPT 0x0C00 - -#define SEC_TAG_SRV_INFO 0x0c01 -#define SEC_TAG_SRV_CRYPT 0x0c02 -#define SEC_TAG_SRV_CHANNELS 0x0c03 - -#define SEC_TAG_CLI_INFO 0xc001 -#define SEC_TAG_CLI_CRYPT 0xc002 -#define SEC_TAG_CLI_CHANNELS 0xc003 -#define SEC_TAG_CLI_4 0xc004 - -#define SEC_TAG_PUBKEY 0x0006 -#define SEC_TAG_KEYSIG 0x0008 - -#define SEC_RSA_MAGIC 0x31415352 /* RSA1 */ - -/* RDP licensing constants */ -#define LICENCE_TOKEN_SIZE 10 -#define LICENCE_HWID_SIZE 20 -#define LICENCE_SIGNATURE_SIZE 16 - -#define LICENCE_TAG_DEMAND 0x01 -#define LICENCE_TAG_AUTHREQ 0x02 -#define LICENCE_TAG_ISSUE 0x03 -#define LICENCE_TAG_REISSUE 0x04 -#define LICENCE_TAG_PRESENT 0x12 -#define LICENCE_TAG_REQUEST 0x13 -#define LICENCE_TAG_AUTHRESP 0x15 -#define LICENCE_TAG_RESULT 0xff - -#define LICENCE_TAG_USER 0x000f -#define LICENCE_TAG_HOST 0x0010 - -/* RDP PDU codes */ -enum RDP_PDU_TYPE -{ - RDP_PDU_DEMAND_ACTIVE = 1, - RDP_PDU_CONFIRM_ACTIVE = 3, - RDP_PDU_REDIRECT = 4, /* MS Server 2003 Session Redirect */ - RDP_PDU_DEACTIVATE = 6, - RDP_PDU_DATA = 7 -}; - -enum RDP_DATA_PDU_TYPE -{ - RDP_DATA_PDU_UPDATE = 2, - RDP_DATA_PDU_CONTROL = 20, - RDP_DATA_PDU_POINTER = 27, - RDP_DATA_PDU_INPUT = 28, - RDP_DATA_PDU_SYNCHRONISE = 31, - RDP_DATA_PDU_BELL = 34, - RDP_DATA_PDU_CLIENT_WINDOW_STATUS = 35, - RDP_DATA_PDU_LOGON = 38, - RDP_DATA_PDU_FONT2 = 39, - RDP_DATA_PDU_KEYBOARD_INDICATORS = 41, - RDP_DATA_PDU_DISCONNECT = 47 -}; - -enum RDP_CONTROL_PDU_TYPE -{ - RDP_CTL_REQUEST_CONTROL = 1, - RDP_CTL_GRANT_CONTROL = 2, - RDP_CTL_DETACH = 3, - RDP_CTL_COOPERATE = 4 -}; - -enum RDP_UPDATE_PDU_TYPE -{ - RDP_UPDATE_ORDERS = 0, - RDP_UPDATE_BITMAP = 1, - RDP_UPDATE_PALETTE = 2, - RDP_UPDATE_SYNCHRONIZE = 3 -}; - -enum RDP_POINTER_PDU_TYPE -{ - RDP_POINTER_SYSTEM = 1, - RDP_POINTER_MOVE = 3, - RDP_POINTER_COLOR = 6, - RDP_POINTER_CACHED = 7 -}; - -enum RDP_SYSTEM_POINTER_TYPE -{ - RDP_NULL_POINTER = 0, - RDP_DEFAULT_POINTER = 0x7F00 -}; - -enum RDP_INPUT_DEVICE -{ - RDP_INPUT_SYNCHRONIZE = 0, - RDP_INPUT_CODEPOINT = 1, - RDP_INPUT_VIRTKEY = 2, - RDP_INPUT_SCANCODE = 4, - RDP_INPUT_MOUSE = 0x8001 -}; - -/* Device flags */ -#define KBD_FLAG_RIGHT 0x0001 -#define KBD_FLAG_EXT 0x0100 -#define KBD_FLAG_QUIET 0x1000 -#define KBD_FLAG_DOWN 0x4000 -#define KBD_FLAG_UP 0x8000 - -/* These are for synchronization; not for keystrokes */ -#define KBD_FLAG_SCROLL 0x0001 -#define KBD_FLAG_NUMLOCK 0x0002 -#define KBD_FLAG_CAPITAL 0x0004 - -/* See T.128 */ -#define RDP_KEYPRESS 0 -#define RDP_KEYRELEASE (KBD_FLAG_DOWN | KBD_FLAG_UP) - -#define MOUSE_FLAG_MOVE 0x0800 -#define MOUSE_FLAG_BUTTON1 0x1000 -#define MOUSE_FLAG_BUTTON2 0x2000 -#define MOUSE_FLAG_BUTTON3 0x4000 -#define MOUSE_FLAG_BUTTON4 0x0280 -#define MOUSE_FLAG_BUTTON5 0x0380 -#define MOUSE_FLAG_DOWN 0x8000 - -/* Raster operation masks */ -#define ROP2_S(rop3) (rop3 & 0xf) -#define ROP2_P(rop3) ((rop3 & 0x3) | ((rop3 & 0x30) >> 2)) - -#define ROP2_COPY 0xc -#define ROP2_XOR 0x6 -#define ROP2_AND 0x8 -#define ROP2_NXOR 0x9 -#define ROP2_OR 0xe - -#define MIX_TRANSPARENT 0 -#define MIX_OPAQUE 1 - -#define TEXT2_VERTICAL 0x04 -#define TEXT2_IMPLICIT_X 0x20 - -#define ALTERNATE 1 -#define WINDING 2 - -/* RDP bitmap cache (version 2) constants */ -#define BMPCACHE2_C0_CELLS 0x78 -#define BMPCACHE2_C1_CELLS 0x78 -#define BMPCACHE2_C2_CELLS 0x150 -#define BMPCACHE2_NUM_PSTCELLS 0x9f6 - -#define PDU_FLAG_FIRST 0x01 -#define PDU_FLAG_LAST 0x02 - -/* RDP capabilities */ -#define RDP_CAPSET_GENERAL 1 /* Maps to generalCapabilitySet in T.128 page 138 */ -#define RDP_CAPLEN_GENERAL 0x18 -#define OS_MAJOR_TYPE_UNIX 4 -#define OS_MINOR_TYPE_XSERVER 7 - -#define RDP_CAPSET_BITMAP 2 -#define RDP_CAPLEN_BITMAP 0x1C - -#define RDP_CAPSET_ORDER 3 -#define RDP_CAPLEN_ORDER 0x58 -#define ORDER_CAP_NEGOTIATE 2 -#define ORDER_CAP_NOSUPPORT 4 - -#define RDP_CAPSET_BMPCACHE 4 -#define RDP_CAPLEN_BMPCACHE 0x28 - -#define RDP_CAPSET_CONTROL 5 -#define RDP_CAPLEN_CONTROL 0x0C - -#define RDP_CAPSET_ACTIVATE 7 -#define RDP_CAPLEN_ACTIVATE 0x0C - -#define RDP_CAPSET_POINTER 8 -#define RDP_CAPLEN_POINTER 0x08 - -#define RDP_CAPSET_SHARE 9 -#define RDP_CAPLEN_SHARE 0x08 - -#define RDP_CAPSET_COLCACHE 10 -#define RDP_CAPLEN_COLCACHE 0x08 - -#define RDP_CAPSET_BMPCACHE2 19 -#define RDP_CAPLEN_BMPCACHE2 0x28 -#define BMPCACHE2_FLAG_PERSIST ((uint32)1<<31) - -#define RDP_SOURCE "MSTSC" - -/* Logon flags */ -#define RDP_LOGON_AUTO 0x0008 -#define RDP_LOGON_NORMAL 0x0033 -#define RDP_LOGON_COMPRESSION 0x0080 /* mppc compression with 8kB histroy buffer */ -#define RDP_LOGON_BLOB 0x0100 -#define RDP_LOGON_COMPRESSION2 0x0200 /* rdp5 mppc compression with 64kB history buffer */ -#define RDP_LOGON_LEAVE_AUDIO 0x2000 - -#define RDP5_DISABLE_NOTHING 0x00 -#define RDP5_NO_WALLPAPER 0x01 -#define RDP5_NO_FULLWINDOWDRAG 0x02 -#define RDP5_NO_MENUANIMATIONS 0x04 -#define RDP5_NO_THEMING 0x08 -#define RDP5_NO_CURSOR_SHADOW 0x20 -#define RDP5_NO_CURSORSETTINGS 0x40 /* disables cursor blinking */ - -/* compression types */ -#define RDP_MPPC_BIG 0x01 -#define RDP_MPPC_COMPRESSED 0x20 -#define RDP_MPPC_RESET 0x40 -#define RDP_MPPC_FLUSH 0x80 -#define RDP_MPPC_DICT_SIZE 65536 - -#define RDP5_COMPRESSED 0x80 - -/* Keymap flags */ -#define MapRightShiftMask (1<<0) -#define MapLeftShiftMask (1<<1) -#define MapShiftMask (MapRightShiftMask | MapLeftShiftMask) - -#define MapRightAltMask (1<<2) -#define MapLeftAltMask (1<<3) -#define MapAltGrMask MapRightAltMask - -#define MapRightCtrlMask (1<<4) -#define MapLeftCtrlMask (1<<5) -#define MapCtrlMask (MapRightCtrlMask | MapLeftCtrlMask) - -#define MapRightWinMask (1<<6) -#define MapLeftWinMask (1<<7) -#define MapWinMask (MapRightWinMask | MapLeftWinMask) - -#define MapNumLockMask (1<<8) -#define MapCapsLockMask (1<<9) - -#define MapLocalStateMask (1<<10) - -#define MapInhibitMask (1<<11) - -#define MASK_ADD_BITS(var, mask) (var |= mask) -#define MASK_REMOVE_BITS(var, mask) (var &= ~mask) -#define MASK_HAS_BITS(var, mask) ((var & mask)>0) -#define MASK_CHANGE_BIT(var, mask, active) (var = ((var & ~mask) | (active ? mask : 0))) - -/* Clipboard constants, "borrowed" from GCC system headers in - the w32 cross compiler */ - -#if 0 -#define CF_TEXT 1 -#define CF_BITMAP 2 -#define CF_METAFILEPICT 3 -#define CF_SYLK 4 -#define CF_DIF 5 -#define CF_TIFF 6 -#define CF_OEMTEXT 7 -#define CF_DIB 8 -#define CF_PALETTE 9 -#define CF_PENDATA 10 -#define CF_RIFF 11 -#define CF_WAVE 12 -#define CF_UNICODETEXT 13 -#define CF_ENHMETAFILE 14 -#define CF_HDROP 15 -#define CF_LOCALE 16 -#define CF_MAX 17 -#define CF_OWNERDISPLAY 128 -#define CF_DSPTEXT 129 -#define CF_DSPBITMAP 130 -#define CF_DSPMETAFILEPICT 131 -#define CF_DSPENHMETAFILE 142 -#define CF_PRIVATEFIRST 512 -#define CF_PRIVATELAST 767 -#define CF_GDIOBJFIRST 768 -#define CF_GDIOBJLAST 1023 - -/* Sound format constants */ -#define WAVE_FORMAT_PCM 1 -#define WAVE_FORMAT_ADPCM 2 -#define WAVE_FORMAT_ALAW 6 -#define WAVE_FORMAT_MULAW 7 - -/* Virtual channel options */ -#define CHANNEL_OPTION_INITIALIZED 0x80000000 -#define CHANNEL_OPTION_ENCRYPT_RDP 0x40000000 -#define CHANNEL_OPTION_COMPRESS_RDP 0x00800000 -#define CHANNEL_OPTION_SHOW_PROTOCOL 0x00200000 - -/* NT status codes for RDPDR */ -#define STATUS_SUCCESS 0x00000000 -#define STATUS_NOT_IMPLEMENTED 0x00000001 -#define STATUS_PENDING 0x00000103 - -#define STATUS_NO_MORE_FILES 0x80000006 -#define STATUS_DEVICE_PAPER_EMPTY 0x8000000e -#define STATUS_DEVICE_POWERED_OFF 0x8000000f -#define STATUS_DEVICE_OFF_LINE 0x80000010 -#define STATUS_DEVICE_BUSY 0x80000011 - -#define STATUS_INVALID_HANDLE 0xc0000008 -#define STATUS_INVALID_PARAMETER 0xc000000d -#define STATUS_NO_SUCH_FILE 0xc000000f -#define STATUS_INVALID_DEVICE_REQUEST 0xc0000010 -#define STATUS_ACCESS_DENIED 0xc0000022 -#define STATUS_OBJECT_NAME_COLLISION 0xc0000035 -#define STATUS_DISK_FULL 0xc000007f -#define STATUS_FILE_IS_A_DIRECTORY 0xc00000ba -#define STATUS_NOT_SUPPORTED 0xc00000bb -#define STATUS_TIMEOUT 0xc0000102 -#define STATUS_NOTIFY_ENUM_DIR 0xc000010c -#define STATUS_CANCELLED 0xc0000120 - -/* RDPDR constants */ -#define RDPDR_MAX_DEVICES 0x10 -#define DEVICE_TYPE_SERIAL 0x01 -#define DEVICE_TYPE_PARALLEL 0x02 -#define DEVICE_TYPE_PRINTER 0x04 -#define DEVICE_TYPE_DISK 0x08 -#define DEVICE_TYPE_SCARD 0x20 - -#define FILE_DIRECTORY_FILE 0x00000001 -#define FILE_NON_DIRECTORY_FILE 0x00000040 -#define FILE_COMPLETE_IF_OPLOCKED 0x00000100 -#define FILE_DELETE_ON_CLOSE 0x00001000 -#define FILE_OPEN_FOR_FREE_SPACE_QUERY 0x00800000 - -/* RDP5 disconnect PDU */ -#define exDiscReasonNoInfo 0x0000 -#define exDiscReasonAPIInitiatedDisconnect 0x0001 -#define exDiscReasonAPIInitiatedLogoff 0x0002 -#define exDiscReasonServerIdleTimeout 0x0003 -#define exDiscReasonServerLogonTimeout 0x0004 -#define exDiscReasonReplacedByOtherConnection 0x0005 -#define exDiscReasonOutOfMemory 0x0006 -#define exDiscReasonServerDeniedConnection 0x0007 -#define exDiscReasonServerDeniedConnectionFips 0x0008 -#define exDiscReasonLicenseInternal 0x0100 -#define exDiscReasonLicenseNoLicenseServer 0x0101 -#define exDiscReasonLicenseNoLicense 0x0102 -#define exDiscReasonLicenseErrClientMsg 0x0103 -#define exDiscReasonLicenseHwidDoesntMatchLicense 0x0104 -#define exDiscReasonLicenseErrClientLicense 0x0105 -#define exDiscReasonLicenseCantFinishProtocol 0x0106 -#define exDiscReasonLicenseClientEndedProtocol 0x0107 -#define exDiscReasonLicenseErrClientEncryption 0x0108 -#define exDiscReasonLicenseCantUpgradeLicense 0x0109 -#define exDiscReasonLicenseNoRemoteConnections 0x010a -#endif - -#if 0 -/* SeamlessRDP constants */ -#define SEAMLESSRDP_NOTYETMAPPED -1 -#define SEAMLESSRDP_NORMAL 0 -#define SEAMLESSRDP_MINIMIZED 1 -#define SEAMLESSRDP_MAXIMIZED 2 -#define SEAMLESSRDP_POSITION_TIMER 200000 - -#define SEAMLESSRDP_CREATE_MODAL 0x0001 - -#define SEAMLESSRDP_HELLO_RECONNECT 0x0001 -#define SEAMLESSRDP_HELLO_HIDDEN 0x0002 -#endif diff --git a/base/applications/tsclient/rdesktop/disk.c b/base/applications/tsclient/rdesktop/disk.c deleted file mode 100644 index 22f4114291e..00000000000 --- a/base/applications/tsclient/rdesktop/disk.c +++ /dev/null @@ -1,1246 +0,0 @@ -/* -*- c-basic-offset: 8 -*- - rdesktop: A Remote Desktop Protocol client. - Disk Redirection - Copyright (C) Jeroen Meijer 2003 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include "disk.h" - -#include -#include -#include -#include /* open, close */ -#include /* opendir, closedir, readdir */ -#include -#include /* errno */ -#include - -#include -#include /* ctime */ - -#if (defined(HAVE_DIRFD) || (HAVE_DECL_DIRFD == 1)) -#define DIRFD(a) (dirfd(a)) -#else -#define DIRFD(a) ((a)->DIR_FD_MEMBER_NAME) -#endif - -/* TODO: Fix mntent-handling for solaris - * #include */ -#if (defined(HAVE_MNTENT_H) && defined(HAVE_SETMNTENT)) -#include -#define MNTENT_PATH "/etc/mtab" -#define USE_SETMNTENT -#endif - -#ifdef HAVE_SYS_VFS_H -#include -#endif - -#ifdef HAVE_SYS_STATVFS_H -#include -#endif - -#ifdef HAVE_SYS_STATFS_H -#include -#endif - -#ifdef HAVE_SYS_PARAM_H -#include -#endif - -#ifdef HAVE_SYS_MOUNT_H -#include -#endif - -#include "rdesktop.h" - -#ifdef STAT_STATFS3_OSF1 -#define STATFS_FN(path, buf) (statfs(path,buf,sizeof(buf))) -#define STATFS_T statfs -#define USE_STATFS -#endif - -#ifdef STAT_STATVFS -#define STATFS_FN(path, buf) (statvfs(path,buf)) -#define STATFS_T statvfs -#define USE_STATVFS -#endif - -#ifdef STAT_STATVFS64 -#define STATFS_FN(path, buf) (statvfs64(path,buf)) -#define STATFS_T statvfs64 -#define USE_STATVFS -#endif - -#if (defined(STAT_STATFS2_FS_DATA) || defined(STAT_STATFS2_BSIZE) || defined(STAT_STATFS2_FSIZE)) -#define STATFS_FN(path, buf) (statfs(path,buf)) -#define STATFS_T statfs -#define USE_STATFS -#endif - -#ifdef STAT_STATFS4 -#define STATFS_FN(path, buf) (statfs(path,buf,sizeof(buf),0)) -#define STATFS_T statfs -#define USE_STATFS -#endif - -#if ((defined(USE_STATFS) && defined(HAVE_STRUCT_STATFS_F_NAMEMAX)) || (defined(USE_STATVFS) && defined(HAVE_STRUCT_STATVFS_F_NAMEMAX))) -#define F_NAMELEN(buf) ((buf).f_namemax) -#endif - -#if ((defined(USE_STATFS) && defined(HAVE_STRUCT_STATFS_F_NAMELEN)) || (defined(USE_STATVFS) && defined(HAVE_STRUCT_STATVFS_F_NAMELEN))) -#define F_NAMELEN(buf) ((buf).f_namelen) -#endif - -#ifndef F_NAMELEN -#define F_NAMELEN(buf) (255) -#endif - -/* Dummy statfs fallback */ -#ifndef STATFS_T -struct dummy_statfs_t -{ - long f_bfree; - long f_bsize; - long f_blocks; - int f_namelen; - int f_namemax; -}; - -static int -dummy_statfs(struct dummy_statfs_t *buf) -{ - buf->f_blocks = 262144; - buf->f_bfree = 131072; - buf->f_bsize = 512; - buf->f_namelen = 255; - buf->f_namemax = 255; - - return 0; -} - -#define STATFS_T dummy_statfs_t -#define STATFS_FN(path,buf) (dummy_statfs(buf)) -#endif - -typedef struct -{ - char name[PATH_MAX]; - char label[PATH_MAX]; - unsigned long serial; - char type[PATH_MAX]; -} FsInfoType; - -static NTSTATUS NotifyInfo(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, NOTIFY * p); - -static time_t -get_create_time(struct stat *st) -{ - time_t ret, ret1; - - ret = MIN(st->st_ctime, st->st_mtime); - ret1 = MIN(ret, st->st_atime); - - if (ret1 != (time_t) 0) - return ret1; - - return ret; -} - -/* Convert seconds since 1970 to a filetime */ -static void -seconds_since_1970_to_filetime(time_t seconds, uint32 * high, uint32 * low) -{ - unsigned long long ticks; - - ticks = (seconds + 11644473600LL) * 10000000; - *low = (uint32) ticks; - *high = (uint32) (ticks >> 32); -} - -/* Convert seconds since 1970 back to filetime */ -static time_t -convert_1970_to_filetime(uint32 high, uint32 low) -{ - unsigned long long ticks; - time_t val; - - ticks = low + (((unsigned long long) high) << 32); - ticks /= 10000000; - ticks -= 11644473600LL; - - val = (time_t) ticks; - return (val); - -} - -/* A wrapper for ftruncate which supports growing files, even if the - native ftruncate doesn't. This is needed on Linux FAT filesystems, - for example. */ -static int -ftruncate_growable(int fd, off_t length) -{ - int ret; - off_t pos; - static const char zero = 0; - - /* Try the simple method first */ - if ((ret = ftruncate(fd, length)) != -1) - { - return ret; - } - - /* - * Some kind of error. Perhaps we were trying to grow. Retry - * in a safe way. - */ - - /* Get current position */ - if ((pos = lseek(fd, 0, SEEK_CUR)) == -1) - { - perror("lseek"); - return -1; - } - - /* Seek to new size */ - if (lseek(fd, length, SEEK_SET) == -1) - { - perror("lseek"); - return -1; - } - - /* Write a zero */ - if (write(fd, &zero, 1) == -1) - { - perror("write"); - return -1; - } - - /* Truncate. This shouldn't fail. */ - if (ftruncate(fd, length) == -1) - { - perror("ftruncate"); - return -1; - } - - /* Restore position */ - if (lseek(fd, pos, SEEK_SET) == -1) - { - perror("lseek"); - return -1; - } - - return 0; -} - -/* Just like open(2), but if a open with O_EXCL fails, retry with - GUARDED semantics. This might be necessary because some filesystems - (such as NFS filesystems mounted from a unfsd server) doesn't - support O_EXCL. GUARDED semantics are subject to race conditions, - but we can live with that. -*/ -static int -open_weak_exclusive(const char *pathname, int flags, mode_t mode) -{ - int ret; - struct stat statbuf; - - ret = open(pathname, flags, mode); - if (ret != -1 || !(flags & O_EXCL)) - { - /* Success, or not using O_EXCL */ - return ret; - } - - /* An error occured, and we are using O_EXCL. In case the FS - doesn't support O_EXCL, some kind of error will be - returned. Unfortunately, we don't know which one. Linux - 2.6.8 seems to return 524, but I cannot find a documented - #define for this case. So, we'll return only on errors that - we know aren't related to O_EXCL. */ - switch (errno) - { - case EACCES: - case EEXIST: - case EINTR: - case EISDIR: - case ELOOP: - case ENAMETOOLONG: - case ENOENT: - case ENOTDIR: - return ret; - } - - /* Retry with GUARDED semantics */ - if (stat(pathname, &statbuf) != -1) - { - /* File exists */ - errno = EEXIST; - return -1; - } - else - { - return open(pathname, flags & ~O_EXCL, mode); - } -} - -/* Enumeration of devices from rdesktop.c */ -/* returns numer of units found and initialized. */ -/* optarg looks like ':h=/mnt/floppy,b=/mnt/usbdevice1' */ -/* when it arrives to this function. */ -int -disk_enum_devices(RDPCLIENT * This, uint32 * id, char *optarg) -{ - char *pos = optarg; - char *pos2; - int count = 0; - - /* skip the first colon */ - optarg++; - while ((pos = next_arg(optarg, ',')) && *id < RDPDR_MAX_DEVICES) - { - pos2 = next_arg(optarg, '='); - - strncpy(This->rdpdr_device[*id].name, optarg, sizeof(This->rdpdr_device[*id].name) - 1); - if (strlen(optarg) > (sizeof(This->rdpdr_device[*id].name) - 1)) - fprintf(stderr, "share name %s truncated to %s\n", optarg, - This->rdpdr_device[*id].name); - - This->rdpdr_device[*id].local_path = (char *) xmalloc(strlen(pos2) + 1); - strcpy(This->rdpdr_device[*id].local_path, pos2); - This->rdpdr_device[*id].device_type = DEVICE_TYPE_DISK; - count++; - (*id)++; - - optarg = pos; - } - return count; -} - -/* Opens or creates a file or directory */ -static NTSTATUS -disk_create(RDPCLIENT * This, uint32 device_id, uint32 accessmask, uint32 sharemode, uint32 create_disposition, - uint32 flags_and_attributes, char *filename, NTHANDLE * phandle) -{ - NTHANDLE handle; - DIR *dirp; - int flags, mode; - char path[PATH_MAX]; - struct stat filestat; - - handle = 0; - dirp = NULL; - flags = 0; - mode = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; - - if (*filename && filename[strlen(filename) - 1] == '/') - filename[strlen(filename) - 1] = 0; - sprintf(path, "%s%s", This->rdpdr_device[device_id].local_path, filename); - - switch (create_disposition) - { - case CREATE_ALWAYS: - - /* Delete existing file/link. */ - unlink(path); - flags |= O_CREAT; - break; - - case CREATE_NEW: - - /* If the file already exists, then fail. */ - flags |= O_CREAT | O_EXCL; - break; - - case OPEN_ALWAYS: - - /* Create if not already exists. */ - flags |= O_CREAT; - break; - - case OPEN_EXISTING: - - /* Default behaviour */ - break; - - case TRUNCATE_EXISTING: - - /* If the file does not exist, then fail. */ - flags |= O_TRUNC; - break; - } - - /*printf("Open: \"%s\" flags: %X, accessmask: %X sharemode: %X create disp: %X\n", path, flags_and_attributes, accessmask, sharemode, create_disposition); */ - - /* Get information about file and set that flag ourselfs */ - if ((stat(path, &filestat) == 0) && (S_ISDIR(filestat.st_mode))) - { - if (flags_and_attributes & FILE_NON_DIRECTORY_FILE) - return STATUS_FILE_IS_A_DIRECTORY; - else - flags_and_attributes |= FILE_DIRECTORY_FILE; - } - - if (flags_and_attributes & FILE_DIRECTORY_FILE) - { - if (flags & O_CREAT) - { - mkdir(path, mode); - } - - dirp = opendir(path); - if (!dirp) - { - switch (errno) - { - case EACCES: - - return STATUS_ACCESS_DENIED; - - case ENOENT: - - return STATUS_NO_SUCH_FILE; - - default: - - perror("opendir"); - return STATUS_NO_SUCH_FILE; - } - } - handle = DIRFD(dirp); - } - else - { - - if (accessmask & GENERIC_ALL - || (accessmask & GENERIC_READ && accessmask & GENERIC_WRITE)) - { - flags |= O_RDWR; - } - else if ((accessmask & GENERIC_WRITE) && !(accessmask & GENERIC_READ)) - { - flags |= O_WRONLY; - } - else - { - flags |= O_RDONLY; - } - - handle = open_weak_exclusive(path, flags, mode); - if (handle == -1) - { - switch (errno) - { - case EISDIR: - - return STATUS_FILE_IS_A_DIRECTORY; - - case EACCES: - - return STATUS_ACCESS_DENIED; - - case ENOENT: - - return STATUS_NO_SUCH_FILE; - case EEXIST: - - return STATUS_OBJECT_NAME_COLLISION; - default: - - perror("open"); - return STATUS_NO_SUCH_FILE; - } - } - - /* all read and writes of files should be non blocking */ - if (fcntl(handle, F_SETFL, O_NONBLOCK) == -1) - perror("fcntl"); - } - - if (handle >= MAX_OPEN_FILES) - { - error("Maximum number of open files (%s) reached. Increase MAX_OPEN_FILES!\n", - handle); - exit(1); - } - - if (dirp) - This->fileinfo[handle].pdir = dirp; - else - This->fileinfo[handle].pdir = NULL; - - This->fileinfo[handle].device_id = device_id; - This->fileinfo[handle].flags_and_attributes = flags_and_attributes; - This->fileinfo[handle].accessmask = accessmask; - strncpy(This->fileinfo[handle].path, path, PATH_MAX - 1); - This->fileinfo[handle].delete_on_close = False; - This->notify_stamp = True; - - *phandle = handle; - return STATUS_SUCCESS; -} - -static NTSTATUS -disk_close(RDPCLIENT * This, NTHANDLE handle) -{ - struct fileinfo *pfinfo; - - pfinfo = &(This->fileinfo[handle]); - - This->notify_stamp = True; - - rdpdr_abort_io(This, handle, 0, STATUS_CANCELLED); - - if (pfinfo->pdir) - { - if (closedir(pfinfo->pdir) < 0) - { - perror("closedir"); - return STATUS_INVALID_HANDLE; - } - - if (pfinfo->delete_on_close) - if (rmdir(pfinfo->path) < 0) - { - perror(pfinfo->path); - return STATUS_ACCESS_DENIED; - } - pfinfo->delete_on_close = False; - } - else - { - if (close(handle) < 0) - { - perror("close"); - return STATUS_INVALID_HANDLE; - } - if (pfinfo->delete_on_close) - if (unlink(pfinfo->path) < 0) - { - perror(pfinfo->path); - return STATUS_ACCESS_DENIED; - } - - pfinfo->delete_on_close = False; - } - - return STATUS_SUCCESS; -} - -static NTSTATUS -disk_read(RDPCLIENT * This, NTHANDLE handle, uint8 * data, uint32 length, uint32 offset, uint32 * result) -{ - int n; - -#if 0 - /* browsing dir ???? */ - /* each request is 24 bytes */ - if (This->fileinfo[handle].flags_and_attributes & FILE_DIRECTORY_FILE) - { - *result = 0; - return STATUS_SUCCESS; - } -#endif - - lseek(handle, offset, SEEK_SET); - - n = read(handle, data, length); - - if (n < 0) - { - *result = 0; - switch (errno) - { - case EISDIR: - /* Implement 24 Byte directory read ?? - with STATUS_NOT_IMPLEMENTED server doesn't read again */ - /* return STATUS_FILE_IS_A_DIRECTORY; */ - return STATUS_NOT_IMPLEMENTED; - default: - perror("read"); - return STATUS_INVALID_PARAMETER; - } - } - - *result = n; - - return STATUS_SUCCESS; -} - -static NTSTATUS -disk_write(RDPCLIENT * This, NTHANDLE handle, uint8 * data, uint32 length, uint32 offset, uint32 * result) -{ - int n; - - lseek(handle, offset, SEEK_SET); - - n = write(handle, data, length); - - if (n < 0) - { - perror("write"); - *result = 0; - switch (errno) - { - case ENOSPC: - return STATUS_DISK_FULL; - default: - return STATUS_ACCESS_DENIED; - } - } - - *result = n; - - return STATUS_SUCCESS; -} - -NTSTATUS -disk_query_information(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, STREAM out) -{ - uint32 file_attributes, ft_high, ft_low; - struct stat filestat; - char *path, *filename; - - path = This->fileinfo[handle].path; - - /* Get information about file */ - if (fstat(handle, &filestat) != 0) - { - perror("stat"); - out_uint8(out, 0); - return STATUS_ACCESS_DENIED; - } - - /* Set file attributes */ - file_attributes = 0; - if (S_ISDIR(filestat.st_mode)) - file_attributes |= FILE_ATTRIBUTE_DIRECTORY; - - filename = 1 + strrchr(path, '/'); - if (filename && filename[0] == '.') - file_attributes |= FILE_ATTRIBUTE_HIDDEN; - - if (!file_attributes) - file_attributes |= FILE_ATTRIBUTE_NORMAL; - - if (!(filestat.st_mode & S_IWUSR)) - file_attributes |= FILE_ATTRIBUTE_READONLY; - - /* Return requested data */ - switch (info_class) - { - case FileBasicInformation: - seconds_since_1970_to_filetime(get_create_time(&filestat), &ft_high, - &ft_low); - out_uint32_le(out, ft_low); /* create_access_time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(filestat.st_atime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* last_access_time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(filestat.st_mtime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* last_write_time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(filestat.st_ctime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* last_change_time */ - out_uint32_le(out, ft_high); - - out_uint32_le(out, file_attributes); - break; - - case FileStandardInformation: - - out_uint32_le(out, filestat.st_size); /* Allocation size */ - out_uint32_le(out, 0); - out_uint32_le(out, filestat.st_size); /* End of file */ - out_uint32_le(out, 0); - out_uint32_le(out, filestat.st_nlink); /* Number of links */ - out_uint8(out, 0); /* Delete pending */ - out_uint8(out, S_ISDIR(filestat.st_mode) ? 1 : 0); /* Directory */ - break; - - case FileObjectIdInformation: - - out_uint32_le(out, file_attributes); /* File Attributes */ - out_uint32_le(out, 0); /* Reparse Tag */ - break; - - default: - - unimpl("IRP Query (File) Information class: 0x%x\n", info_class); - return STATUS_INVALID_PARAMETER; - } - return STATUS_SUCCESS; -} - -NTSTATUS -disk_set_information(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, STREAM in, STREAM out) -{ - uint32 length, file_attributes, ft_high, ft_low, delete_on_close; - char newname[PATH_MAX], fullpath[PATH_MAX]; - struct fileinfo *pfinfo; - int mode; - struct stat filestat; - time_t write_time, change_time, access_time, mod_time; - struct utimbuf tvs; - struct STATFS_T stat_fs; - - pfinfo = &(This->fileinfo[handle]); - This->notify_stamp = True; - - switch (info_class) - { - case FileBasicInformation: - write_time = change_time = access_time = 0; - - in_uint8s(in, 4); /* Handle of root dir? */ - in_uint8s(in, 24); /* unknown */ - - /* CreationTime */ - in_uint32_le(in, ft_low); - in_uint32_le(in, ft_high); - - /* AccessTime */ - in_uint32_le(in, ft_low); - in_uint32_le(in, ft_high); - if (ft_low || ft_high) - access_time = convert_1970_to_filetime(ft_high, ft_low); - - /* WriteTime */ - in_uint32_le(in, ft_low); - in_uint32_le(in, ft_high); - if (ft_low || ft_high) - write_time = convert_1970_to_filetime(ft_high, ft_low); - - /* ChangeTime */ - in_uint32_le(in, ft_low); - in_uint32_le(in, ft_high); - if (ft_low || ft_high) - change_time = convert_1970_to_filetime(ft_high, ft_low); - - in_uint32_le(in, file_attributes); - - if (fstat(handle, &filestat)) - return STATUS_ACCESS_DENIED; - - tvs.modtime = filestat.st_mtime; - tvs.actime = filestat.st_atime; - if (access_time) - tvs.actime = access_time; - - - if (write_time || change_time) - mod_time = MIN(write_time, change_time); - else - mod_time = write_time ? write_time : change_time; - - if (mod_time) - tvs.modtime = mod_time; - - - if (access_time || write_time || change_time) - { -#if WITH_DEBUG_RDP5 - printf("FileBasicInformation access time %s", - ctime(&tvs.actime)); - printf("FileBasicInformation modification time %s", - ctime(&tvs.modtime)); -#endif - if (utime(pfinfo->path, &tvs) && errno != EPERM) - return STATUS_ACCESS_DENIED; - } - - if (!file_attributes) - break; /* not valid */ - - mode = filestat.st_mode; - - if (file_attributes & FILE_ATTRIBUTE_READONLY) - mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH); - else - mode |= S_IWUSR; - - mode &= 0777; -#if WITH_DEBUG_RDP5 - printf("FileBasicInformation set access mode 0%o", mode); -#endif - - if (fchmod(handle, mode)) - return STATUS_ACCESS_DENIED; - - break; - - case FileRenameInformation: - - in_uint8s(in, 4); /* Handle of root dir? */ - in_uint8s(in, 0x1a); /* unknown */ - in_uint32_le(in, length); - - if (length && (length / 2) < 256) - { - rdp_in_unistr(This, in, newname, length); - convert_to_unix_filename(newname); - } - else - { - return STATUS_INVALID_PARAMETER; - } - - sprintf(fullpath, "%s%s", This->rdpdr_device[pfinfo->device_id].local_path, - newname); - - if (rename(pfinfo->path, fullpath) != 0) - { - perror("rename"); - return STATUS_ACCESS_DENIED; - } - break; - - case FileDispositionInformation: - /* As far as I understand it, the correct - thing to do here is to *schedule* a delete, - so it will be deleted when the file is - closed. Subsequent - FileDispositionInformation requests with - DeleteFile set to FALSE should unschedule - the delete. See - http://www.osronline.com/article.cfm?article=245. */ - - in_uint32_le(in, delete_on_close); - - if (delete_on_close || - (pfinfo-> - accessmask & (FILE_DELETE_ON_CLOSE | FILE_COMPLETE_IF_OPLOCKED))) - { - pfinfo->delete_on_close = True; - } - - break; - - case FileAllocationInformation: - /* Fall through to FileEndOfFileInformation, - which uses ftrunc. This is like Samba with - "strict allocation = false", and means that - we won't detect out-of-quota errors, for - example. */ - - case FileEndOfFileInformation: - in_uint8s(in, 28); /* unknown */ - in_uint32_le(in, length); /* file size */ - - /* prevents start of writing if not enough space left on device */ - if (STATFS_FN(This->rdpdr_device[pfinfo->device_id].local_path, &stat_fs) == 0) - if (stat_fs.f_bfree * stat_fs.f_bsize < length) - return STATUS_DISK_FULL; - - if (ftruncate_growable(handle, length) != 0) - { - return STATUS_DISK_FULL; - } - - break; - default: - - unimpl("IRP Set File Information class: 0x%x\n", info_class); - return STATUS_INVALID_PARAMETER; - } - return STATUS_SUCCESS; -} - -NTSTATUS -disk_check_notify(RDPCLIENT * This, NTHANDLE handle) -{ - struct fileinfo *pfinfo; - NTSTATUS status = STATUS_PENDING; - - NOTIFY notify; - - pfinfo = &(This->fileinfo[handle]); - if (!pfinfo->pdir) - return STATUS_INVALID_DEVICE_REQUEST; - - - - status = NotifyInfo(This, handle, pfinfo->info_class, ¬ify); - - if (status != STATUS_PENDING) - return status; - - if (memcmp(&pfinfo->notify, ¬ify, sizeof(NOTIFY))) - { - /*printf("disk_check_notify found changed event\n"); */ - memcpy(&pfinfo->notify, ¬ify, sizeof(NOTIFY)); - status = STATUS_NOTIFY_ENUM_DIR; - } - - return status; - - -} - -NTSTATUS -disk_create_notify(RDPCLIENT * This, NTHANDLE handle, uint32 info_class) -{ - - struct fileinfo *pfinfo; - NTSTATUS ret = STATUS_PENDING; - - /* printf("start disk_create_notify info_class %X\n", info_class); */ - - pfinfo = &(This->fileinfo[handle]); - pfinfo->info_class = info_class; - - ret = NotifyInfo(This, handle, info_class, &pfinfo->notify); - - if (info_class & 0x1000) - { /* ???? */ - if (ret == STATUS_PENDING) - return STATUS_SUCCESS; - } - - /* printf("disk_create_notify: num_entries %d\n", pfinfo->notify.num_entries); */ - - - return ret; - -} - -static NTSTATUS -NotifyInfo(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, NOTIFY * p) -{ - struct fileinfo *pfinfo; - struct stat buf; - struct dirent *dp; - char *fullname; - DIR *dpr; - - pfinfo = &(This->fileinfo[handle]); - if (fstat(handle, &buf) < 0) - { - perror("NotifyInfo"); - return STATUS_ACCESS_DENIED; - } - p->modify_time = buf.st_mtime; - p->status_time = buf.st_ctime; - p->num_entries = 0; - p->total_time = 0; - - - dpr = opendir(pfinfo->path); - if (!dpr) - { - perror("NotifyInfo"); - return STATUS_ACCESS_DENIED; - } - - - while ((dp = readdir(dpr))) - { - if (!strcmp(dp->d_name, ".") || !strcmp(dp->d_name, "..")) - continue; - p->num_entries++; - fullname = (char *) xmalloc(strlen(pfinfo->path) + strlen(dp->d_name) + 2); - sprintf(fullname, "%s/%s", pfinfo->path, dp->d_name); - - if (!stat(fullname, &buf)) - { - p->total_time += (buf.st_mtime + buf.st_ctime); - } - - xfree(fullname); - } - closedir(dpr); - - return STATUS_PENDING; -} - -static FsInfoType * -FsVolumeInfo(char *fpath) -{ - - static FsInfoType info; -#ifdef USE_SETMNTENT - FILE *fdfs; - struct mntent *e; -#endif - - /* initialize */ - memset(&info, 0, sizeof(info)); - strcpy(info.label, "RDESKTOP"); - strcpy(info.type, "RDPFS"); - -#ifdef USE_SETMNTENT - fdfs = setmntent(MNTENT_PATH, "r"); - if (!fdfs) - return &info; - - while ((e = getmntent(fdfs))) - { - if (str_startswith(e->mnt_dir, fpath)) - { - strcpy(info.type, e->mnt_type); - strcpy(info.name, e->mnt_fsname); - if (strstr(e->mnt_opts, "vfat") || strstr(e->mnt_opts, "iso9660")) - { - int fd = open(e->mnt_fsname, O_RDONLY); - if (fd >= 0) - { - unsigned char buf[512]; - memset(buf, 0, sizeof(buf)); - if (strstr(e->mnt_opts, "vfat")) - /*FAT*/ - { - strcpy(info.type, "vfat"); - read(fd, buf, sizeof(buf)); - info.serial = - (buf[42] << 24) + (buf[41] << 16) + - (buf[40] << 8) + buf[39]; - strncpy(info.label, buf + 43, 10); - info.label[10] = '\0'; - } - else if (lseek(fd, 32767, SEEK_SET) >= 0) /* ISO9660 */ - { - read(fd, buf, sizeof(buf)); - strncpy(info.label, buf + 41, 32); - info.label[32] = '\0'; - /* info.Serial = (buf[128]<<24)+(buf[127]<<16)+(buf[126]<<8)+buf[125]; */ - } - close(fd); - } - } - } - } - endmntent(fdfs); -#else - /* initialize */ - memset(&info, 0, sizeof(info)); - strcpy(info.label, "RDESKTOP"); - strcpy(info.type, "RDPFS"); - -#endif - return &info; -} - - -NTSTATUS -disk_query_volume_information(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, STREAM out) -{ - struct STATFS_T stat_fs; - struct fileinfo *pfinfo; - FsInfoType *fsinfo; - - pfinfo = &(This->fileinfo[handle]); - - if (STATFS_FN(pfinfo->path, &stat_fs) != 0) - { - perror("statfs"); - return STATUS_ACCESS_DENIED; - } - - fsinfo = FsVolumeInfo(pfinfo->path); - - switch (info_class) - { - case FileFsVolumeInformation: - - out_uint32_le(out, 0); /* volume creation time low */ - out_uint32_le(out, 0); /* volume creation time high */ - out_uint32_le(out, fsinfo->serial); /* serial */ - - out_uint32_le(out, 2 * strlen(fsinfo->label)); /* length of string */ - - out_uint8(out, 0); /* support objects? */ - rdp_out_unistr(This, out, fsinfo->label, 2 * strlen(fsinfo->label) - 2); - break; - - case FileFsSizeInformation: - - out_uint32_le(out, stat_fs.f_blocks); /* Total allocation units low */ - out_uint32_le(out, 0); /* Total allocation high units */ - out_uint32_le(out, stat_fs.f_bfree); /* Available allocation units */ - out_uint32_le(out, 0); /* Available allowcation units */ - out_uint32_le(out, stat_fs.f_bsize / 0x200); /* Sectors per allocation unit */ - out_uint32_le(out, 0x200); /* Bytes per sector */ - break; - - case FileFsAttributeInformation: - - out_uint32_le(out, FS_CASE_SENSITIVE | FS_CASE_IS_PRESERVED); /* fs attributes */ - out_uint32_le(out, F_NAMELEN(stat_fs)); /* max length of filename */ - - out_uint32_le(out, 2 * strlen(fsinfo->type)); /* length of fs_type */ - rdp_out_unistr(This, out, fsinfo->type, 2 * strlen(fsinfo->type) - 2); - break; - - case FileFsLabelInformation: - case FileFsDeviceInformation: - case FileFsControlInformation: - case FileFsFullSizeInformation: - case FileFsObjectIdInformation: - case FileFsMaximumInformation: - - default: - - unimpl("IRP Query Volume Information class: 0x%x\n", info_class); - return STATUS_INVALID_PARAMETER; - } - return STATUS_SUCCESS; -} - -NTSTATUS -disk_query_directory(RDPCLIENT * This, NTHANDLE handle, uint32 info_class, char *pattern, STREAM out) -{ - uint32 file_attributes, ft_low, ft_high; - char *dirname, fullpath[PATH_MAX]; - DIR *pdir; - struct dirent *pdirent; - struct stat fstat; - struct fileinfo *pfinfo; - - pfinfo = &(This->fileinfo[handle]); - pdir = pfinfo->pdir; - dirname = pfinfo->path; - file_attributes = 0; - - switch (info_class) - { - case FileBothDirectoryInformation: - - /* If a search pattern is received, remember this pattern, and restart search */ - if (pattern[0] != 0) - { - strncpy(pfinfo->pattern, 1 + strrchr(pattern, '/'), PATH_MAX - 1); - rewinddir(pdir); - } - - /* find next dirent matching pattern */ - pdirent = readdir(pdir); - while (pdirent && fnmatch(pfinfo->pattern, pdirent->d_name, 0) != 0) - pdirent = readdir(pdir); - - if (pdirent == NULL) - return STATUS_NO_MORE_FILES; - - /* Get information for directory entry */ - sprintf(fullpath, "%s/%s", dirname, pdirent->d_name); - - if (stat(fullpath, &fstat)) - { - switch (errno) - { - case ENOENT: - case ELOOP: - case EACCES: - /* These are non-fatal errors. */ - memset(&fstat, 0, sizeof(fstat)); - break; - default: - /* Fatal error. By returning STATUS_NO_SUCH_FILE, - the directory list operation will be aborted */ - perror(fullpath); - out_uint8(out, 0); - return STATUS_NO_SUCH_FILE; - } - } - - if (S_ISDIR(fstat.st_mode)) - file_attributes |= FILE_ATTRIBUTE_DIRECTORY; - if (pdirent->d_name[0] == '.') - file_attributes |= FILE_ATTRIBUTE_HIDDEN; - if (!file_attributes) - file_attributes |= FILE_ATTRIBUTE_NORMAL; - if (!(fstat.st_mode & S_IWUSR)) - file_attributes |= FILE_ATTRIBUTE_READONLY; - - /* Return requested information */ - out_uint8s(out, 8); /* unknown zero */ - - seconds_since_1970_to_filetime(get_create_time(&fstat), &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* create time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(fstat.st_atime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* last_access_time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(fstat.st_mtime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* last_write_time */ - out_uint32_le(out, ft_high); - - seconds_since_1970_to_filetime(fstat.st_ctime, &ft_high, &ft_low); - out_uint32_le(out, ft_low); /* change_write_time */ - out_uint32_le(out, ft_high); - - out_uint32_le(out, fstat.st_size); /* filesize low */ - out_uint32_le(out, 0); /* filesize high */ - out_uint32_le(out, fstat.st_size); /* filesize low */ - out_uint32_le(out, 0); /* filesize high */ - out_uint32_le(out, file_attributes); - out_uint8(out, 2 * strlen(pdirent->d_name) + 2); /* unicode length */ - out_uint8s(out, 7); /* pad? */ - out_uint8(out, 0); /* 8.3 file length */ - out_uint8s(out, 2 * 12); /* 8.3 unicode length */ - rdp_out_unistr(This, out, pdirent->d_name, 2 * strlen(pdirent->d_name)); - break; - - default: - /* FIXME: Support FileDirectoryInformation, - FileFullDirectoryInformation, and - FileNamesInformation */ - - unimpl("IRP Query Directory sub: 0x%x\n", info_class); - return STATUS_INVALID_PARAMETER; - } - - return STATUS_SUCCESS; -} - - - -static NTSTATUS -disk_device_control(RDPCLIENT * This, NTHANDLE handle, uint32 request, STREAM in, STREAM out) -{ - if (((request >> 16) != 20) || ((request >> 16) != 9)) - return STATUS_INVALID_PARAMETER; - - /* extract operation */ - request >>= 2; - request &= 0xfff; - - printf("DISK IOCTL %d\n", request); - - switch (request) - { - case 25: /* ? */ - case 42: /* ? */ - default: - unimpl("DISK IOCTL %d\n", request); - return STATUS_INVALID_PARAMETER; - } - - return STATUS_SUCCESS; -} - -DEVICE_FNS disk_fns = { - disk_create, - disk_close, - disk_read, - disk_write, - disk_device_control /* device_control */ -}; diff --git a/base/applications/tsclient/rdesktop/disk.h b/base/applications/tsclient/rdesktop/disk.h deleted file mode 100644 index 447ebb59798..00000000000 --- a/base/applications/tsclient/rdesktop/disk.h +++ /dev/null @@ -1,139 +0,0 @@ -/* - rdesktop: A Remote Desktop Protocol client. - Disk Redirection definitions - Copyright (C) Jeroen Meijer 2003 - Copyright (C) Peter Astrand 2004 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#define FILE_ATTRIBUTE_READONLY 0x00000001 -#define FILE_ATTRIBUTE_HIDDEN 0x00000002 -#define FILE_ATTRIBUTE_SYSTEM 0x00000004 -#define FILE_ATTRIBUTE_DIRECTORY 0x00000010 -#define FILE_ATTRIBUTE_ARCHIVE 0x00000020 -#define FILE_ATTRIBUTE_DEVICE 0x00000040 -#define FILE_ATTRIBUTE_UNKNOWNXXX0 0x00000060 /* ??? ACTION i.e. 0x860 == compress this file ? */ -#define FILE_ATTRIBUTE_NORMAL 0x00000080 -#define FILE_ATTRIBUTE_TEMPORARY 0x00000100 -#define FILE_ATTRIBUTE_SPARSE_FILE 0x00000200 -#define FILE_ATTRIBUTE_REPARSE_POINT 0x00000400 -#define FILE_ATTRIBUTE_COMPRESSED 0x00000800 -#define FILE_ATTRIBUTE_OFFLINE 0x00001000 -#define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 0x00002000 -#define FILE_ATTRIBUTE_ENCRYPTED 0x00004000 - -#define FILE_FLAG_OPEN_NO_RECALL 0x00100000 -#define FILE_FLAG_OPEN_REPARSE_POINT 0x00200000 -#define FILE_FLAG_POSIX_SEMANTICS 0x01000000 -#define FILE_FLAG_BACKUP_SEMANTICS 0x02000000 /* sometimes used to create a directory */ -#define FILE_FLAG_DELETE_ON_CLOSE 0x04000000 -#define FILE_FLAG_SEQUENTIAL_SCAN 0x08000000 -#define FILE_FLAG_RANDOM_ACCESS 0x10000000 -#define FILE_FLAG_NO_BUFFERING 0x20000000 -#define FILE_FLAG_OVERLAPPED 0x40000000 -#define FILE_FLAG_WRITE_THROUGH 0x80000000 - -#define FILE_SHARE_READ 0x01 -#define FILE_SHARE_WRITE 0x02 -#define FILE_SHARE_DELETE 0x04 - -#define FILE_BASIC_INFORMATION 0x04 -#define FILE_STANDARD_INFORMATION 0x05 - -#define FS_CASE_SENSITIVE 0x00000001 -#define FS_CASE_IS_PRESERVED 0x00000002 -#define FS_UNICODE_STORED_ON_DISK 0x00000004 -#define FS_PERSISTENT_ACLS 0x00000008 -#define FS_FILE_COMPRESSION 0x00000010 -#define FS_VOLUME_QUOTAS 0x00000020 -#define FS_SUPPORTS_SPARSE_FILES 0x00000040 -#define FS_SUPPORTS_REPARSE_POINTS 0x00000080 -#define FS_SUPPORTS_REMOTE_STORAGE 0X00000100 -#define FS_VOL_IS_COMPRESSED 0x00008000 -#define FILE_READ_ONLY_VOLUME 0x00080000 - -#define OPEN_EXISTING 1 -#define CREATE_NEW 2 -#define OPEN_ALWAYS 3 -#define TRUNCATE_EXISTING 4 -#define CREATE_ALWAYS 5 - -#define GENERIC_READ 0x80000000 -#define GENERIC_WRITE 0x40000000 -#define GENERIC_EXECUTE 0x20000000 -#define GENERIC_ALL 0x10000000 - -#define ERROR_FILE_NOT_FOUND 2L -#define ERROR_ALREADY_EXISTS 183L - -typedef enum _FILE_INFORMATION_CLASS -{ - FileDirectoryInformation = 1, - FileFullDirectoryInformation, - FileBothDirectoryInformation, - FileBasicInformation, - FileStandardInformation, - FileInternalInformation, - FileEaInformation, - FileAccessInformation, - FileNameInformation, - FileRenameInformation, - FileLinkInformation, - FileNamesInformation, - FileDispositionInformation, - FilePositionInformation, - FileFullEaInformation, - FileModeInformation, - FileAlignmentInformation, - FileAllInformation, - FileAllocationInformation, - FileEndOfFileInformation, - FileAlternateNameInformation, - FileStreamInformation, - FilePipeInformation, - FilePipeLocalInformation, - FilePipeRemoteInformation, - FileMailslotQueryInformation, - FileMailslotSetInformation, - FileCompressionInformation, - FileCopyOnWriteInformation, - FileCompletionInformation, - FileMoveClusterInformation, - FileOleClassIdInformation, - FileOleStateBitsInformation, - FileNetworkOpenInformation, - FileObjectIdInformation, - FileOleAllInformation, - FileOleDirectoryInformation, - FileContentIndexInformation, - FileInheritContentIndexInformation, - FileOleInformation, - FileMaximumInformation -} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS; - -typedef enum _FSINFOCLASS -{ - FileFsVolumeInformation = 1, - FileFsLabelInformation, - FileFsSizeInformation, - FileFsDeviceInformation, - FileFsAttributeInformation, - FileFsControlInformation, - FileFsFullSizeInformation, - FileFsObjectIdInformation, - FileFsDriverPathInformation, - FileFsMaximumInformation -} FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS; diff --git a/base/applications/tsclient/rdesktop/doc/AUTHORS b/base/applications/tsclient/rdesktop/doc/AUTHORS deleted file mode 100644 index a0824584e49..00000000000 --- a/base/applications/tsclient/rdesktop/doc/AUTHORS +++ /dev/null @@ -1,14 +0,0 @@ -This is an attempt at a list of people who have made significant -contributions to the code. If you have been unintentionally omitted -please let one of the team members know. - -Matt Chapman -Peter Kallden -Hugo Trippaers -Jay Sorg -Peter Åstrand -Michal Mihalik -Norbert Federa -Erik Forsberg -Michael Gernoth -Jeroen Meijer diff --git a/base/applications/tsclient/rdesktop/doc/ChangeLog b/base/applications/tsclient/rdesktop/doc/ChangeLog deleted file mode 100644 index 4c096a03e43..00000000000 --- a/base/applications/tsclient/rdesktop/doc/ChangeLog +++ /dev/null @@ -1,86 +0,0 @@ -rdesktop (1.?.?) - * SeamlessRDP - seamless windows support - * Keymap fixes - * Fix connection issues with Windows XP RTM - * Keyboard handling improvements and fixes - * SGI/Irix sound-driver fixes - * Support for clipboard INCR protocol - * Session Directory support (patch from Brian Chapeau ) - * Support for long filenames on redirected drives - * XOR ellipse drawing fix - * Clipboard unicode support (Ilya Konstantinov) - * Refactoring of color depth code (Ilya Konstantinov) - -rdesktop (1.4.1) - * persistent bitmap cache optimisations - * support for more RDP-orders (ellipse, polygon) - * libao sound-driver (for Mac OSX and others) - * Unicode support for transmitted strings/filenames - * Added korean keymap - * Xembed fixes to work with krdc correctly - * Portability fixes - * Support for RDP-compression (all bpps) - * process RDP recv queue if send queue is full (Debian bug #246461) - * SGI/Irix sound-driver fixes - - -- Michael Gernoth Sun, 8 May 2005 19:55:35 +0200 (CEST) - -rdesktop (1.4.0) - * Basic disk-, parallel-, printer- and serial-redirection - * Fix timezone-redirection - * Backing-store fixes - * Fix client-IP sent to TS - * XEmbed support for embedding rdesktop in other applications (KRDC) - * Support for setting the RDP5 experience - * Keyboard and keymap fixes - * Performance improvements - * Report disconnect-reason - * Support for RDP-compression (currently only for 8bpp) - * Support for persistent bitmap caching - * Sound-driver for SGI/Irix - - -- Michael Gernoth Sun, 6 Mar 2005 22:09:55 +0100 (CET) - -rdesktop (1.3.1) - * Crypto fixes for RDP5 - * Keyboard and keymap fixes - * some endianess fixes for high color - * portability enhancements - - -- Matthew Chapman Tue, 21 Jan 2004 20:34 - -rdesktop (1.3.0) - - * RDP5 - * 15, 16 and 24 bit color depths - * Basic clipboard redirection - * Sound - * IPv6 - * Attaching to console on Windows 2003 - - -- Peter Astrand Wed, 29 Oct 2003 16:40:58 +0100 (CET) - -rdesktop (1.2.0) - - * new - more portable - key mapping code - * support for "high" (128-bit) encryption - * toggling out of full-screen mode with Ctrl-Alt-Enter - * a few extra options including host:port syntax - * many, many bug fixes and optimisations - - -- Matthew Chapman Thu, 30 Jan 2003 04:29 - -rdesktop (1.1.0) - - * solves arith.c licensing issue by taking big number routines from - OpenSSL - * keyboard support not merged from unified patches yet - * still no manpage - - -- Matthew Chapman Mon, 17 Sep 2001 23:14:28 +1000 (AEST) - -rdesktop (1.0.0) - - * initial release - - -- Matthew Chapman diff --git a/base/applications/tsclient/rdesktop/doc/HACKING b/base/applications/tsclient/rdesktop/doc/HACKING deleted file mode 100644 index f7689763817..00000000000 --- a/base/applications/tsclient/rdesktop/doc/HACKING +++ /dev/null @@ -1,28 +0,0 @@ - -Code style / indentation ------------------------- -The file indent-all.sh contains information about the current code -style. Run this script before commits. - - -Variable argument macros ------------------------- -Variable argument macros are non-portable in general, and should be -avoided. Either use a second set of parentheses like DEBUG, or create -a variable argument function like error. - - -Structure ---------- -The core protocol stack should be system-independent (i.e. ANSI C -only) so that it is easy to port. This currently applies to the -following files: - -bitmap.c licence.c orders.c rdp.c rdp5.c cache.c iso.c mcs.c -secure.c mppc.c channels.c -rdesktop.c - - -RDP resources -------------- -http://dev.remotenetworktechnology.com/refdata.htm diff --git a/base/applications/tsclient/rdesktop/doc/TODO b/base/applications/tsclient/rdesktop/doc/TODO deleted file mode 100644 index 1aa830a4069..00000000000 --- a/base/applications/tsclient/rdesktop/doc/TODO +++ /dev/null @@ -1,89 +0,0 @@ - -* Clipboard: - - * Support other data types than plain text. - - * Conversion between different character sets. - - -* Drive Redirection: - - * Real support for file locking - - * Handle reconnections correctly. - - * Various deficiencies; see FIXMEs in source code. - - -* Serial Port Redirection: - - * More testing needed. - - -* Printer Redirection: - - * More testing needed. - - -* Keymapping: - - -* Sound redirection - - * Use timestamps in audio packets. - - * Add resampling to supported samplerates of audio-hardware. - - * Lower CPU-usage with an audio thread. - - -* Smartcard redirection - - * Merge patches currently implementing sc-redirection. - - -* Miscellaneous - - * Clean up header files. The current "proto.h" and "xproto.h" is far - from optimal. - - * Go through the many trackers (bugs/patches/RFEs) at SourceForge. - - * More fancy homepage. - - * Enhance documentation. Write a FAQ. - - -* SeamlessRDP mode - - * Add a client to server message for starting additional - applications. - - * Support cmd.exe. - - * Support for Input Contexts. - - * Enhanced support for WM_DELETE_WINDOW: Instead of terminating - rdesktop, close the window on the server side. - - * Systray support. - - * Support for transferring the application taskbar icon. - - * Better support for non-EWMH window managers. - - * Support for non-rectangular windows. - - * The focus handling of menus is a bit crude. - - * Support for sending focus information from client to server. - - * Implement something similiar to explhook.dll - support for running - explorer.exe in non-shell mode. - - * Better compatibility with Task Manager. - - * XINERAMA support. - - * When enumerating windows, make sure to send info about windows - that are transient for other windows after the referred window. diff --git a/base/applications/tsclient/rdesktop/doc/ipv6.txt b/base/applications/tsclient/rdesktop/doc/ipv6.txt deleted file mode 100644 index 1d3ef2341c2..00000000000 --- a/base/applications/tsclient/rdesktop/doc/ipv6.txt +++ /dev/null @@ -1,29 +0,0 @@ - -IPv6 support in rdesktop -======================== -The IPv6 support was developed by Mike Dawson : - - Attached is a patch to tcp.c to enable IPv6 support. Build with - 'IPv6' defined to enable it. It's so far only been tested on - Linux 2.4.21 connecting to Windows XP SP1. - - Since terminal services doesn't seem to bind to the ipv6 interface - on XP I had to run 'netsh interface portproxy add v6tov4 - listenport=3389 connectport=3389' from the windows command prompt - to get it to work. - - -rdesktop now supports numeric IPv6 addresses: - - It checks for two or more colons in an address to decide what it's - dealing with so you can now do: - - rdesktop 2001:1:2:3::4 - - without it getting confused with an ipv4:port specification. I've - also followed the square bracket convention used by browsers - (http://www.ietf.org/rfc/rfc2732.txt) so if you want to specify a - non-standard port with an ipv6 address you can use the format: - - rdesktop [2001:1:2:3::4]:3390 - diff --git a/base/applications/tsclient/rdesktop/doc/keymap-names.txt b/base/applications/tsclient/rdesktop/doc/keymap-names.txt deleted file mode 100644 index 3da698b2935..00000000000 --- a/base/applications/tsclient/rdesktop/doc/keymap-names.txt +++ /dev/null @@ -1,124 +0,0 @@ - -0x0436 af Afrikaans -0x041C sq Albanian -0x0001 ar Arabic -0x0401 ar-sa Arabic (Saudi Arabia) -0x0801 ar-iq Arabic (Iraq) -0x0C01 ar-eg Arabic (Egypt) -0x1001 ar-ly Arabic (Libya) -0x1401 ar-dz Arabic (Algeria) -0x1801 ar-ma Arabic (Morocco) -0x1C01 ar-tn Arabic (Tunisia) -0x2001 ar-om Arabic (Oman) -0x2401 ar-ye Arabic (Yemen) -0x2801 ar-sy Arabic (Syria) -0x2C01 ar-jo Arabic (Jordan) -0x3001 ar-lb Arabic (Lebanon) -0x3401 ar-kw Arabic (Kuwait) -0x3801 ar-ae Arabic (U.A.E.) -0x3C01 ar-bh Arabic (Bahrain) -0x4001 ar-qa Arabic (Qatar) -0x042D eu Basque -0x0402 bg Bulgarian -0x0423 be Belarusian -0x0403 ca Catalan -0x0004 zh Chinese -0x0404 zh-tw Chinese (Taiwan) -0x0804 zh-cn Chinese (China) -0x0C04 zh-hk Chinese (Hong Kong SAR) -0x1004 zh-sg Chinese (Singapore) -0x041A hr Croatian -0x0405 cs Czech -0x0406 da Danish -0x0413 nl Dutch (Netherlands) -0x0813 nl-be Dutch (Belgium) -0x0009 en English -0x0409 en-us English (United States) -0x0809 en-gb English (United Kingdom) -0x0C09 en-au English (Australia) -0x1009 en-ca English (Canada) -0x1409 en-nz English (New Zealand) -0x1809 en-ie English (Ireland) -0x1C09 en-za English (South Africa) -0x2009 en-jm English (Jamaica) -0x2809 en-bz English (Belize) -0x2C09 en-tt English (Trinidad) -0x0425 et Estonian -0x0438 fo Faeroese -0x0429 fa Farsi -0x040B fi Finnish -0x040C fr French (France) -0x080C fr-be French (Belgium) -0x0C0C fr-ca French (Canada) -0x100C fr-ch French (Switzerland) -0x140C fr-lu French (Luxembourg) -0x043C gd Gaelic -0x0407 de German (Germany) -0x0807 de-ch German (Switzerland) -0x0C07 de-at German (Austria) -0x1007 de-lu German (Luxembourg) -0x1407 de-li German (Liechtenstein) -0x0408 el Greek -0x040D he Hebrew -0x0439 hi Hindi -0x040E hu Hungarian -0x040F is Icelandic -0x0421 in Indonesian -0x0410 it Italian (Italy) -0x0810 it-ch Italian (Switzerland) -0x0411 ja Japanese -0x0412 ko Korean -0x0426 lv Latvian -0x0427 lt Lithuanian -0x042F mk FYRO Macedonian -0x043E ms Malay (Malaysia) -0x043A mt Maltese -0x0414 no Norwegian (Bokmal) -0x0814 no Norwegian (Nynorsk) -0x0415 pl Polish -0x0416 pt-br Portuguese (Brazil) -0x0816 pt Portuguese (Portugal) -0x0417 rm Rhaeto-Romanic -0x0418 ro Romanian -0x0818 ro-mo Romanian (Moldova) -0x0419 ru Russian -0x0819 ru-mo Russian (Moldova) -0x0C1A sr Serbian (Cyrillic) -0x081A sr Serbian (Latin) -0x041B sk Slovak -0x0424 sl Slovenian -0x042E sb Sorbian -0x040A es Spanish (Traditional Sort) -0x080A es-mx Spanish (Mexico) -0x0C0A es Spanish (International Sort) -0x100A es-gt Spanish (Guatemala) -0x140A es-cr Spanish (Costa Rica) -0x180A es-pa Spanish (Panama) -0x1C0A es-do Spanish (Dominican Republic) -0x200A es-ve Spanish (Venezuela) -0x240A es-co Spanish (Colombia) -0x280A es-pe Spanish (Peru) -0x2C0A es-ar Spanish (Argentina) -0x300A es-ec Spanish (Ecuador) -0x340A es-cl Spanish (Chile) -0x380A es-uy Spanish (Uruguay) -0x3C0A es-py Spanish (Paraguay) -0x400A es-bo Spanish (Bolivia) -0x440A es-sv Spanish (El Salvador) -0x480A es-hn Spanish (Honduras) -0x4C0A es-ni Spanish (Nicaragua) -0x500A es-pr Spanish (Puerto Rico) -0x0430 sx Sutu -0x041D sv Swedish -0x081D sv-fi Swedish (Finland) -0x041E th Thai -0x0431 ts Tsonga -0x0432 tn Tswana -0x041F tr Turkish -0x0422 uk Ukrainian -0x0420 ur Urdu -0x042A vi Vietnamese -0x0434 xh Xhosa -0x043D ji Yiddish -0x0435 zu Zulu - diff --git a/base/applications/tsclient/rdesktop/doc/keymapping.txt b/base/applications/tsclient/rdesktop/doc/keymapping.txt deleted file mode 100644 index 6d10eae5b87..00000000000 --- a/base/applications/tsclient/rdesktop/doc/keymapping.txt +++ /dev/null @@ -1,243 +0,0 @@ -Keyboard mapping -================ -This release of rdesktop uses a new, portable keyboard mapping -implementation. It should hopefully work on all X11 systems. This new -implementation only looks at X11 keysyms: Not on (nonportable) -keycodes or modifier status. This means that rdesktop will obey your -local keyboard configuration. For example, if you have swapped -CapsLock and Control, rdesktop will use this mapping. - -XKB is currently not used. It seems like a good idea to me, but since -some X servers (like Xvnc) does not support XKB, we still need to use -the plain old interface as well, at least. - -There are still some small problems. - -* CapsLock: CapsLock changes are never sent to the RDP - server. rdesktop does not know which keys that are modified by - CapsLock and which are not. So, the CapsLock indicator in Wordpad - etc will always be off. - -Composing/Multi_key is supported. For more information, see: - - MIT: $SRC/xc/nls/X11/locale/Compose/iso8859-1 - XFree86: /usr/X11R6/lib/X11/locale/*/Compose - Solaris' Openwin: /usr/openwin/include/X11/Suncompose.h - /usr/openwin/lib/locale/*/Compose - Irix6: compose(5) - - -Keymap files -============ -The names of the keymaps follows RFC1766. - -(You can find a translation from Windows keyboard layout numbers to -keymap names by looking at -HKEY_LOCAL_MACHINE\SOFTWARE\Classes\MIME\Database\RFC1766 in the -registry.) - - -Contents of keymap files -======================== -The keymaps are line based. There are four different types of lines: - -1) include lines -Syntax: -include - -Example: -include common - - -2) map lines -Syntax: -map - -Example: -map 0x41d - -Map-lines specifies how the remote RDP server should interpret the -sent scancodes. - - -3) Translation lines -Syntax: - [flags..] - -Example: -onehalf 0x29 shift - -The scancode can be found in scancodes.h. Note: The scancode value for -extended keys can be calculated by OR:ing with 0x80. Example: The -Delete key have the scancode sequence 0xe0, 0x52. You can get the -scancode value to put into the map file by running: - -python -c "print hex(0x80 | 0x52)" - -If flags are "altgr", "shift", the scancode sent for this keysym will -be prefixed with AltGr, or Shift. - -If flags includes "addupper", a translation for this keysyms uppercase -name will be added as well, in addition to the non-uppercase -name. Example: - -x 2d addupper - -...will add an translation for "X" automatically, just like if you -would specify: - -X 2d shift - -If flags include "localstate", the modifier to send will be determined -by the local modifier state. - -If flags is "inhibit", nothing will be sent to the server. - -If flags is "numlock", rdesktop will make sure that the remote NumLock -state is on before generating the key event. Otherwise, it will make -sure NumLock is off. - - -4) enable_compose - -If any line starts with the keyword "enable_compose", rdesktop will -enable local Compose/Multi_key handling. Enabling this will often make -it impossible to compose characters with dead keys (on the remote -side). This is because when local compose support is enabled, dead -keys will not be sent to the remote side. - - -5) sequence lines -Syntax: -sequence ... - -Examples: -sequence eacute dead_acute e -sequence F12 f o o at e x a m p l e period c o m - -Sequence lines allows you to specify that multiple scancodes should be -sent to the RDP server, in response to one X11 keyboard event. Note: -The sequence is sent at the X11 KeyPress event. Nothing is sent at -KeyRelease. - - -6) keyboard_type lines -Syntax: -keyboard_type - -keyboard_type lines specifies the keyboard type. Default value is 0x4 -(en-us 101/104 keys keyboard). - - -7) keyboard_subtype lines -Syntax: -keyboard_subtype - -keyboard_subtype lines specifies the keyboard subtype. Default value -is 0x0 (en-us 101/104 keys keyboard). - - -8) keyboard_functionkeys lines -Syntax: -keyboard_functionkeys - -keyboard_functionkeys specifies the number of keyboard function -keys. Default value is 0xc (12, for standard 101/104 keys keyboard). - - - - -Suggested X11 keysym mapping on PCs -=================================== -Unfortunately, there is no standard for which keysyms a given key -should generate. If you have a PC-keyboard with Windows keys, I suggest this mapping: - -Keyboard keys: -CtrlLeft WinLeft AltLeft Space AltGr WinRight Menu CtrlRight - -...should generate keysyms: -Control_L Super_L Alt_L space Mode_switch Super_R Menu Control_R - -Additionally: -Shift-Alt should produce Meta_L -Shift-AltGr should produce Multi_Key. - -Use a modifier-map like this: - -shift Shift_L (0x32), Shift_R (0x3e) -lock Caps_Lock (0x25) -control Control_L (0x42), Control_R (0x6d) -mod1 Alt_L (0x40) -mod2 Num_Lock (0x4d) -mod3 Mode_switch (0x71) -mod4 Super_L (0x73), Super_R (0x74) -mod5 Scroll_Lock (0x4e) - - -Updating / writing keymap files -=============================== -When writing new or updating keymap files, please use comments and -blanks, to increase readability. The "sv" keymap is a good template. - -When you need to add a translation to a keymap file, do: - - 1. Get the "key number" for this key, by looking at keynums.png. - - 2. Take a look at scancodes.h, and look for - SCANCODE_KEY_. The scancode value is at the end of - the line. If the line contains (SCANCODE_EXTENDED | 0xsomething), - then you should OR 0x80 to this value. For example, you can do: - - python -c "print hex(0x80 | 0xsomething)" - - 3. Put the scancode (from step 2) and keysym name (found in the - error message) into the keymap file. - - -Special keys -============ - -* The combination Ctrl-Alt-Enter toggles between fullscreen and - non-fullscreen mode. - -* Meta, Hyper and Super are treated as windows keys. RDP4 does not - support the windows keys though, so if you are running RDP4, these - keys will translate to Ctrl-Esc. - - -Links -===== -http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html - - -Test cases -========== -When changing the keyboard code, make sure all these tests in Notepad -works: - -1. Ctrl+f should bring up Find dialog, with CapsLock both on and off. - -2. Ctrl+Shift+arrows should mark text, with CapsLock both on and off. - -3. Test a sequence, like egrave. - -4. Test a char generated with AltGr, such as @ on a swedish keyboard. - -5. Test Ctrl-Alt-Delete. - -6. Ctrl-Alt-Enter should toggle fullscreen. - -7. Test NumLock synchronization using the -N option. Excel is able to - indicate the current NumLock state. Verify that the status is - updated correctly on reconnects. - -8. Test the Windows keys, standalone as well as in combination with, - say, E. - -9. Make sure the system menu (via Alt-space) cannot be accessed in - single app mode. - -10. Make sure keymaps can be loaded from ~/.rdesktop/keymaps, - KEYMAP_PATH, $CWD/keymaps, and from an absolute path. - - diff --git a/base/applications/tsclient/rdesktop/doc/keynums.png b/base/applications/tsclient/rdesktop/doc/keynums.png deleted file mode 100644 index 401601b9e06..00000000000 Binary files a/base/applications/tsclient/rdesktop/doc/keynums.png and /dev/null differ diff --git a/base/applications/tsclient/rdesktop/doc/licensing.txt b/base/applications/tsclient/rdesktop/doc/licensing.txt deleted file mode 100644 index d8006d2eb72..00000000000 --- a/base/applications/tsclient/rdesktop/doc/licensing.txt +++ /dev/null @@ -1,56 +0,0 @@ - -To be able to connect to Microsoft Windows 2000 Terminal Services (and -probably later versions), you'll need to deal with licensing. This is -complicated. This file is supposed to contain some information about -how rdesktop works with Microsofts license systems. - -There's a lot of information on the MS web site, for example, -http://support.microsoft.com/default.aspx?scid=kb;EN-US;287687. - -From the rdesktop mailing list: - -Peter Åstrand , 2003-02-06 - -> We are running rdesktop 1.2 on machine A and connects to a Windows 2000 -> Server (machine B). The W2K machine has 5 real licenses installed ("Windows -> 2000 Terminal Services Client Access License", "Open" type). This can be -> verifier by using "Terminal Services Licensing". The problem is that all -> issued licenses have an expire-date. The expire date for the license issued -> to A was reached today, and no more connections could be made until we -> changed the client name (by using -n). -> -> We also have another similiar systems, with Linux machine C and W2K server -> D. This server has 200 licenses installed of the type "Select". On this -> server, the issued licenses seems to be permanent: The expire date is set -> to "-", and we have no problem with this system. -> -> The question of course is why the first system issues license with -> expiration date, while the second system issues permanent licenses. - - -Darryn Capes-Davis, 2003-02-07 - -> I have been through the problems and can tell you what is going -> on. The main difference of Machine B (Server 1) and Machine D (Server -> 2) is that from what I see Machine B has Service Pack 3 installed and -> Machine D does not. You see in Service Pack 3 there was a change made -> to TS Licencing in that Microsoft introduced a licence recovery -> mechanism. To cut to the point (I don't know the details) rdesktop 1.2 -> with SAVE_LICENCE defined works fine. In the new lic method the -> terminal server expects a valid licence to be presented to renew -> it. Otherwise it just expires it - and a day later you will see it -> actually gone (it does housekeeping once a day)! So if SAVE_LICENCE -> code is not enabled then it just expires and you can't use the licence -> until it cleans it away - and this is where a little gotcha is - if -> you move from using an rdesktop without SAVE_LICENCE to one with -> SAVE_LICENCE then it still won't recover an 'expired' licence. You -> have to wait for the daily housekeeping to clean it up - this really -> had me going for half a day or so! This is exactly what happened to -> you. -> -> The Server pre Spk 3 has the old model where licences never expire. To -> recover a licence that you never wanted to use again you have to call -> the Microsoft Clearing House. That's why they introduced the new -> method. And if you upgrade a Pre Spk3 server to Spk3 then the licences -> granted still stay with the old method - only new licences granted -> will use the new expiry method. diff --git a/base/applications/tsclient/rdesktop/doc/lspci-channel.txt b/base/applications/tsclient/rdesktop/doc/lspci-channel.txt deleted file mode 100644 index 78645171e2a..00000000000 --- a/base/applications/tsclient/rdesktop/doc/lspci-channel.txt +++ /dev/null @@ -1,39 +0,0 @@ - -Protocol overview -================= - -The lspci virtual channel makes it possible for the remote RDP server -to enumerate the local PCI devices. The protocol on this channel is -text based and line oriented: One single line per request or -response. UNIX-style LF line breaks are used. The maximum line length -is 1023, newline included. - -rdesktop acts as a server, with only one request: - - LSPCI - -The response is several lines with this syntax: - -,,,,,, - -After the last line, a line with a single dot is sent. - -Example: - -0300,102b,0525,102b,0338,04,00 -0401,8086,24d5,1028,0174,02,8f -. - - -Usage -===== - -To enable to lspci virtual channel, run rdesktop with "-r lspci". - - -References -========== - -http://www.microsoft.com/msj/1099/terminal/terminal.aspx -http://msdn.microsoft.com/library/default.asp?url=/library/en-us/termserv/termserv/terminal_services_virtual_channels.asp - diff --git a/base/applications/tsclient/rdesktop/doc/patches.txt b/base/applications/tsclient/rdesktop/doc/patches.txt deleted file mode 100644 index 08ffe59f7a8..00000000000 --- a/base/applications/tsclient/rdesktop/doc/patches.txt +++ /dev/null @@ -1,340 +0,0 @@ -This file documents some of all patches for rdesktop, floating around -the net, and how they are related to the current (CVS) version of -rdesktop. Things left to do are marked with TBD (To Be Done). - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/Makefile.diff -Description: -Makefile changes which makes it possible to compile rdesktop on SunOS -and OSF1. -Status: -Applied (slightly modified) - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/assar_19-7-2.hostlen.patch -Description: -Fix for hostnames longer than 30 chars. -Status: -Applied (revision 1.11 of secure.c) - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/backingstore+privatecolormap-for-19-3-9.patch -Description: -This adds support for 1) Private color maps (useful for 8 bpp mode) -and 2) backingstore selection. -Status: -1) is not needed anymore; rdesktop automatically uses Private color -map in 8 bpp mode. 2) is, as far as I understand, also not -need. rdesktop automatically uses a software backing store if the -Xserver does not provide one. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/ben_xwin.c.diff -Description: -Fixes for CapsLock and NumLock. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/ctrl1nohang.diff -Description: -Fixes problem with ctrl1 hangs. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/downkeypatch.diff -Description: -Seems to keep track of the remote modifier status. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/fasttext2+nobackpixmap.patch -Description: -(From http://mail.rdesktop.org/archive/2001/msg00218.html): - -1) Added --no-backpixmap option to disable the ugly double drawing in -xwin.c (I have a very robust backing storage in my X, so I don't need -it ;) - -2) More optimizations to text draw (previous fast-text patch was -included in 192-3-6-2). In text drawing with solid background the -glyphs are drawn with stippled fill instead of XCopyPlane (runs faster -on my S3Trio64 with XFree 3.3.6, please test it on other -configurations to validate this). The WinTach not show any improvement -with this change, it seems to use all transparent background text -draws, but with a old PC Magazine Winbench (3.1) doing the scroll text -test the speed gain is significative. - -3) My Previous patch to disable backing storage in fullscreen - -Status: -1) is not relevant any more, since rdesktop only uses backing store if -the Xserver does not provide backing store. -Need to examine if 2) and 3) are still useful. TBD. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/francisco_fix_patblt.html -Description: -The colors in patterns drawn with "pattern blt" order was inverted (fg -& bg). (See the background of the yellow help banners) -Status: -Applied (in revision 1.29, 2002/07/14) - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/frank_1linerfix.html -Description: -ui_create_glyph was not called with ipattern. -Status: -Applied (in revision 1.29, 2002/07/14). - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/frank_fasttext.patch.txt -Description: -Some kind of performence improvements. -Status: -From what I can tell, this patch is no longer necessary. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/hostname-patch -Description: -(From http://mail.rdesktop.org/archive/2001/msg00163.html): - -rdesktop uses gethostname to figure out the hostname, but gethostname -under linux returns an error when the hostname is longer than the -buffer. This hack gives gethostname a 64 char buffer and then strips -the first 16 chars or upto the first '.' and puts the result in -hostname[16]. - -Status: -Applied in version 1.10 of rdesktop.c. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/hove-19-7-2endian.diff -Description: -Includes a program for testing endianness. -Status: -rdesktop determines endianness at runtime. This patch is not needed -anymore. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/mmihalik_19-7-3-keyfix-4.patch -Description: -Some kind of new alternative keyboard mapping imlementation. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/norbert_fullscreen.patch -Description: -Fullscreen mode. -Status: -Applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/norbert_percent.txt -Description: -Makes is possible to specify RDP geometry based a percent value of the -current desktop size. -Status: -Not applied. I don't think many people will need this. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/norbert_rdp_tcp_port.diff -Description: -Command line tcp port argument. -Status: -Applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/patch19-7-2.xyPos.emptyPassword.patch -Description: -This patch adds: -1) Support for empty passwords -2) Support for asking for password interactively -3) Support for ++ geometry. - -Status: -1) and 2) can be solved by the -P parameter; patch not needed. -Functionality for 3) is currently missing. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-1.0.0-19-7-1-mmihalik-3.diff -Description: -Defines DO_GLYPH() etc. -Status: -As far as I understand, this patch is applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-1.0.0-mmihalik-1.diff -Description: -Misc drawing changes. -Status: -As far as I understand, this patch is applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-1.0.0-pl19-7-2-mmihalik-1.diff -Description: -Some kind of new alternative keyboard mapping implementation. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-gmp.patch -Description: -Use GMP for RSA crypto. -Status: -Not needed since rdesktop now use OpenSSL for all of the crypto. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-new_kb.patch -Description: -Modifies one of the old keyboard mapping implementations in some way. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop-openssl.patch -Description: -Support for linking rdesktop with OpenSSL. -Status: -Not needed anymore, rdesktop can optionally use system -OpenSSL. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop.vncviewer_patch -Description: -Hack for making the old (broken) keyboard mapping implementation work -with the VNC Xserver. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdesktop_keymap.patch -Description: -Some kind of new alternative keyboard mapping implementation. -Status: -Not needed anymore, with the new keyboard mapping implementation. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/rdp-srvr-19-6-6.diff -Description: -Basic RDP server. -Status: -Not applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/scroll-to-death-patch.txt -Description: -Fixes scroll-to-death problem in Excel and other applications. -Status: -Not needed; fixed in another way in recent versions of rdesktop. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/spark-manpage-patch-19.4 -Description: -Adds a manual page. -Status: -Not needed; rdesktop contains a manual page now. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/spark-manpage-patch-19.4-1 -Description: -Adds a manual page. -Status: -Not needed; rdesktop contains a manual page now. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/spark_xinerama-patch2 -Description: -Adds XINERAMA support to rdesktop. -Status: -Not applied yet. TBD. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/svenni_dis_wmkeybnds.patch -Description: -Commandline flag to disable keyboard grabbing. -Status: -Applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/svenni_disable_bs_in_x-tiny-patch -Description: -Disables backing store for TinyX. -Status: -As far as I understand, this patch is not need any longer. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/vincent_19-7-2.license.patch -Description: -TBD -Status: -Not yet examined. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/vincent_19-7-2.secure.patch -Description: -Fixes a problem during the connection to a French NT4 TSE (a French -NT4 TSE doesn't use encryptation). -Status: -Applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/vincent_19-7-3_excel.patch -Description: -Makes matrixes appear better, such as those found in Excel/toad etc. -Status: -Applied. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/vincent_8bpp.patch -Description: -Support a 8bpp display (256 colours). -Status: -An enhanced version is included in rdesktop; this patch is not needed any more. - - -URL: -http://bibl4.oru.se/projects/rdesktop/patch19/patches/vpypatch.txt -Description: -Various changes for one of the old keyboard stuff. -Status: -Not needed anymore, with the new keyboard mapping implementation. diff --git a/base/applications/tsclient/rdesktop/doc/rdesktop.1 b/base/applications/tsclient/rdesktop/doc/rdesktop.1 deleted file mode 100644 index 585cf8ec376..00000000000 --- a/base/applications/tsclient/rdesktop/doc/rdesktop.1 +++ /dev/null @@ -1,217 +0,0 @@ -.TH rdesktop 1 "November 2005" -.SH NAME -.I rdesktop -\- Remote Desktop Protocol client -.SH SYNOPSIS -.B rdesktop [options] server[:port] -.br -.SH DESCRIPTION -.I rdesktop -is a client for Remote Desktop Protocol (RDP), used in a number of Microsoft -products including Windows NT Terminal Server, Windows 2000 Server, Windows XP -and Windows 2003 Server. - -.SH OPTIONS -.TP -.BR "-u " -Username for authentication on the server. -.TP -.BR "-d " -Domain for authentication. -.TP -.BR "-s " -Startup shell for the user - starts a specific application instead of Explorer. -.TP -.BR "-c " -The initial working directory for the user. Often used in combination with -s -to set up a fixed login environment. -.TP -.BR "-p " -The password to authenticate with. Note that this may have no effect if -"Always prompt for password" is enabled on the server. WARNING: if you specify -a password on the command line it may be visible to other users when they use -tools like ps. Use -p - to make rdesktop request a password at startup (from -standard input). -.TP -.BR "-n " -Client hostname. Normally rdesktop automatically obtains the hostname of the -client. -.TP -.BR "-k " -Keyboard layout to emulate. This requires a corresponding keymap file to be -installed. The standard keymaps provided with rdesktop follow the RFC1766 -naming scheme: a language code followed by a country code if necessary - e.g. -en-us, en-gb, de, fr, sv, etc. - -The default keyboard map depends on the current locale (LC_* and LANG -environment variables). If the current locale is unknown, the default -keyboard map is en-us (a US English keyboard). - -The keyboard maps are file names, which means that they are case -sensitive. The standard keymaps are all in lowercase. - -The keyboard maps are searched relative to the directories -$HOME/.rdesktop/keymaps, KEYMAP_PATH (specified at build time), and -$CWD/keymaps, in this order. The keyboard-map argument can also be an -absolute filename. - -The special value `none' can be used instead of a keyboard map. -In this case, rdesktop will guess the scancodes from the X11 event key -codes using an internal mapping method. This method only supports the -basic alphanumeric keys and may not work properly on all platforms -so its use is discouraged. -.TP -.BR "-g " -Desktop geometry (WxH). If geometry is the special word "workarea", the geometry -will be fetched from the extended window manager hints property _NET_WORKAREA, from -the root window. The geometry can also be specified as a percentage of the whole -screen, e.g. "-g 80%". -.TP -.BR "-f" -Enable fullscreen mode. This overrides the window manager and causes the -rdesktop window to fully cover the current screen. Fullscreen mode can be -toggled at any time using Ctrl-Alt-Enter. -.TP -.BR "-b" -Force the server to send screen updates as bitmaps rather than using -higher-level drawing operations. -.TP -.BR "-A" -Enable SeamlessRDP. In this mode, rdesktop creates a X11 window for -each window on the server side. This mode requires the SeamlessRDP -server side component. When using this option, you should specify a -startup shell which launches the desired application through -SeamlessRDP. Example: rdesktop -A -s 'seamlessrdpshell notepad'. -.TP -.BR "-B" -Use the BackingStore of the Xserver instead of the integrated one in -rdesktop. -.TP -.BR "-e" -Disable encryption. This option is only needed (and will only work) if you -have a French version of NT TSE. -.TP -.BR "-E" -Disable encryption from client to server. This sends an encrypted login packet, -but everything after this is unencrypted (including interactive logins). -.TP -.BR "-m" -Do not send mouse motion events. This saves bandwidth, although some Windows -applications may rely on receiving mouse motion. -.TP -.BR "-C" -Use private colourmap. This will improve colour accuracy on an 8-bit display, -but rdesktop will appear in false colour when not focused. -.TP -.BR "-D" -Hide window manager decorations, by using MWM hints. -.TP -.BR "-K" -Do not override window manager key bindings. By default rdesktop attempts -to grab all keyboard input when it is in focus. -.TP -.BR "-S