無料版のMicrosoft Teamsのリモート操作でサーバーをメンテナンス

前回、紹介させて頂きました、「無料版のMicrosoft TeamsでゲストユーザとWeb会議をする方法」の応用例です。

在宅勤務や、出張自粛が励行される中でも、お客さんのサーバをメンテする必要がでることもあると思います。
また、サーバのメンテにおいては、サーバー室に出入りせずに、リモートデスクトップで行うケースも多いと思います。
今回は、Microsoft Teamsと、リモートデスクトップを活用して、リモートでサーバメンテを実施する方法についてです。

接続のイメージは以下のとおりです。


メンテ対象サーバーへの接続の流れは以下の通りです。





ポイントは、⑧の部分でウィンドウを小さくしておく点です。
これにより、被サポート側は、自分のPCで別作業を行いながら、サポートを受けることができます。
また、現段階では、接続上限時間は8時間となっていますので、長時間のメンテナンスでも活用できそうです。

コロナ騒動前は、セキュリティのしっかりしたリモートサポートツールを導入しようとすれば、
年間数十万円のライセンス料も珍しくなかったのですが、今回の方法だと無料です。

コロナ騒動での外出禁止のなかでの「事業継続」、「移動時間の節約」と重宝しております。


厳選Windowsショートカット集

 

日本語入力(Microsoft IME)のショートカット

変換操作ショートカットキー代替キー
ひらがなに変換「Ctrl + U」F6
全角カタカナに変換「Ctrl + I」F7
半角に変換「Ctrl + O」F8
全角英数に変換「Ctrl + P」F9
半角英数に変換「Ctrl + T」F10

C#でファイルの拡張プロパティを取得/編集する方法

 

  • NuGetでWindowsAPICodePack-Shellをインストール。
  • 以下のコードで取得/編集ができる。
    using Microsoft.WindowsAPICodePack.Shell;
    using Microsoft.WindowsAPICodePack.Shell.PropertySystem;

    public void FilePropertiesTest() {
        var file = ShellFile.FromFilePath(@"C:\Temp\test.jpg");
        //拡張プロパティ取得
        Console.WriteLine(file.Properties.System.Title.Value);
        Console.WriteLine(file.Properties.System.Author.Value);
        Console.WriteLine(file.Properties.System.Comment.Value);

        //拡張プロパティセット
        ShellPropertyWriter propertyWriter =  file.Properties.GetPropertyWriter();
        propertyWriter.WriteProperty(SystemProperties.System.Title, new string[] { "タイトル" });
        propertyWriter.WriteProperty(SystemProperties.System.Author, new string[] { "著者" });
        propertyWriter.WriteProperty(SystemProperties.System.Comment, new string[] { "コメント" });
        propertyWriter.Close();
    }

Outlookで送信前に宛先確認ダイアログを表示する方法

 

Outlookで送信前に宛先確認ダイアログを表示する方法

  • Alt + F11を押して、VBAエディタを表示。
  • 以下のスクリプトをThisOutlookSessionに記述してください。
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    '件名未記入の確認
    If Item.Subject = "" Then
        If MsgBox("このメッセージには件名がありません。" & vbCrLf & _
            "[OK] をクリックすると送信します。", vbOKCancel + vbExclamation + vbMsgBoxSetForeground) = vbCancel Then
            Cancel = True
            Item.GetInspector.Activate
            Exit Sub
        End If
    End If
    '送信確認ダイアログ
    If MsgBox("宛先、添付ファイル、文面を再度確認してください。" & vbCrLf & _
        "送信しますか?", vbOKCancel + vbQuestion + vbMsgBoxSetForeground) = vbCancel Then
        Cancel = True
        Item.GetInspector.Activate
        Exit Sub
    End If
End Sub

C#でEveryoneフルコントロール権限を付与

 

Everyoneフルコントロール権限を付与

public class ExchangeUtil : PublicWebApiUtil {
    /// Everyoneフルコントロール権限を付与
    /// 処理対象パス
    public static void AddFullControleRule(string filePath) {
        //EveryOneFullControle
        var rule = new FileSystemAccessRule("Everyone", FileSystemRights.FullControl, 
            InheritanceFlags.None, PropagationFlags.None, AccessControlType.Allow);

        //ファイルセキュリティオブジェクトを取得
        FileSecurity security = File.GetAccessControl(filePath);
        //権限付与
        security.AddAccessRule(rule);
        //変更したファイルセキュリティをファイルに設定
        File.SetAccessControl(filePath, security);
    }
}

厳選 Visual Studioの便利なショートカット

  エラー箇所にジャンプ 「Ctrl + Shift + F12」 ブレークポイント 設定/解除 「F9」 有効化/無効化 「Ctrl + F9」 ViEmu特有 「:ls」:バッファナンバーのリストを表示。 「:b2」:バッファ2のファイルを開く。 「:n」:次のバッファのファ...