ちゃっぴの監禁部屋

ガチガチに締めすぎて動きがとれなくなる。。。

ホーム 連絡をする 同期する ( RSS 2.0 ) Login
投稿数  405  : 記事  5  : コメント  1551  : トラックバック  134

ニュース

記事カテゴリ

書庫

日記カテゴリ

Communities

Personal Information

すべての user で扱う file の配置場所
Visual Studio Setup Project で %PROGRAMDATA% へ file を配置する方法 の続き

無事 "%PROGRAMDATA%" に resources を配置することは出来ましたが、すべての user で変更可能であるという要件はこれだけでは満たせません。

ということで、installer で対象 resources の DACL を変更する必要があるのですが、その一つの方法をば。

Windows Installer database には LockPermissions Table というものがあり、こちらに追加することで任意の resources の DACL を変更することができます。

ただ、Visual Studio 2008 の Setup Project には LockPermissions Table を編集する UI を持っていませんので、MSI の作成後 ORCA や scripts 等で Windows Installer database を編集する必要があります。今回は ORCA を利用した方法を説明します。

ORCA は Visual Studio 2008 とともに install されないため、手動で install する必要があります。私の環境では Microsoft SDK v6.0A の installed folder 配下の "bin" folder に "Orca.Msi" が存在しました。また、Windows Installer 最新 version 4.5 の SDK にも最新の "Orca.Msi" が含まれているので、そちらを利用してもいいでしょう。どちらにしろ、main の application install 後 "Orca.Msi" を手動で実行してやる必要があるので注意が必要です。

"Orca.Msi" の install が完了したら、ORCA を起動し Visual Studio Setup Project で作成した MSI file を開きます。

今回 sample として用意した MSI file は "%PROGRAMDATA%" を "COMMONAPPDATA" として定義した folder 配下に "Test" という sub folder を作成するというものです。これから、この "Test" folder の DACL を変更します。

OrcaDirectoryTable

上記画像は ORCA で spamle の MSI file の Directory Table を表示したものです。3 行目の directory "_009F8BF9D3EC4C278D0F060093FC80E8" が "Test" folder です。今回、問答無用で folder を作成するように設定しましたので、同様の entry が CreateFolder Table にも存在します。

image

それでは、LockPermissions Table を覗いてみましょう。

OrcaLockPermissions01

何もないですね。列が 5 つ存在します。それぞれの役割は下記。

Column Description
LockObject 対象 object の primary key を指定
Table 対象 objcet が存在する table name を指定
File, Registry, CreateFolder から選択
Domain Domain name を指定 (省略可)
User User name を指定
Permission 許可する access mask (32 bit 符号付き整数) を 10 進表記で指定

さて、それでは実際に試してみましょう。

今回対象 folder に対し下記のような DACL を付与します。

Domain User Access Rights
NT Authority System フル コントロール
BUILTIN Administrators フル コントロール
BUILTIN Users 変更

この場合、LockPermissions Table には下記 3 行を追加します。

LockObject Table Domain User Permission
_009F8BF9D3EC4C278D0F060093FC80E8 CreateFolder NT Authority System 268435456
_009F8BF9D3EC4C278D0F060093FC80E8 CreateFolder BUILTIN Administrators 268435456
_009F8BF9D3EC4C278D0F060093FC80E8 CreateFolder BUILTIN Users -536805376

[Permission] の値がわけわからない? それはごもっとも。

Access mask とは bit flag の集合で下記 3 種類に分類できます。

Generic Access Rights, Standard Access Rights, Specific Access Rights

Generic Access RightsStandard Access Rights はすべての object で有効ですが、Specific Access Rights はその object 専用の権限が定義されています。今回の場合対象は folder ですので File Security and Access Rights で確認できます。

268435456 は "フルコントロール" = GENERIC_ALL (0x10000000) を 10 進表記したものになります。-536805376 はちょいとめんどくさいですが、下記の計算結果で ”変更" を示しています。

GENERIC_EXECUTE (0x20000000) | GENERIC_WRITE (0x40000000) | GENERIC_READ (0x80000000) | DELETE (0x00010000)

