0

私と友人がテストできるようにゲームを公開しており、エラー ログとして使用するコード内のテキスト ファイルを作成し始めましたが、いくつかの問題が発生しており、インターネット上で何も見つかりません。私を助けるために。

ユーザーがインストール ファイルを取得し、カスタムの場所にインストールし、ショートカットを介して実行できるようにしたいので、ユーザーがインストールした場所にゲームやエラー ログなどを保存するためのファイルを作成できます。

何が起こるかというと、clickonce アプリケーションを作成しますが、setup.exe を使用した後、ショートカットを使用できません。ファイルを作成しようとしていて、管理者として実行できないため、「プログラムが応答を停止しました」と表示されます。管理者をsetup.exeにしか設定できません。ゲームのショートカットやクリックオンスアプリケーションのオプションはありません. また、ユーザーにインストール ディレクトリを選択させる方法がわかりません。

Google と msdn ライブラリを検索しましたが、何も見つかりません。clickonce デプロイメントを使用しない場合は、別のインストール パッケージが必要ですが、何も見つかりません。また、app.manifest を次のように変更してみました。

 <requestedExecutionLevel level="asInvoker" uiAccess="false" />

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

しかし、それはクリックワンスアプリケーションであり、セキュリティでオフにすると、公開しようとすると再びオンになるため、公開することはできません。誰かが私のオプションを教えてください.他のすべてのゲームと同じように、通常のゲームのインストールが必要ですが、何も見つかりません。

4

1 に答える 1

1

これは質問に対する直接的な回答ではありませんが、実際に必要なものかもしれません。

ClickOnce アプリケーション展開フォルダーに、セキュリティ制限なし (管理者権限は不要) でファイルを作成して使用できるはずです。

ApplicationDeployment.CurrentDeployment.DataDirectory

アプリケーションを更新すると、このフォルダー内のすべてのコンテンツが書き換えられるため、ログ ファイルなどを再作成する必要があることに注意してください。

編集

実際、このmsdn の記事には別の記述があります。このフォルダーの読み取りと書き込みを行うには、依然としてセキュリティ アクセス許可が必要です。

ただし、分離ストレージはまさにこの目的のために使用されるとも述べています。つまり、昇格されていない ClickOnce アプリケーションなど、アプリケーション固有のデータを部分的に信頼して読み書きします。

隔離されたストレージ

分離ストレージは、単純な API を使用してファイルを作成およびアクセスするための API を提供します。保存されたファイルの実際の場所は、開発者とユーザーの両方から隠されています。

分離ストレージは、.NET Framework のすべてのバージョンで機能します。分離ストレージは、追加のアクセス許可を付与する必要なく、部分的に信頼されたアプリケーションでも機能します。アプリケーションを部分信頼で実行する必要があるが、アプリケーション固有のデータを維持する必要がある場合は、分離ストレージを使用する必要があります。

編集 2

それでも、分離ストレージを使用する前に、アプリケーション デプロイ ディレクトリを試してみてください。

于 2012-04-24T04:09:16.413 に答える