Giter Club home page Giter Club logo

excel-projects / server-help Goto Github PK

View Code? Open in Web Editor NEW
24.0 3.0 7.0 12.96 MB

:computer: This VSTO Add-In allows the user to ping a list of servers and creates a file for Microsoft Remote Desktop Manager an Excel table. This is used for quickly determining which servers are offline in a list. It is written in 3 different versions as a VSTO Add-In in C# and VB.NET as well as a VBA Add-In.

License: MIT License

Batchfile 0.89% C# 62.01% Visual Basic .NET 37.09%
vba excel ping server rdp cmd ribbon vb-net csharp vsto

server-help's Introduction

This Add-In allows the user to ping a list of servers and creates a file for Microsoft Remote Desktop Manager from an Excel table. This is used for quickly determining which servers are offline in a list. It is written in 3 different versions as a VSTO Add-In in C# and VB.NET as well as a VBA Add-In.

Join the chat at https://gitter.im/ServerActions/Lobby License: MIT Latest Release Github commits (since latest release) GitHub issues

Table of Contents


Install

Instructions for installation of VBA and VSTO versions.

VBA

How to install the VBA version

  1. Download the VBA Add-In file download VBA.
  2. Copy the file to the XLSTART folder on your computer. %AppData%\Microsoft\Excel\XLSTART\
  3. Close all open instances of Excel and then launch Excel. The new ribbon should appear.

VSTO

How to install the VSTO version

  1. Download AnthonyDuguid.pfx And Install At Root Level download Key
  2. Download and run the setup.exe file. download VSTO

Dependencies

Software Dependency Project
Microsoft Visual Studio Solution VSTO
Microsoft Office Developer Tools Solution VSTO
Microsoft Excel Project VBA, VSTO
Visual Basic for Applications Code VBA
Extensible Markup Language (XML) Ribbon VBA, VSTO
Remote Desktop Manager Export File VBA, VSTO
ScreenToGif Read Me VBA, VSTO
Snagit Read Me VBA, VSTO
Badges (Library, Custom, Star/Fork) Read Me VBA, VSTO

Glossary of Terms

Term Meaning
COM Component Object Model (COM) is a binary-interface standard for software components introduced by Microsoft in 1993. It is used to enable inter-process communication and dynamic object creation in a large range of programming languages. COM is the basis for several other Microsoft technologies and frameworks, including OLE, OLE Automation, ActiveX, COM+, DCOM, the Windows shell, DirectX, UMDF and Windows Runtime.
Ping Ping is a computer network administration software utility used to test the reachability of a host on an Internet Protocol (IP) network. It measures the round-trip time for messages sent from the originating host to a destination computer that are echoed back to the source. Ping operates by sending Internet Control Message Protocol (ICMP/ICMP6 ) Echo Request packets to the target host and waiting for an ICMP Echo Reply. The program reports errors, packet loss, and a statistical summary of the results, typically including the minimum, maximum, the mean round-trip times, and standard deviation of the mean. The command-line options of the ping utility and its output vary between the numerous implementations. Options may include the size of the payload, count of tests, limits for the number of network hops (TTL) that probes traverse, and interval between the requests. Many systems provide a companion utility ping6, for testing on Internet Protocol version 6 (IPv6) networks.
VBA Visual Basic for Applications (VBA) is an implementation of Microsoft's event-driven programming language Visual Basic 6 and uses the Visual Basic Runtime Library. However, VBA code normally can only run within a host application, rather than as a standalone program. VBA can, however, control one application from another using OLE Automation. VBA can use, but not create, ActiveX/COM DLLs, and later versions add support for class modules.
VSTO Visual Studio Tools for Office (VSTO) is a set of development tools available in the form of a Visual Studio add-in (project templates) and a runtime that allows Microsoft Office 2003 and later versions of Office applications to host the .NET Framework Common Language Runtime (CLR) to expose their functionality via .NET.
XML Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The design goals of XML emphasize simplicity, generality, and usability across the Internet. It is a textual data format with strong support via Unicode for different human languages. Although the design of XML focuses on documents, the language is widely used for the representation of arbitrary data structures such as those used in web services.

Functionality

This Excel ribbon is inserted after the “Home” tab when Excel opens. Listed below is the detailed functionality of this application and its components.

Ping Test (Group)

ping-test