とりあえず対象は file のみですが、よく利用する access rights の対応表を作成してみました。

Friendly Name Access Rights Hex Decimal
フル コントロール GENERIC_ALL

0x10000000

268435456

変更
(読み取りと実行
フォルダの内容一覧表示
書き込み 含む)
GENERIC_READ
| GENERIC_WRITE
| GENERIC_EXECUTE
| DELETE

0xE0010000

-536805376

読み取りと実行
(フォルダの内容一覧表示 含む)
GENERIC_READ
| GENERIC_EXECUTE

0xA0000000

-1610612736

フォルダの内容一覧表示 SYNCHRONIZE
| READ_CONTROL
| FILE_READ_ATTRIBUTES
| FILE_TRAVERSE
| FILE_READ_EA
| FILE_LIST_DIRECTORY

0x1200A9

1179817

読み取り FILE_READ

0x1

1

書き込み SYNCHRONIZE
| FILE_WRITE_ATTRIBUTES
| FILE_WRITE_EA
| FILE_APPEND_DATA
| FILE_WRITE_DATA

0x100116

1048854

長くなりましたが、LockPermissions Table 編集後 MSI file を保存すれば DACL を変更する機能を付与した installer の完成です。

<参考>

投稿日時 : 2009年2月6日 19:20

コメント

# WiXならこんなに簡単&hellip; 2009/02/07 17:16 とっちゃん's Blog
WiXならこんなに簡単&hellip;

# re: Windows Installer で配置する resources の DACL を変更する方法 2009/02/07 17:22 とっちゃん
WiXで書いてみたよw


# ORCA で変更した Windows Installer Database への変更を自動化する方法 2009/02/08 0:15 ちゃっぴの監禁部屋
ORCA で変更した Windows Installer Database への変更を自動化する方法

