4

構成ファイルを読み取るコードがいくつかありますが、TextPadでファイルを開くと、アプリケーションとは異なる値が表示されます。メモ帳で確認しました。メモ帳は私のアプリケーションに同意します、TextPadは何か他のものを示しています。

これはVistax64Businessにあります。

これを引き起こしている可能性のあるアイデアはありますか?詳細を調べましたが、Context Menu->Properties->Previous Versions「以前のバージョンはありません」と表示されます。

複製する手順は次のとおりです(確実に実行することはできません)。

  1. プログラムファイルに.NETアプリをインストールしました。
  2. そのアプリは構成ファイルを読み取りますが、フォールオーバーしています。
  3. その設定ファイルをTextpadで手動で編集します。
  4. 変更は有効になりません。
  5. メモ帳で設定ファイルを開くと、何か違うことがわかります。
  6. メモ帳で変更を加えて保存してみてください。次のエラーメッセージが表示されます。

メモ帳

C:\ Program Files(x86)\ Daniel Schaffer \ WorkingOn for FogBugz \FogBugz>WorkingOn.exe.configファイルを作成できません。

パスとファイル名が正しいことを確認してください。

XMLであり、Superuser.comによってエンコードされているため、ここにコンテンツを配置することはできませんが、スクリーンキャストへのリンクは次のとおりです: http ://screencast.com/t/zhERl7mocp4 。

4

5 に答える 5

3

アプリをインストールしたときに、管理者権限がない場合のように聞こえます。管理者権限のないアプリをインストールすると、ビスタセキュリティモデルのために、アプリが非常に奇妙に動作することがあります。去年と同じような問題がありました。正確ではありませんでしたが、それがビスタのセキュリティモデルであることがわかるまでは、奇妙な動作でした。それは私が知っていることから、それをアプリケーション/ユーザーのセキュリティコンテキストに昇格させます。それは私がそれについて読んでいたときに私の脳が凍ったので、それは純粋な泥であり、私が見ることができるものからは事実上役に立たなかったからです。

[管理者として実行]でTextpad(優れたアプリ)を開いてから、構成を編集してみてください。何が起こるか見てください。それが同じままである場合、それは私的な問題です。それでも問題が解決しない場合は、アプリをアンインストールしてから、管理者としてインストールしてください。これにより、アプリに書き込み管理者の権限が与えられます。次に、構成を編集するとき。それが機能するかどうかを確認します。

これを見てください。ここにある手法を使用して、管理者として実行するようにアプリを昇格させることができます。アプリケーションを昇格させる方法。。再インストールする前に、これらすべてを試してください。

それでも問題が解決しない場合は、サーバーの障害に質問を投稿してください。また、適切なMSDNフォーラムに投稿してください。

お役に立てば幸いです。ボブ。

于 2009-10-06T10:35:08.410 に答える
2

これは面白い。私の推測では、UAC 仮想化(別名データ リダイレクト) と呼ばれる Vista の機能がここで機能していると思われます。基本的に、レガシーアプリケーションをリダイレクト%USERPROFILE%\AppData\VirtualStore\Program Files\...して、プログラムのディレクトリにファイルを書き込めるようにします。

アプリケーションとメモ帳の両方が読み取り専用で使用しているときに、テキストパッドが読み取り/書き込みモードでファイルを開こうとしている可能性がありますか? Process Monitorを起動して正確な魔法を確認できます。お知らせください;-)

于 2009-10-10T08:52:07.470 に答える
1

アプリケーション名からその空白文字を取り除いてみてください。私の推測は、標準的なパスの構築に関連するものです

于 2009-10-10T18:39:09.897 に答える
0

ファイルを別のパスにコピーして、再度開いてみてください。結果が変わるかどうかを確認します。

于 2009-10-11T14:07:51.807 に答える
0

できることの 1 つは、これらの各メソッドが最終的にどのファイルを開くかを観察することです。これをする、

  • sysinternal スイートからProcess Monitorを起動します。
  • ファイル操作のみを探す (ツールバーの右側にあるレジストリ操作の選択を解除する)
  • 独自のプロセスのみを選択します (気にしないすべてのプロセスを除外するかinclude、フィルター リスト内の独自のプロセス名のみを除外します)。

ファイル名の検索機能を使用することもできます。これがより高速なルートである可能性があります。

Process Monitor は、驚くほど多くの問題を見つけるのに役立ちました。

于 2009-10-11T20:43:47.360 に答える