Ping (Button)

  • This will create the column if it doesn't already exist and then ping the visible servers in the active table.

Server (Dropdown)

  • A list of column names from the active table.

Ping (Dropdown)

  • A list of column names from the active table. If the column doesn't exist, it will be created.

Remote Desktop Manager (Group)

remote-desktop-manager

Create File (Button)

  • Creates a Remote Desktop Manager file of the active table list of servers

Server (Dropdown)

  • A list of column names from the active table.

Description (Dropdown)

  • A list of column names from the active table.

Comment (Dropdown)

  • A list of column names from the active table.

Group (Dropdown)

  • A list of column names from the active table. This is used to group the servers in the remote desktop mananger file.

File Name (Textbox)

  • The file name to save the list of servers for Remote Desktop Manager.

Options (Group)

options

Rebuild Server List (Button)

  • Rebuilds the server list from a LDAP query stored in the settings

Refresh Dropdowns (Button)

  • Refreshes all the dropdown values from the active table column names.

Help (Group)

How To... (Button)

  • Opens the how to guide in a browser

Report Issue (Button)

  • Opens the new issue page in a browser

Add-In Settings (Button)

  • Opens the settings form/taskpane
VSTO
  • Types of VSTO Settings
    • Application Settings
      • These settings can only be changed in the project and need to be redeployed
      • They will appear disabled in the form
    • User Settings
      • These settings can be changed by the end-user
      • They will appear enabled in the form
VBA
  • VBA Settings
    • To add a new setting
      ThisWorkbook.CustomDocumentProperties.Add _
      Name:="App_ReleaseDate" _
      , LinkToContent:=False _
      , Type:=msoPropertyTypeDate _
      , Value:="31-Jul-2017 1:05pm"
    • To update a setting
      ThisWorkbook.CustomDocumentProperties.Item("App_ReleaseDate").Value = "31-Jul-2017 1:05pm"
    • To delete a setting
      ThisWorkbook.CustomDocumentProperties.Item("App_ReleaseDate").Delete

About (Group)

about

Add-in Name (Label)

  • The application name with the version

Release Date (Label)

  • The release date of the application

Copyright (Label)

  • The author’s name

server-help's People

Contributors

aduguid avatar dependabot[bot] avatar gitter-badger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

server-help's Issues

Add option to change the results of ping

https://msdn.microsoft.com/en-us/library/aa394350(v=vs.85).aspx

  string  Address;
  uint32  BufferSize = 32;
  boolean NoFragmentation = FALSE;
  uint32  PrimaryAddressResolutionStatus;
  string  ProtocolAddress = "";
  string  ProtocolAddressResolved = "";
  uint32  RecordRoute = 0;
  boolean ReplyInconsistency;
  uint32  ReplySize;
  boolean ResolveAddressNames = FALSE;
  uint32  ResponseTime;
  uint32  ResponseTimeToLive;
  string  RouteRecord[];
  string  RouteRecordResolved[];
  String  SourceRoute = "";
  uint32  SourceRouteType = 0;
  uint32  StatusCode;
  uint32  Timeout = 1000;
  uint32  TimeStampRecord[];
  string  TimeStampRecordAddress[];
  string  TimeStampRecordAddressResolved[];
  uint32  TimeStampRoute = 0;
  uint32  TimeToLive = 80;
  uint32  TypeofService = 0;

VBA

Update Ribbon_Button.RefreshServerList()

add Call to the procedure reference

Call Ribbon.ClearSheetContents(ws)

Notas

Promedio del primer parcial 10 de 15

Check WMI for server status

        public void ShowServerStatus()
        {           
            string FullComputerName = "<Name of Remote Computer>";
            ConnectionOptions options = new ConnectionOptions();
            ManagementScope scope = new ManagementScope("\\\\" + FullComputerName + "\\root\\cimv2", options);
            scope.Connect();
            ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_TerminalService");
            ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
            ManagementObjectCollection queryCollection = searcher.Get();
            foreach (ManagementObject queryObj in queryCollection)
            {
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("Win32_TerminalService instance");
                Console.WriteLine("-----------------------------------");
                Console.WriteLine("Started: {0}", queryObj["Started"]);
                Console.WriteLine("State: {0}", queryObj["State"]);
                Console.WriteLine("Status: {0}", queryObj["Status"]);
            }

        }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.