問題タブ [registrykey]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C# を使用して、レジストリの「UserChoice」キーから「拒否」ルール (許可) を削除します。
私はファイルの関連付けに取り組んでいます。呼び出されたキーがあることを確認しUserChoice
ました:
キーを作成し、Windows によってまだ作成されていなければ、UserChoice
キーの読み取りと書き込みを行うことができました。ただし、キーがWindows によって既に作成されている場合は、管理者として実行してキーにアクセスする必要があります。私の最終的な目標は、キーを削除することです。UserChoice
UserChoice
Windows がキーに拒否ルールを設定しているため、そのUserChoice
キーを削除できないことに注意しました。そのルールを取り除くことができれば、UserChoice
鍵を削除できると思います。これが私が試したコードです:
Windows がキーを作成するとき、Type DenyUserChoice
の現在のユーザーのセキュリティ ルールが追加されます。許可:特別。このルールは継承されず、UserChoice
キーのみに適用されます。
管理者としていくつかいじって実行すると、それにアクセスできますRegistryAccessRule
。ただし、管理者として実行しても、このルールを削除できません。私の研究のどこかで、それを行うプログラム的な方法がないことを読んだことがあります。このルールは RegEdit で削除できます。UserChoice
NirSoft の File Types Manager を使用してキーを削除することもできます。したがって、これを行う何らかの方法があると思います。
概要:キーを削除できるように拒否ルールを削除する方法はありUserChoice
ますか?
registry - どのレジストリ キーを削除する必要があるかを知るにはどうすればよいですか?
私は Java デスクトップ アプリケーションを作成していますが、その機能の 1 つは古い不要で役に立たないレジストリ エントリを削除しようとしています。削除できるエントリ/キー/値を確認するにはどうすればよいですか。
レジストリを見た後
- アプリケーションをインストールしてからアンインストールしたところ、プログラムのキーが HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall に残っていることに気付きましたが、値は削除されていました。
- キーはまだそこにありましたが、プログラムはアンインストール プログラム リストになくなり、プログラムはアンインストールされました。
- その後、周りを見回したところ、その場所に値を持たない他のキーがあることがわかりました。
サブキーまたは値のないキーは古いですか? これらは安全に削除できますか?
- また、その場所にある一部のキーに InstallDate 値がないこともわかりました。アンインストール プログラムのすべてのプログラム/アップデートには、インストール日があります。
レジストリ エントリを削除するかどうかを決定する際のポリシーと注意事項
c# - C# .NET で RegistryKey クラスを使用してレジストリ値を設定できない
Visual C# 2010 を使用していますが、レジストリ キーの設定に問題があります。これは、最初は管理者として実行していなかったという事実に関係していると思いましたが、リリースをビルドしてからexeを右クリックして「管理者として実行」を選択しても無駄でした。
また、RegistryPermission クラスを使用してみましたが、違いはないようです。
コードは次のとおりです。
これにより、「管理者として実行」しても、実行するたびに例外からエラーメッセージが表示されます。これを回避する方法はありますか?私の標準ユーザー アカウントでは、regedit にアクセスして手動でこれらの値を問題なく変更できるため、奇妙に思えます。
c# - レジストリキーを追加しましたが、プログラムで見つけることができません
そこで、RegEditを使用して、ワークステーションのレジストリに次のものを追加しました。
HKLM \ Software \ Foo \ Bar
バーには「wtf」/「idk」のak/vペアがあります。regeditを閉じて再度開くことにより、これらの変更が「行われた」ことを確認しました。ねえ、彼らはまだそこにいます!うねり。
問題は、キーがnullであるということです。
いつ。。。
と呼ばれますが、Fooは多くのSubKeyNameの中には表示されません。
だから、私は明らかに愚かな何かを逃しています。具体的に何が欠けていますか?
c# - Windowsスタートアップでプログラムを実行する
誰かが私に私のプログラムを起動時に実行させる方法を説明してくれたら、私はさまよっていましたか?私のプログラムは、サーバー上で実行する必要がある小さなWPF UIを備えたC#WCFであり、サーバーが再起動するたびに、またはその他の理由でプログラムが起動することを確認する必要があります。
調べてみたところ、レジストリキーを使用する必要があるようですが、レジストリキーの使用方法に慣れていないので、使用方法を教えてください。インストーラーの作成にVS2010を使用していますが、インストール時にレジストリキーを設定したいと思います:)
PSアプリケーションをWindowsサービスにしたくないので、ユーザーのスタートアップフォルダーに配置することはできません(サーバーが再起動し、誰もログインしない場合はどうなりますか?)
c++ - enumdisplayDevices は、1 つのディスプレイ カードに対して複数のインスタンスを返します
こんにちは、次のコード フラグメントを使用して、Windows 7 システムのディスプレイ アダプターの数を取得しています。モニターに接続されている NVidia GT 120 と、GPU プロセッサとして機能している NVidia Quadro 4000 があります。
どちらのディスプレイ アダプターにも複数の出力ポートがあるため、次のコードを使用すると、実際には GT120 用に 2 つ、Quadro 4000 用に 2 つの Display_Device インスタンスを取得します。重複インスタンスを削除する基準として DisplayDevice 構造のレジストリ キーです)。
誰かがこの問題に対するより良い、または公式の解決策を持っていましたか?
wix - Windows Server 2008 R2 で Wix ベースのインストール パッケージに 32 ビット カスタム BizTalk アダプターを登録できない
Windows Server 2008 R2 (Service Pack 1) 上の Wix v3.5 で作成された対応する 32 ビット .MSI パッケージから 32 ビットのカスタム BizTalk アダプターをインストールすると、非常に奇妙ですが 100% 再現可能な問題が見つかりました。
基本的に、インストーラーは正常に動作し、適切なファイルを Program Files (x86) フォルダーにコピーし、対応するレジストリ エントリを HKCU\Wow6432Node\CLSID の下に書き込み、アダプターを登録します。
BizTalk Server 管理コンソールで、Platform Settings\Adaptersフォルダーの下にアダプターを追加しようとすると、[アダプターのプロパティ] ダイアログ ボックスが表示されます。そこで、アダプターリストでカスタム アダプターを見つけてわかりやすい名前を付けることができますが、ダイアログ ボックスを検証しようとすると、次のエラーが表示されます。
トランスポート構成を読み取れません。アダプタ管理コンポーネントがローカル マシンにインストールされているかどうかを確認します。レジストリからトランスポート構成を読み取っているときに、"CLSID{7823EF8C-0D1E-4BC4-B110-2C16A0B8A63F}\BizTalk" キーの値を読み取れませんでした。システムは、指定されたファイルを見つけることができません。
それにもかかわらず、対応するレジストリ キーがそこにあることを確認できます。Windows レジストリ エディター (regedit.exe)、reg.exe コマンド ライン ユーティリティ、x86 PowerShell コマンド プロンプト、C# プログラムなどで確認できます。
さて、ここが奇妙な部分です。
レジストリ キーを一時的な .reg ファイルにエクスポートし、キーを削除してから、一時ファイルの内容を Windows エクスプローラーでダブルクリックして再インポートすると、アダプターを BizTalk Server 管理コンソールに正常に追加できるようになりました。 .
reg.exe コマンド ライン ユーティリティ (reg.exe /export; reg.exe /delete; reg.exe /import) を使用して同じ手順を実行しましたが、同じ結果が得られました。
私は何を間違っているのでしょうか?
私の WiX プロジェクト ファイルは、同じプロジェクト ファイルから32 ビットと 64 ビットの両方のプラットフォームをターゲットにできるように作成されています (ただし、2 つの連続したコンパイルがあります)。説明のために、スクリプトの適切な部分を次に示します。
私はこれについて完全に私の心を失っています!
c++ - RegQueryValueEx() 関数がレジストリ キーから読み取ろうとしているときに ERROR_FILE_NOT_FOUND を返すのはなぜですか?
システム: Windows 7 32bit
言語: C++
HKEY_LOCAL_MACHINE\\HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0
register 、 key Driver
(type )にアクセスしようとしましたがREG_SZ
、問題ありません。
からの読み取りも同様でHKEY_LOCAL_MACHINE\\HARDWARE\\DEVICEMAP\\SERIALCOMM
、すべてのキー (タイプREG_SZ
) にスラッシュが付きます (例: ) \Device\Serial0
。
そのようなキーを読み取る間、次のコード例で常に 2 (そのようなファイルはありません) を返します。
名前にスラッシュを含むキー値を読み取る適切な方法は何ですか?
上記はCody Grayによって適切に回答されています。
別の問題の下。
テキスト文字列の代わりに変数を使用すると、同じ問題が発生します。
Ivは、シングルスラッシュとダブルスラッシュを使用した両方のアプローチを検討しました:
「\Device..」、「/Device」、「\Device」などですべてのバリアントを試しました。
windows - LsaStorePrivateDataを使用して保存されたデータが、LsaRetrievePrivateDataを使用してリモートマシンからだれからでも簡単に読み取られるようにするにはどうすればよいですか?
LsaStorePrivateDataを使用してコンピューターAにデータを保存します。問題は、同じローカルネットワーク上の他のPCからLsaRetrievePrivateDataapifuncを使用して簡単に読み取れることです。どうすればこれを防ぐことができますか?「リモートレジストリ」サービスを停止しても効果はありません。LsaStorePrivateDataで保存されたデータへのリモートアクセスを防ぐための他のトリックはありますか?
よろしく、Artur
c# - レジストリキーの削除の問題
レジストリキーを削除しようとしていますが、これまでのところ、正常と思われるコードを試しました。
しかし、私はエラーを受け取ります:
私は自分の問題をグーグルで検索し、stackoverflowを検索していくつかの解決策を適用しましたが、すべてが私が使用しているのと同じ方法を使用しているようです。
編集:申し訳ありませんが、registryKeyパスでLocalMachineの代わりにCurrentUserを使用しました。これが問題でした。