# re: Visual Studio の unit test framework は x64 で動作できない 2015/10/10 10:33 lily-ya
@ting1010
http://www.rosherunblack.net<br />http://www.mkfactoryoutlet.net<br />http://www.nikefree30flyknit.net<br />http://www.katespade2015.org<br />http://www.michaelkorsoutlet.review<br />http://www.stefanjanoskimax.com<br />http://www.roshesshoes.com<br />http://www.coachbags-onsale.net<br />http://www.katespadesurprisesale.com<br />http://www.nike-airmaxzero.net<br />http://www.michaelkorsoutletstore.review<br />http://www.roshes.net<br />http://www.louisvuittonstore2015.com<br />http://www.nike-airmaxthea.org<br />http://www.airmax90-ice.com<br />http://www.usalouisvuittonoutlet-stores.com<br />http://www.coachbagssaleuk.com<br />http://www.michaelkorsbags.date<br />http://www.coachhandbags2015.org<br />http://www.cheapnikeairmaxltd.com<br />http://www.michaelkorsoutlet.win<br />http://www.nikefree40flyknit.net<br />http://www.cheaplvbags-top.net<br />http://www.mk-outletonline.org<br />http://www.michaelkorsbags.win<br />http://www.coachbags2015.net<br />http://www.23isbackrelease.net<br />http://www.jameshardenshoes.org<br />http://www.nikeairmaxshoes-store.com<br />http://www.2015coachbags.net<br />http://www.coach80off.com<br />http://www.23isbackreleasedate.org<br />http://www.airmax90-hyperfuse.net<br />http://www.louisvuittonoutlet--2014.com<br />http://www.michaelkors-outletstore.xyz<br />http://www.nikeairmaxzero.net<br />http://www.mkmichaelkorsbags.net<br />http://www.nikeflyknitlunar1.com<br />http://www.coachfactoryoutletonline2015.com<br />http://www.curryoneshoes.net<br />http://www.louisvuitton-lv.us.com<br />http://www.nikeoutlet-hot.com<br />http://www.louisvuitton-christmas.com<br />http://www.nikeflyknitlunar.net<br />http://www.michaelkorsoutletmk.cc<br />http://www.cheaplouisvuittonbagso.com<br />http://www.katespade-usa.org<br />http://www.2015michaelkorsoutletstores.cc<br />http://www.cheap-airjordanshoesforsale.com<br />http://www.michaelkorsmkbags.net<br />http://www.michaelkorsoutletonline.review<br />http://www.coachfactory2015.com<br />http://www.michaelkors-mk.org<br />http://www.katespadebagsus.com<br />http://www.katespadecrossbody.com<br />http://www.michaelkors-outlet.xyz<br />http://www.mkmichaelkorsuk.com<br />http://www.nikeflyknitracer.org<br />http://www.nikeairmax90classic.com<br />http://www.michaelkorsoutletonline2015.org<br />http://www.louisvuitton-christmas.com<br />http://www.coachbags-onsale.net<br />http://www.mkmichaelkorsbags.net<br />http://www.louisvuittonoutlet--2014.com<br />http://www.katespadecrossbody.com<br />http://www.roshes.net<br />http://www.michaelkorsbags.win<br />http://www.michaelkorsbags.win<br />http://www.cheap-airjordanshoesforsale.com<br />http://www.roshesshoes.com<br />http://www.stefanjanoskimax.com<br />http://www.roshesshoes.com<br />http://www.louisvuitton-christmas.com<br />http://www.rosherunblack.net<br />http://www.mk-outletonline.org<br />http://www.curryoneshoes.net<br />http://www.airmax90-hyperfuse.net<br />http://www.coachbags-onsale.net<br />http://www.nike-airmaxzero.net<br />http://www.katespade-usa.org<br />http://www.usalouisvuittonoutlet-stores.com<br />http://www.23isbackrelease.net<br />http://www.louisvuitton-christmas.com<br />http://www.23isbackrelease.net<br />http://www.michaelkorsoutletonline.review<br />http://www.nikeflyknitlunar.net<br />http://www.louisvuittonstore2015.com<br />http://www.mkfactoryoutlet.net<br />http://www.nike-airmaxzero.net<br />http://www.2015michaelkorsoutletstores.cc<br />http://www.airmax90-hyperfuse.net<br />http://www.cheapnikeairmaxltd.com<br />http://www.katespade-usa.org<br />http://www.michaelkorsmkbags.net<br />http://www.coachbags-onsale.net<br />http://www.coachfactoryoutletonline2015.com<br />http://www.jameshardenshoes.org<br />http://www.nikeoutlet-hot.com<br />http://www.cheaplvbags-top.net<br />http://www.michaelkors-outlet.xyz<br />http://www.nike-airmaxzero.net<br />http://www.nikeairmaxzero.net<br />http://www.katespade-usa.org<br />http://www.jameshardenshoes.org<br />http://www.2015coachbags.net<br />http://www.mk-outletonline.org<br />http://www.louisvuittonoutlet--2014.com<br />http://www.coachhandbags2015.org<br />http://www.michaelkorsbags.date<br />http://www.nike-airmaxzero.net<br />http://www.cheap-airjordanshoesforsale.com<br />http://www.michaelkorsoutletonline2015.org<br />http://www.katespadebagsus.com<br />http://www.michaelkors-outlet.xyz<br />http://www.cheap-airjordanshoesforsale.com<br />http://www.michaelkorsoutlet.review<br />http://www.michaelkorsoutletonline2015.org<br />http://www.usalouisvuittonoutlet-stores.com<br />http://www.katespadecrossbody.com<br />http://www.nikeflyknitlunar1.com<br />http://www.nikeairmax90classic.com<br />http://www.mk-outletonline.org<br />http://www.2015coachbags.net<br />http://www.louisvuittonoutlet--2014.com<br />http://www.louisvuittonstore2015.com<br />http://www.michaelkorsoutlet.win<br />http://www.michaelkorsbags.win<br />http://www.coachhandbags2015.org<br />http://www.mkmichaelkorsbags.net<br />http://www.michaelkors-outlet.xyz<br />http://www.michaelkors-outletstore.xyz<br />http://www.katespade-usa.org<br />http://www.airmax90-ice.com<br />http://www.coachbags2015.net<br />http://www.nike-airmaxthea.org<br />http://www.nikefree30flyknit.net<br />http://www.michaelkorsoutletstore.review<br />http://www.katespadesurprisesale.com<br />http://www.23isbackreleasedate.org<br />http://www.michaelkorsmkbags.net<br />http://www.stefanjanoskimax.com<br />http://www.jameshardenshoes.org<br />http://www.katespadecrossbody.com<br />http://www.louisvuitton-lv.us.com<br />http://www.rosherunblack.net<br />http://www.usalouisvuittonoutlet-stores.com<br />http://www.roshes.net<br />http://www.katespade-usa.org<br />http://www.nikeflyknitlunar1.com<br />http://www.2015coachbags.net<br />

