質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Q&A

解決済

2回答

9285閲覧

Visual Studio 2019 で インストーラーを作成する時の問題

gano

総合スコア39

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

0グッド

0クリップ

投稿2020/05/21 00:58

編集2020/05/21 02:47

背景

前の担当者が残したC#のアプリケーションを触っています。
プログラムの改修が終わり、インストーラーを作成しました。

問題

インストーラがインストールしたアプリケーションを起動したところ、
普段は動いている機能が動かずエラーになる箇所が複数ありました。

原因

原因を調べたら、ファイルに適切な権限が設定されておらず、
ファイルへのアクセスが拒否されている状態でした。

ファイルのアクセス権限をゆるくすれば解決します。

質問

ファイルのアクセス権限をゆるくすれば良いのですが、
前の担当者とファイル権限を変更するのは判断としておかしいとも感じています。

インストール後、Program Files内にアプリケーションが設置されるのですが、
Program Filesと 開発環境(visual studio) で
実行ユーザーが異なることでこの問題が発生していると考えています。

Widowsアプリケーションを作成する方にとってこのような問題は頻繁に起こるものなのでしょうか?
何かしら適切な対策があればと思い、質問いたしました。アドバイスいただけますと幸いです。
よろしくお願いいたします。

なお、私自身はここ数年Macしか触っておらずWindowsアプリは初心者です。
また前の担当者は不在でWindowsアプリに関して質問できる方がいない状態です。

追記

具体的な情報が一切無いというご指摘を受けまして、ごもっともですので、
gentaro 氏のアドバイスを元に状況を整理した内容を追記いたします。

インストーラの作成手順

インストーラの作成は新規で行いました。Visual studio 2019 を使い、
手順としては、主に

  1. Install Project の作成
  2. 必要なファイル、ショートカットの設定
  3. リビルド

を行っております。

以下のURLとほぼ同じ手順で行っています。
https://knkomko.hatenablog.com/entry/2019/09/15/033608

「実行ユーザーが異なることでこの問題が発生している」の根拠 / 「ファイルのアクセス制限をゆるく」の具体的な説明

不具合が出てる箇所でエラーメッセージを出力させたところ
「XX.datへのアクセスが拒否されました」というエラーを取得できました。

ファイルへの書き込みを行っている箇所だったため、権限の問題だと推測し、
取り急ぎ、ファイルの権限を644 から 666に設定したところエラーがでなくなりました。

インストーラーで展開したプログラムも開発環境のプログラムも
いずれも権限は644ですので、
開発環境はファイル所有者、インストーラーで展開後のプログラムではその他のユーザーで書き込みが行われたと判断しております。

前担当者が不在

日本語が不適切でした。前担当者は退職済みで連絡がとれない状態です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2020/05/21 01:01

具体的な情報がまったくないですが、これでは回答しようもないですね
dodox86

2020/05/21 01:25

プログラムの改修の前にインストーラーを作っていて、それで動作していたのではないのですか。そうではなく、改修後、初めてインストーラーを作って今回の問題が起きた(初めて分かった)のであれば、そもそもの作り、設計が悪い可能性が大、です。いずれにせよ具体的な情報が無いと誰も正しい回答はできませんね。
gentaro

2020/05/21 02:27

既に指摘のある通り、全般的に「困ってます」と言っているだけで、解決に結びつく情報が一切書かれていません。 問題解決をしたくて質問しているのであれば ・インストーラ作成をどのように行ったのか(利用しているインストーラ作成ツールが何か、そのツールで何を行っているのか) ・「ファイルのアクセス制限をゆるく」とは具体的に何をしたのか ・「実行ユーザーが異なることでこの問題が発生している」根拠は何か などをハッキリさせてください。 > Widowsアプリケーションを作成する方にとってこのような問題は頻繁に起こるものなのでしょうか? 聞きたい内容がこれだけなのであれば「そんなわけない」でおしまいです。 ファイルのアクセス権限の問題であれば、LinuxだろうがMacだろうが適切な権限付与ができていなければ発生するはずですし、それ自体はWindowsだからといって特別な事ではありません。 (UACで問題に直面しているならWindows固有の問題ですが) あと、 > 前の担当者とファイル権限を変更するのは判断としておかしいとも感じています。 > また前の担当者は不在でWindowsアプリに関して質問できる方がいない状態です。 という文面から、単に一時離席しているだけのように読み取れます。 それであれば、「まず前の担当者が帰ってきてからその人に質問してください」という話になります。
gano

2020/05/21 02:48

> みなさま 大変失礼いたしました。ご指摘の通り具体的なことを書いておらず申し訳ありません。 gentaro 氏のコメントを元に頭を整理しまして状況を追記させて頂きました。
guest

回答2

0

UACのせいでProgram Files以下のファイル操作がどうの
みたいな話が関係あったりしませんでしょうか.
UACで怒られる場合に

「XX.datへのアクセスが拒否されました」というエラー

が出ることになるのかどうか,わかりませんけども…

投稿2020/05/21 03:01

編集2020/05/21 03:04
fana

総合スコア11996

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gano

2020/05/21 11:17

ご回答ありがとうございます。 VISTA以降、このような変更があったのですね。。大変勉強になりました。 こちらの情報をもとに対処を考えてみます。
guest

0

ベストアンサー

.dat を Program Files 以下にインストールしているからです。%HOMEPATH%\AppData\Local 以下にアプリケーションのディレクトリを作り、そこに入れてください。

投稿2020/05/21 01:03

編集2020/05/21 11:24
Zuishin

総合スコア28669

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gentaro

2020/05/21 02:16

質問文を何度か読み返しましたが、 > ビルドしたものを開発環境に手動でインストールし、インストールされたものからパッケージを作る という手順を行っているように読み取れません。
Zuishin

2020/05/21 02:27 編集

私もどんな手順を行っているか、どんなインストーラーを使っているか、どのようにプロジェクトを組んでいるかなど何もわかりませんし、開けないファイルが成果物かどうかもわかりません。完全なる当てずっぽうです。 ただ、同じ手順でインストールされたものが権限不足で動かなくなるというのは考えにくいので、インストールする前、作成時の話ではないかと見当をつけました。根拠はそれだけです。
gano

2020/05/21 11:19

Program Filesのご指摘ありがとうございました。 AppData\Localに書き込みの必要なファイル達をいれればよかったのですね。 頭が整理できました。大変勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問