プログラムを以前にC#で実行した回数を、ファイルを保持せずに集計する方法を教えてください。カウントをチェックするために、C#にApplicationクラスまたは何かがありますか? 私はそれについて何も分かっていないので、詳しいexplantionを与えてください。これはWindowsフォームアプリケーションではないWindowsコンソールアプリケーションです。プログラムが起動された回数をカウントする
答えて
あなたはRegistry
のエントリを作成することができます。もう1つの方法はApplication Settings
です。
しかし、私はApplication Settings
を好んでいます。なぜなら、これはあまりタスクが少ないからです。 Windowsのの
See HERE: Creating an Application Settings.
Tutorial From Youtube
最近のバージョンは自動的にHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist
下のレジストリにこの情報を維持します。
データはROT13で難読化されていますが、簡単に解読できます。 free utility(ソースコード付き)が利用可能であり、あなたの出発点として役立ちます。
プログラムが起動するたびに(データベースに接続されていると仮定して)、データベースまたはWebサービスにメッセージを送信できます。
標準的なストレージデバイスではないため、テクニカルにはファイルではありません。
(レジストリエントリがあるレベルでファイルのどこかに保持されているという事実を無視すると)カウントを保持するレジストリエントリを作成できます。
あなたは、カウントを記録しているどこかのファイルを持つことができます。なぜあなたは最初にこれに反対しているのか分かりません....
+1あなたが実際に "ファイルを保持せずに集計する"というOPの要件を満たすソリューションを実際に提供しているからです。 –
Winformsアプリケーションを実行している場合、アプリケーション設定を簡単に使用できます。あなたのソリューション名 - >プロパティ - >設定タブを右クリックします。 More info and tutorial here.
次に、プログラムが起動するたびにこの設定を増やして保存します。
参考:私の知識のWindowsではCount the number of times the Program has been launched
があなたのために、この情報を保持しません。あなたはどこかの値を集計する必要があります(ファイル、データベース、レジストリ設定)。
Properties.Settings.Default.FirstUserSetting = "abc";
そして、あなたは通常、メインフォームのClosingイベントハンドラに次の操作を行います。
良い方法はとしてApplication Settings次のとおりです。
Create setting in app.config、その後、としてそれを使用しています。設定メソッドを保存するための次のステートメント。
Properties.Settings.Default.Save();
レジストリを使用して実装:
static string AppRegyPath = "Software\\Cheeso\\ApplicationName";
static string rvn_Runs = "Runs";
private Microsoft.Win32.RegistryKey _appCuKey;
public Microsoft.Win32.RegistryKey AppCuKey
{
get
{
if (_appCuKey == null)
{
_appCuKey = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(AppRegyPath, true);
if (_appCuKey == null)
_appCuKey = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(AppRegyPath);
}
return _appCuKey;
}
set { _appCuKey = null; }
}
public int UpdateRunCount()
{
int x = (Int32)AppCuKey.GetValue(rvn_Runs, 0);
x++;
AppCuKey.SetValue(rvn_Runs, x);
return x;
}
それはWinFormsのアプリなら、あなたはUPDATECOUNTを実行するために、フォームのOnClosingイベントをフックすることができます。
次にチュートリアルをチェックしてRead, write and delete from registry with C#
- 1. カウント回数プログラムが実行された回数
- 2. プログラム中にボタンがクリックされた回数をカウントする
- 3. サービスが複数回起動されたときに何が起こるか
- 4. Java:値が入力された回数をカウントする
- 5. メソッドがJavaで呼び出された回数をカウントする
- 6. ボタンが押された回数をカウントする
- 7. ui-router onEnterフックが複数回起動されました
- 8. MySqlが失敗した回数がカウントされます
- 9. JavaIntro.txtファイルのどこに文字 "a"が表示された回数をカウントするプログラムを作成します。
- 10. 文字列が表示される回数をカウントする(Python3)
- 11. フレーズが列に表示される回数をカウントする
- 12. Firebaseの.on()メソッドが複数回起動される
- 13. プログラムを起動するとプログラムがクラッシュする.Windows起動時の起動()
- 14. ブートストラップモーダルメソッドが複数回起動する
- 15. asp.netアプリケーションが複数回起動する
- 16. $ POSTメソッドが複数回起動されています
- 17. メンバーごとに日付が変更された回数のカウント
- 18. ダイアログが何回トリガーされたかをカウントするWATSON会話
- 19. ポストグルで列が特定の値に変更された回数をカウントする
- 20. Linq:サブリストが別のリストに表示された回数をカウントする
- 21. Sqlite: 'スルー'テーブルで行が参照された回数をカウントするクエリ
- 22. スケジュールされたexececutorserviceを複数回起動および停止する方法
- 23. pydev別のプログラムによって起動されたPythonプログラム
- 24. Profile_OnMigrateAnonymousイベントを複数回起動する
- 25. KnockoutJSカスタムバインディングを複数回起動する
- 26. Firebase onDisconnect()を複数回起動する
- 27. Firebase Analyticsを複数回起動する
- 28. プログラムが起動されたときのstdoutとstderrのログ
- 29. プログラムが実行されず、再起動するだけです
- 30. .mafファイルで突然変異が起こる回数をカウントする
どのようなアプリですか? winforms? wpf? – Habib
私はあなたが何らかの形のディスクストレージにそれを保存せずにカウントを保存することができるとは思わない。 – Habib