# re: [Windows Mobile]USBキーボードを動かす程度の能力 2017/11/18 16:00 me adc
http://www.michaelkorshandbags.com.au/ Michael Kors Handbags Outlet Sale
http://www.cheaprayban.us/ cheap ray ban


# aqinga17.11.27 2017/11/27 19:12 aqinga
http://www.kruz-graphix.com/ Kruz-graphix
http://www.pandoraaustralia.net/ pandora australia
http://www.katespadeoutletonline.net/ kate spade outlet online
http://www.pandora-bracelets.us pandora bracelets charms
http://www.nesu.fr/ Air Jordan Femme
http://katespade.throngo.com.au/ kate spade australia
http://www.balenciagaoutlet.us/ balenciaga outlet
http://www.prada-outlet.co prada outlet online
aqinga17.11.27

# tes 2017/12/09 18:43 Galang
http://goo.gl/TLJKhQ fabrikasi stainless steel jakarta http://bit.ly/2bgLGS7 jasa konstruksi baja wf
http://goo.gl/TLJKhQ fabrikasi kapal http://bit.ly/2bgLGS7 jasa konstruksi jembatan
http://goo.gl/TLJKhQ konstruksi jembatan baja sederhana http://bit.ly/2bgLGS7 jasa konstruksi bangunan
http://goo.gl/TLJKhQ konstruksi baja yogyakarta http://bit.ly/2bgLGS7 jasa konstruksi
http://goo.gl/TLJKhQ konstruksi baja bergelombang http://bit.ly/2bgLGS7 jasa konstruksi besi baja
http://goo.gl/TLJKhQ konstruksi baja atap http://bit.ly/2bgLGS7 jasa konstruksi gudang
http://goo.gl/TLJKhQ konstruksi baja atau beton http://bit.ly/2bgLGS7 jasa konstruksi gedung
http://goo.gl/TLJKhQ konstruksi atap baja konvensional http://bit.ly/2bgLGS7 jasa konstruksi baja wf
http://goo.gl/TLJKhQ ahli konstruksi baja http://bit.ly/2bgLGS7 jasa konstruksi jembatan
http://goo.gl/TLJKhQ konstruksi baja bogor http://bit.ly/2bgLGS7 jasa konstruksi bangunan
http://goo.gl/TLJKhQ konstruksi baja bangunan tinggi http://bit.ly/2bgLGS7 jasa konstruksi
http://goo.gl/TLJKhQ konstruksi baja bangunan pabrik http://bit.ly/2bgLGS7 jasa konstruksi besi baja
http://goo.gl/TLJKhQ konstruksi baja bekasi http://bit.ly/2bgLGS7 jasa konstruksi gudang
http://goo.gl/TLJKhQ konstruksi baja berat surabaya http://bit.ly/2bgLGS7 jasa konstruksi gedung
http://goo.gl/TLJKhQ konstruksi balok baja http://bit.ly/2bgLGS7 jasa konstruksi baja wf
http://goo.gl/TLJKhQ jual konstruksi baja bekas http://bit.ly/2bgLGS7 jasa konstruksi jembatan
http://goo.gl/TLJKhQ konstruksi baja pada bangunan http://bit.ly/2bgLGS7 jasa konstruksi bangunan
http://goo.gl/TLJKhQ konstruksi baja di bandung http://bit.ly/2bgLGS7 jasa konstruksi


# jianbin0301 2018/03/01 14:36 165464@qq.com
http://www.coachfactoryoutlet-clearance.us.com
http://www.swarovskicrystalco.org.uk
http://www.montblancpenssale.us.com
http://www.fredperrypolo-shirts.com
http://www.rayban--sunglasses.co.uk
http://www.toryburchoutletofficials.us.com
http://www.christianlouboutins.org.uk
http://www.mulberrybagsuk.co.uk
http://www.raybansunglassesonsales.us.com
http://www.poloralphlaurenoutlet-online.us.com
http://www.uggoutlet.ca
http://www.reebokoutletstores.us.com
http://www.airhuaracheuk.org.uk
http://www.outlettruereligion.in.net
http://www.coachfactoryoutletstore.com.co
http://www.mulberryhandbagss.org.uk
http://www.ralphlauren-polo.us.org
http://www.raybansunglasses2.us.com
http://www.nfljerseysfactorystore.us.com
http://www.raybansunglassesonlines.us.com
http://www.cheapsoccerjersey.net
http://www.longchamphandbagssale.co.uk
http://www.canadagooseoutletclearance.us.com
http://www.michaelkorsoutletfriday.us.com
http://www.oakleysunglasseswear.us.com
http://www.nikeoutlets.us.org
http://www.poloralphlaurendiscount.us.com
http://www.canadagooseoutletcom.us.com
http://www.coachoutletclearance.us.org
http://www.canadagooseoutletcoats.us.com
http://www.jordanshoesstore.us.com
http://www.christianlouboutin-shoes.me.uk
http://www.ralph-laurenpoloshirts.us.com
http://www.uggsoutletshop.us.com
http://www.coachoutletclearanceonline.us.com
http://www.michaelkorsoutletme.us.com
http://www.raybanssunglassesoutlets.us.com
http://www.oakleysunglassesformens.us.com
http://www.coach-factoryoutlets.us.org
http://www.suprashoes.us.com
http://www.oakleysunglasseswholesaleus.us.com
http://www.fitflopsshoes.in.net
http://www.katespadeoutletsales.us.com
http://www.mcmoutletstore.us.org
http://www.michaelkorsoutletcoupons.us.com
http://www.oakleysunglassessites.us.com
http://www.jordanshoesfactory.us.com
http://www.nikerosheone.us
http://www.coachoutletcoupons.us.com
http://www.canadagooseoutletsalestore.us.com
http://www.uggsoutletco.us.com
http://www.yeezyboost350sale.us.com
http://www.clevelandcavaliers.us.com
http://www.poloralphlaurenofficial.us.com
http://www.raybansunglassesforwomens.us.com
http://www.coachoutletstore.com.co
http://www.adidasnmdad.us.com
http://www.katespadeoutletofficial.us.org
http://www.uggoutletstoresofficial.us.com
http://www.raybanssunglassessale.us.com
http://www.canadagoosejacketsusa.us.com
http://www.pandora-charmssaleclearance.org.uk
http://www.michaelkors.eu.com
http://www.raybansunglassesoutlets.com.co
http://www.swarovski-outlets.us.comhttp://www.kobe9elites.us.com
http://www.nbajerseysstore.us.com
http://www.michaelkors.de.com
http://www.ferragamoshoes.org.uk
http://www.lacostepoloshirts.us.com
http://www.airforce1.us.com
http://www.canadagoose-jackets.org.uk
http://www.canadagoosejackets.me.uk
http://www.michaelkorsoutletclearance-online.us.com
http://www.fitflopssale.in.net
http://www.canadagoosejacketscg.ca
http://www.jordanshoesshop.us.com
http://www.pandoracharmss.us.com
http://www.pandoraoutlet-store.us.com
http://www.cheapjerseyswholesale.org
http://www.newbalanceshoes.in.net

Post Feedback

タイトル
名前
Url:
コメント