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

    日経ソフトウエア 2014年 10月号 「VBAでExcelを業務アプリ化」

    購読している雑誌、日経ソフトウエア 2014年 10月号に「イベントプ…

  2. Office関連

    代理人アクセスによって予定を追加するOutlookマクロ

    先日久々にmougの質問に回答しました。マクロを使って、Exc…

  3. Office関連

    マクロでリボンを最小化する。

    mougの回答用に書いたコードです。忘れないうちにメモ。・…

  4. Office関連

    「DQNネーム辞書」を更新しました。

    前のブログで公開していたIME 2010用の「DQNネーム辞書」を更新…

  5. Office関連

    ルビ(ふりがな)を一括設定するWordマクロ

    2016/10/28 追記:改良版のマクロを書きました。…

  6. Office関連

    [Word]隠し文字をクイックアクセスツールバーから設定する。

    Wordで、部分的に印刷したくない文字列がある場合には「隠し文字」がよ…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP