Office アドイン

Office 用アプリはソースコードが丸見え!?

サーバーサイドの処理はともかくとして、Officeドキュメントにアクセスする部分はJavaScriptで書くことになるので、基本的にはOffice用アプリのソースコードは丸見えです。
(あくまでもHTML + JavaScript構成のアプリの場合)

そのため、ユーザーにソースコードを見られたくない場合には「Microsoft Ajax Minifier」等のソースコード軽量化ツールで難読化しておくことをお薦めします(Microsoft Ajax Minifierの使い方は「Microsoft Ajax MinifierでJavaScriptを縮小化しよう」参照)。

下記は上が軽量化前のソースコード、下が軽量化後のソースコードになりますが、その差は一目瞭然です。

Office.initialize = function(reason){}
$(function(){
    $("#datepicker").datepicker({
        beforeShowDay: function(date) {
            var result;
            var dd = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + date.getDate();
            var hName = ktHolidayName(dd);
            if(hName != "") {
                result = [true, "date-holiday", hName];
            } else {
                switch (date.getDay()) {
                    case 0:
                        result = [true, "date-holiday"];
                        break;
                    case 6:
                        result = [true, "date-saturday"];
                        break;
                    default:
                        result = [true];
                        break;
                }
            }
            return result;
        },
        onSelect: function(dateText, inst) {
            Office.context.document.setSelectedDataAsync(dateText);
        }
    });
});
Office.initialize=function(){},$(function(){$("#datepicker").datepicker({beforeShowDay:function(n){var t,r=n.getFullYear()+"/"+(n.getMonth()+1)+"/"+n.getDate(),i=ktHolidayName(r);if(i!="")t=[!0,"date-holiday",i];else switch(n.getDay()){case 0:t=[!0,"date-holiday"];break;case 6:t=[!0,"date-saturday"];break;default:t=[!0]}return t},onSelect:function(n){Office.context.document.setSelectedDataAsync(n)}})})

もっとも、軽量化してコードを読みづらくしたところでコードが丸見えなのは変わりないし、難読化したことで動作しなくなる場合も有るので必ずしも難読化することが良いとは限らないのですが、そのままコードを公開するよりは多少はマシになるのではないかと思います。気休め程度にはなります。

[Office用アプリ]アプリ審査を通過するためのポイント前のページ

[Office用アプリ]プロンプトや選択範囲からバインドを追加する。次のページ

関連記事

  1. Excel

    SeleniumBasic(Selenium VBA)がMicrosoft Edgeに対応しました。…

    言わずと知れたWebブラウザーの自動制御ツール「Selenium」のV…

  2. Office アドイン

    [Office用アプリ]RSS表示アプリを作成する。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  3. Office アドイン

    [Office用アプリ]Random Data Generator

    Random Data Generatorはテスト用の個人情報データを…

  4. Office アドイン

    「マイクロソフト Office 用アプリ開発スタートアップガイド」レビュー

    ※ 下記レビューはあくまでも個人的な感想です。日本初(恐らく)…

  5. Office関連

    VBAを学ぶときの参考資料

    知人から「Excelのマクロを勉強したいんだけど、どうやって勉強したら…

  6. Office関連

    [VBA]ユーザーフォーム上のコンボボックスでオートコンプリート機能を実装する方法

    MSDNフォーラムに「ユーザーフォーム上のコンボボックスで、任意の文字…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP