Program FilesにEveryoneフルコンのフォルダを作成されるほうが
よっぽど気持ち悪いんだが
なんでvista発売から10ヶ月も経ってからこんなの胸張って書いてるんだ?
しかも何も解決してねぇしw
MSがUACをデフォルトでONにしてるのはこの仕組みの普及の為だから、ユーザーが原理を解って切るのならともかく、
プログラムで勝手にやるのはさすがにな。
ユーザーへの認知が遅れて困るのは俺たちプログラマだと思うんだがな。
些細な理由でさんざん「管理者権限じゃないと正常動作しません」アプリを量産してきた
漏れたちのせいで UAC なんてものが導入されちゃったわけなのにな・・・
でも setuid できない Windows にも責任はあると思うんだ。
些細なことのためにサービスなんか使いたくないし。
正しい方法を嫌う人間っているんだよ。
ハッカーワナビーとかね。
Windows Installerを理解できないアフォは全員市ね。
>>34 >問題ではないように思えるが、そうでもない。
何が問題なのかよく分からない。
適切なmanifestを書けばそれでおkだよね?どうしても管理者権限で起動させたくないんだろうか。
多分権限昇格の確認メッセージボックスを出したくないんだと思う。
ネトゲだと起動ランチャーがアップデートも兼ねててアップデートを自動で掛けるし。
だから言いたいことは解る。でも同情はしない。
やねさんの言うことにケチつけるとは・・・愚かな奴
奴の間違いが2chで指摘されて謝罪したこともあるんだがな
でも今回は認めないだろうな
何が迷惑ってこんな影響力の大きい奴がこんなこと書くと本人はともかく
周りの本当の馬鹿がまねること
やねはハッカーワナビーの親玉みたいな存在だからしょうがない。
正しい方法を病的に嫌う奴がやねのところに集まる。
こんな対策が蔓延したら次のWindowsはもっと厳しくなるだろうに、勘弁してくれ。
影響力なんてあんの?
46 :
デフォルトの名無しさん:2007/11/03(土) 00:41:01
MSはインストーラ監視機能で、Program Files配下の権限を
勝手に変更できないようにするべきだったな。設計ミスだ。
>>47 そんな事したらProgram Files以下を(デフォルト)インストールディレクトリとしない
ソフトメーカーが増加するだけだし。
Program Files以外にインストールできないようにすればいい。
そんなこと可能?
インストーラで弾くのは簡単ではなかろうか
逆にVista側が、Program Files以下に無いファイルは実行できないようにしてしまえば誰も他所にインストールしないんじゃね?
実行できないってのはあんまりだから、警告をいちいち出す、くらいで妥協してくれまいか
ソレ現状とあんまり変わんなくね?
確かにドライブルート直下に好き勝手インスコできるのはどうかと思う
制限ユーザーインストールができなくなるじゃん
本末転倒
C:\Users\ユーザ名\Program Files
とゆーのを作ればOKだなそれは
Rich Saved Gamesを試しに実装してるが、エロゲーだと
サムネイルがエロかったりするけど、ユーザーは大丈夫なのかな。
>>57 ああなるほどリーフノードの名前だけチェックすればいいか
>>58 そこで「保護者による制限」ですよ
60 :
デフォルトの名無しさん:2007/11/06(火) 09:37:36
自作アプリからOfficeアプリケーション配下のプラグインと簡単なテキストデータのやりとりを行いたいんですが
Vistaだとどこを使うのがいいのでしょうか?
以前はレジストリとOSドライブのルートに一時ファイルを置いて対応していましたが
今のままだとちょっと不味そうなので仕様変更しようと思ってます
OS関係なくルートはないだろ
%TEMP%
63 :
デフォルトの名無しさん:2007/12/10(月) 21:35:53
Vistaでアプリ動かそうとしたらUACとかいうのが働いて非常に邪魔くさい
ただセキュリティの観念から外すわけにはいかずに
色々調べてみたんだが
どうもマニフェストファイルというのを作成すれば警告が出てこなくなる。
ということで作ってみたのだがまだ出てくる。
そこでもうちょい調べてみたら
ProgramFilesやWindowsフォルダ下にあるものを動かそうとするとUACが働くらしい・・・
でも・・・ProgramFiles\adobe\AcrobatReader.exeとかは何にも警告出ない・・・
意味がわからないよママン…
Vistaは実行ファイルのパスとタイムスタンプでUACを働かすかどうかキャッシュ
してるからマニフェストを作っただけでは反映されない
実行ファイルにtouchするのが簡単
>>64 ほう、タイムスタンプも見てたのか。
ちなみに、一度互換モードで実行するように設定してから解除するという手もある。
66 :
デフォルトの名無しさん:2007/12/12(水) 16:02:10
管理者権限で動くプログラムから、管理者権限を付与しないで別のアプリケーションを実行させることって出来ますか?
普通は管理者権限は継承されるみたいですが……。
具体的に言いますと、VisualStudio が管理者権限で動いてるんですが
そこから実行されるアプリケーションを通常権限で動かしたいんです。
>>66 VisualStudioから動かさなければいい。
68 :
66:2007/12/12(水) 16:20:28
うん。今は暫定的にその方法でやっています。
……通常権限で実行するオプションみたいなのって無いのかなぁ……と思ってまして。
70 :
い:2007/12/14(金) 12:55:37
>>66 根本的な解決としては、2008への乗換えだな。
72 :
デフォルトの名無しさん:2008/01/02(水) 15:34:33
最近、職場で「出戻り寄生派遣」という言葉が囁かれています。
派遣契約を切られたにもかかわらず「次の派遣先でも切られてしまって生活できません」
などと 言って泣き落としで現場マネージャーにすら一切話がないまま再派遣契約した人のことです。
今月初め、半年前に切った派遣が出社してきてマネージャーも含めみんなびっくりしました。
影でコソコソ偉い人に泣きついて再契約したそうです。同じ部署の人には黙って・・・
そんなことまでして自宅の近くの派遣先にこだわって人間として恥ずかしくないのですか。
仕事に必要な技術がなく勉強する気もないのを逆手にとって
「私のような人の視点で仕事をすることも大切だと思います」と挨拶された時には
みんな凍りついていました。派遣でスキルアップとか言ってる癖に以前と同じように
技術を勉強する気はなく「それは私の仕事ではありません」の一点張り、
派遣で収入アップとか言ってる癖に時給は前回と同じで喜んで再契約。
結局、なんの努力もせずに派遣で安直に収入を得たいだけじゃないですか。
身分不相応な商品のローンを払うために派遣だと当然足りない収入は親にも寄生して、
いつ切られるんじゃないかとビクビクしながら人事権のある人間とだけ仲良くし、
契約終了を通知されれば泣き落とし。悲惨な人生ですね。
氏んだほうがいいんじゃないですか。
Vista x64でMSYS起動するとrvxtがまるでブラクラのように
ウィンドウ開きまくりんぐで俺涙目
なんかいろいろ見ていろいろやったが駄目だ。
cmdがbash並に動いてくれたら別にいいんだが…
cmdの不満点にもよるが つPowerShell
WindowsFlip で、デスクトップのサムネイルはどうやって取得しているんですか?
あと 3D にする方法と…… DWM の Thumbnail だけでは出来なさそうな雰囲気なんですが、どうやって実現しているでしょうか。
Direct3Dでしょ
しゅ
C#でWM_KEYDOWNについて低レベルフックしてるんですが、
XPだと問題なく動くのに、
Vistaのフルスクリーンのアプリをアクティブにすると動かないらしいんです。
(窓だと動く)
原因としてどんな事が考えられますか?
窓時は動くのでUAC系ではなさそうだし。
> 動かないらしい
なぜ伝聞・・・
80 :
78:2008/04/13(日) 02:17:22
自分はVista持ってなくて、XP用のアプリを作ったのですが
Vistaで使いたいという人が居るのです。
大体の機能は動くようなのですが・・・。
訂正:フルスクリーンじゃなく、画面いっぱいに広げた窓モードでした。
動かないのはゲーム系のアプリのようです。
nProtectのせいかもしれませんが、同じゲームでもXPなら動くんです。
Vista用nProだけブロックするのでしょうか。
>nPro
なんかもーその名前を聞いただけであらゆる検証を投げたくなるな
nProと低レベルフックって組み合わせ自体が地雷じゃね…?
83 :
78:2008/04/14(月) 02:07:58
解決しました。
UIPIが原因で、UAC切ってもらったら動作しました。
簡単な事でしたorz
> UAC切ってもらったら
OH!モーレツ!
ほ
し
の
カ
ツ
江
91 :
デフォルトの名無しさん:2008/10/04(土) 08:23:25
tes
92 :
デフォルトの名無しさん:2009/01/14(水) 19:07:15
Vi$taって、共有メモリ系(ま、Winの場合メモリマップとファイルになるわけだが)に制限ありますか?
今まで通り。
強いて言えば、サービスとアプリケーションの通信などではセッション0分離に注意というくらい。
dクス
95 :
デフォルトの名無しさん:2009/01/22(木) 13:35:21
MessageBoxがMB_TOPMISTを無視する。
>95
無視どころか(コンパイラが)拒否しないか?
石橋を叩いて渡るITエンジニアはWindows 7を信用するのか
http://pc.watch.impress.co.jp/docs/column/config/20090515_168616.html 気になる互換性だが、セッションで入手したおもしろい話がある。XPで動くアプリケーションで、Vistaでは動かないのに
7では動くというものがあることの背景を説明するものなのだが、アプリケーションがOSのバージョンチェックをする際に、
メジャーバージョンとマイナーバージョンをチェックし、Vistaが欠落するケースがあるというのだ。
つまり、XPの5.1を期待して「メジャーバージョンが5より大きく、かつ、マイナーバージョンが1より大きい」ことをチェックすると、
Vistaの6.0はチェックをはずれるが、7の6.1は合致するというわけだ。そういうアプリケーションが少なからずあるらしい。
だから、Windows 7のバージョンは、あえて6.1なのだという。
話の本質は、アプリケーションが自分が動ける環境なのかどうかを調べるのに、OSのバージョン番号を頼りにするのは
もうやめようということだった。そんなことをしていたら、Windows 8やWindows 9が出てきたときに、
また、同じような現象に悩まされる。本来は普通に動くはずのアプリケーションが、
バージョンチェックのみにひっかかって使えないという馬鹿らしい不便が生じるのだ。
だからこそ、機能の有無を調べる多彩なAPIが用意されているのだ。
それを使わないのは怠慢といってもいいし、それでは確実に自分の首を絞める。
>>97 多彩すぎて訳が分からないので、単純に実行時OSに対して、2000モードで実行するとすると
エラーログに、2000には対応していないAPIがあるなら、それを
うわ、間違えて途中で送ってしまった・・・ OTZ
続き
API名:XP以降で利用できます
みたいな形式でログに出力してくれればいいのにな。
max(マイナー要求,マイナーシステム)*メジャー要求+マイナー要求>max(マイナー要求,マイナーシステム)*メジャーシステム+マイナーシステム && abort();
怠っ・・・
MSも面倒と思ったらしい。もう少しVerifyVersionInfoが2000で追加された。
もう少し簡単な、が抜けたすまん。
>>97のバージョンチェック書いた奴がアホなだけじゃないのか、それ……。
時・分で表した時刻の比較もまともにできなさそうな。
でもXPの時点でProgram Filesにデータファイル書いてたやつも
本来は十分アフォなはずなんだよな。
メジャーマイナーだけで済めばいいがSP適用やレジストリエントリ、システムライブラリ有無でバージョン要求の緩和が絡んできたりしたら
チェック関数がさらに長ウンコになるからねぇ
ほんしつてきじゃねぇええ!って事で (MjrReq <= MjrSys && MnrReq <= MnrSys) || (die(),false);
106 :
デフォルトの名無しさん:2009/05/27(水) 23:10:14
165 名前:Socket774[] 投稿日:2009/05/27(水) 19:15:19 ID:oVr8C6jB
ノ
(゚∀゚)
.( (7 .(`・ω・)
. ヘ○ヘ ! _、_ n < ヽ .| ̄ ̄ ̄
|∧ ( ,_ノ`)( E) | ̄ ̄ ̄ .Win7
/ | ̄ ̄ ̄| |VisSP2
. | ̄ ̄ ̄| |XPSP2| ('A`) .|
( ^ω^) | .2000. | | |.ノ ノ)_.|
| ̄ ̄ ̄. | |  ̄ ̄ ̄
| 98SE |.. ウッウー | Vista
. (´ー`)| | ( ゚д゚) |
(・∀・)| ̄ ̄ ̄ | | ̄ ̄ ̄
 ̄ ̄ ̄ 98 | |XP無印
95 | |
| |
| |
| |
| orz |
 ̄ ̄ ̄
108 :
デフォルトの名無しさん:2010/01/28(木) 11:39:19
Windows 7で、
アプリのインストール時に、
「Run this program as an administrator」
をチェックしたいのですが、
可能でしょうか?
使っているインストーラー作成ツールは、inno setup です。
ファイル名をsetup.exeにすれ
110 :
デフォルトの名無しさん:2010/02/02(火) 15:26:59
setup.exeインストーラーをvistaで使うと、
「認識できない発行元」(英語だと、”Publisher: Unknown Publisher”)がどうたらというのが出るのですが、
これはexeに何か埋め込めば消えるのでしょうか?
証明書を埋めればいいけど、その証明書はルートCAサーバの証明書が
インストール済みでないと警告は出るよ。
警告出てもUnknownじゃなきゃいいというなら、オレオレ証明書作ればいい
112 :
110:2010/02/02(火) 16:04:58
>ルートCAサーバの証明書がインストール済みでないと
インストロールするだけで良いのですか?kwsk
>警告出てもUnknownじゃなきゃいいというなら、オレオレ証明書作ればいい
そんなこともできるのですかkwsk
orz
つまり、、、SSLのサイトとかと同じ。
ベリサイン等から、コード署名証明書を金払って買ってくるのが確実
(事前にルート証明書はインストール済みだから)
やりたい環境がわからんので、、、オレオレも含めてコード署名とかコードサイニングでググるといいかも
会社とかでActiveDirectory使ってるなら、ポリシーで自作証明書を信頼するように設定できるけどね。
115 :
110:2010/02/02(火) 16:24:46
d
難しいのでやっぱ、
>ベリサイン等から、コード署名証明書を金払って買ってくるのが確実
でやってみようと思います。
>(事前にルート証明書はインストール済みだから)
つまり、ベリサインがルート証明書を持ってくれてる分けですね。
後分からないのは、
・setup.exeに証明書を埋め込む方法
・setup.exeが変わる毎回購入ですか?
だけになりました。
載ってるサイトきぼんw
馬の骨証明書なら年1000円程度で取れるような時代だから
素直に発行してもらったらどう?
118 :
110:2010/02/02(火) 16:33:13
了解です。
ただ、自分一度も証明書発行して貰ったこと無いし、exeに埋め込んだことないOTL
ベリサインでメール用の公開鍵を買ってOutlookにインスコしたことはあるんですが、
あれと全く同じじゃないですよね。
あ、ベリサインのサイトに書いてあるのかな、Windowsインストーラーに埋め込む方法まで?_?
119 :
110:2010/02/02(火) 16:36:47
>>117 d。手順確認しました。メモメモ。
例題ではCab1.CABに署名となってますが、setup.exeに署名すれば良いのですね。
>ベリサインは高いし個人では難しいので、thawte等の個人向けで安い(無料も?)とこ使うといいかも
無料もあるんですか。でも、会社用途なので結局どっかから買ってしまいそう。
法人格なら価格どうこうより定番の verisign
薦めるよ経験的に
121 :
110:2010/02/02(火) 17:07:29
あっそーですか。
自分、定番のそこしか名前知りませんので選択肢ありません。
定番って殿様商売だなぁw
122 :
デフォルトの名無しさん:2010/02/02(火) 17:08:35
リダイレクト問題のverisignなんて信用していいのか
ttp://fareast-it.txt-nifty.com/blog/2007/03/vista_e29a.html さらにVistaではProgram Files内のプログラムが自分の階層下に
iniファイル等でセーブデータを作る事が原則的にできなくなってしまいました。
iniファイルを利用するのは、複数ユーザーの事を考えるとあまり行儀のよい事ではないのは確かでしょうが、
ユーザー名のフォルダを用意すれば問題は解決するわけです。
なによりDocuments and SettingsやらUsersやレジストリ内のHKCU\Software\会社名\アプリ名\などといった
意味不明な場所にアプリケーションの設定情報が散らばり、
実質アプリ単位のバックアップが一般ユーザーには殆ど不可能という状態に比べれば、
特に他アプリとの連携を考えないならiniファイルを使った方がよほどマシと思えるのは私だけではないはずです。
HDDのサイズが肥大化し全バックアップという手段が現実的でなく、
アプリにインストール情報をバックアップする機能がない現状を考えると、
レジストリやユーザーフォルダを利用させるMSのスタイルはアタマがちょっとおかしいとすら感じられます。
そしてそこまでユーザーの利便性を損ねてまで得たセキュリティが
Program Files内のデータはとりあえず上書きされませんというだけのことです。
そんなことをする奴が過去にそれほどいたとは思えないし、仮にウイルスがデータ破壊をはじめたとしても、
Program Files内のプログラム本体など再インストールすれば済む問題で、
本当に重要な取り返しのつかないデータはそんな場所にありはしない!
どうしてもやりたいならならば、複数ユーザーで利用するカーネルに近いプログラムのみ
強い保護のある中にインストールさせ、一般ユーザーが使うゲームや趣味のアプリなどは
既存のルールのまま動作させるのが筋でしょう。Windowsフォルダ内にSystem Program等といったフォルダを
新規に作るなりすれば良いだけの話です。なぜ既存のルールを破壊してまで
実用性のないセキュリティ機能をユーザーに押しつけようとするのか。
全くユーザーが見えていない証拠です。
>アプリ単位のバックアップが一般ユーザーには殆ど不可能
冷静に考えれば、一派ユーザが Program Files 以下の exe + ini を
バックアップしたところで、exe をリストアできないのだから無意味だろうに。
でもってProgram Files以外に配置すりゃ、全部解決するのだし。
むしろ AppData\Local\VirtualStore 以下に各個人のデータが
集中しているのだから、一般ユーザが自分のデータをバックアップする上では
むしろ便利になっているだろうに。
>既存のルールを破壊してまで
これも「exe直下にiniを保存する」なんてルールはMSは定めてない罠。
ini 操作用APIは、iniをWindowsフォルダに置く仕様になっとるだろうに。
iniは3.xのころからの仕様
ini系のAPIはWindows95の頃から、使うなって注意書きがあるよ。
全部レジストリにってのがMSの方針
>>128 それは結構揺らいでいる。
各OS別のガイドラインをずっと見てみると揺らぎがよく分かる。
ガイドラインを遵守しようとしているプログラマの身にもなれ、このやろう。
その後出たヘジタンによるドトネト方針ではレジストリ無視する方向
アプリ開発者が寄ってたかって何にでも使いまくるから
じゃなくて、レジストリのファイルに対する優位が見られない、みたいな意見だった希ガス。
Microsoft Windows XP のユーザーの簡易切り替え : ビジネス アプリケーション構築のためのデザイン ガイド
http://msdn.microsoft.com/ja-jp/library/cc422011.aspx >大量のファイル ベースのデータは、 [Application Data] フォルダに格納する必要があります。
>たとえば、Internet Explorer の一時インターネット キャッシュは、
>ユーザー プロファイル内部に格納されますが、レジストリには格納されません。
>
>インストール時に、アプリケーションが HKCU と HKLM にまたがって
>合計 128KB 以上のデータを格納してはいけません。
>HK クラスのルートは除外されていることに注意してください。
>>125 超遅レスだけど、何か話がかみ合ってないね。
>>124の言うことには一理はあるでしょ。
端的に言えばMSルールに従うとポータブルにできない(exeの入ってるフォルダを
コピーするだけでは設定はコピーされない)ってことだから。
まあ、それならexeのディレクトリに書き込む権限がある場合はexeのディレクトリに
設定を保存するようにすればいいんだろうけど。
インストールしたフォルダに private フォルダ(別の名前でもいいが)とかを作成して、
その下だけは自由に読み書きできるような権限を与えるから好きに使え、がシンプルでいいんだけど、
OSメーカー的には、同じフォルダにインストールされたらどうするんだとか、
システム系のフォルダにインストールされたらどうするんだとか、いろいろ考えることがあるんだろうな。
副ストリームが当たり前に使えりゃ良いんだがバックアップ先とかポータブルでUSBメモリとか考えるとな。
アプリケーションの仮想化がフリーソフトでできれば便利そうなんだけどね。
ただ、下手すると違法コピーに利用されそうだが。
>134
>端的に言えばMSルールに従うとポータブルにできない(exeの入ってるフォルダを
>コピーするだけでは設定はコピーされない)ってことだから。
Program Filesフォルダにexe置く時点でポータブルじゃないだろ。
そもそもexeと設定ファイルを1箇所にまとめたい場合は、Google Chromeみたいに
exeもApplication Dataに置けと言ってるらしいが。
MSはアホだと思う
ガイドラインには従わないのが正解
Application Dataに置いたりしたらせっかくのUACが台無しじゃん。
googleみたいに監視ソフト常駐させるとか、本末転倒もいいとこだ。
>Application Dataに置いたりしたらせっかくのUACが台無しじゃん。
ADにexeを置いたらUACが動かないって意味???
>googleみたいに監視ソフト常駐
kwsk
EXEの場所に書き込みできないようにしてるのに
じゃあ書き込みできる場所にEXEを置こう、ってことだからなw
あ、その場所違いのExeが変なExeに書きかえられる危険が発生する、とw
なるほど。
c:\Users\hoge\AppData の下に
Local
LocalLow
Roaming
って3つディレクトリあるんだけど
どこにデータフォルダ作るのがいいの?
通常はLocalでいいよ
Roamingは別のPCでログインしても使えるようにするためにあるから
ネットワーク越しにコピーしても問題ないような小さいものならここでもいい
LocalLowはLocalに書き込めないアプリのためにある
146 :
デフォルトの名無しさん:2010/08/11(水) 11:30:16
>LocalLowはLocalに書き込めないアプリのためにある
どういうときにLocalに書き込めない状況になりますか
>>138 また話がかみ合ってないな。
exeがProgram Filesの下にあるかどうかは関係がない。
設定値の置き場所の話をしているのに
>>146 IEとかブラウザに多いが、low integrityなアプリ。
まあこの辺はそのアプリの上で別の人が作ったアプリが動くことがあるから
あえて自分でそうしてるんだと思うが。
これがVistaクオリティ
>144
実際のパスはGetSpecialFolderで取得しましょう。
>147
超遅レスだけど、iniその他がexeと同階層に置けないのは、Program Files等の一部のフォルダだけですよ。
>124はこれまでのルールを無視するなと言っているけど、そもそもiniをexeと同じフォルダに置くと言う事自体
MSのガイドラインを逸脱しています。
また、ガイドラインを逸脱するアプリは、Program Files以外のフォルダを作ってそこに置けば良いだけ。
(ポータブルなアプリであれば、元々Program Files以外に置く事を前提としているはず。)
なおexeと同じフォルダにiniを作るアプリで、Program Filesにしか置けないアプリも存在しますが、
そんなカスアプリはさっさと捨てた方が良いかと。
基本的にはプログラム=Program Files、設定値はApplication Dataだな
アプリ単位でなく、ユーザ単位…というか、Usersごとバックアップ取れば済むようにすべき
っつーか
他のユーザーがログインして設定変えたらどうすんだろうなw
そういやini用APIって、スレッドセーフなんですかね。
もっともあの仕様では、ファイルが破壊されなかったとしても、
中身がモザイクになったりするだろうけど。
>>154 自分がシングルユーザー環境だから他のユーザーも同じだと決め付けてますww
Rubyバカにしてる子ってさ
変数に$ついてる言語触ってるって事だよね
いちいちSHIFT+4キーおして $ 打ちまくってる感触はどう?
∨∨∨∨∨∨∨∨∨∨
((((( IEとかブラウザに多いが、low integrityなアプリ。 )))))(キリッッキリッ!きリキリッッッ!!!!
ゴミ
Linuxでsetuidとか使うのもゴミなんか?
160 :
デフォルトの名無しさん:
あげ