問題タブ [network-share]
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# - 異なるWindowsPC上の複数のプロセスが、共有ディレクトリに保存されているファイルを同時に使用するにはどうすればよいですか?
問題:
同じLAN内の異なるPC(OS:Windows XP、Windows 7)で実行されている同じC#アプリケーションの複数のインスタンスがあります。それらの間でいくつかの構成データを共有する必要があります。各プロセスには、データへの読み取り/書き込みアクセス権が必要です。私の雇用主は、これらの共有データを、これらのPCの1つの共有ディレクトリにあるファイルに保存することを主張しています。
可能な解決策:
- 排他的ファイルオープン:データはTXTファイルに保存されます(バイナリファイルとの間のシリアル化もオプションです)。各プロセスは、ファイルを開こうとするときにを使用
File.Open
します。FileShare.None
取得するIOException
ということは、ファイルがすでに使用されていることを意味するため、プロセスは待機して、後で再試行する必要があります。 - SQL Server CE組み込みDB:データはSDFファイルに保存されます。エンジンは最大256の同時接続(v3.5 SP2)を処理できますが、これで十分です。
- SQLite組み込みDB:データはSQLiteDBファイルに保存されます。ドキュメントにはSQLiteは機能すると記載されていますが、ネットワーク共有で使用すると信頼性が低下する可能性があります。
- 他の?
これを行うための好ましい方法は何ですか?
vbscript - Windows 2003 - ドライブをネットワーク共有に永続的にマップする方法
ドライブ マッピング (以下のスクリプト) を介してネットワーク共有にアクセスし、処理のためにファイルをコピーする VB スクリプトがあります。ご覧のとおり、スクリプトは、ドライブを再度マップする前に、ドライブが既にマップされているかどうかを確認します。Windows のスケジュールされたタスクでスクリプトをスケジュールし、毎分実行するようにしました。スケジュールされたタスクは、ドメイン ユーザーとして実行されるように構成されています。
私の問題は、マップされているドライブが持続しないことです。スクリプトを実行するたびに、ドライブを認証して再度マップする必要があります。スクリプトが終了すると、ドライブ マッピングが失われるようです。
スケジュールされたタスクと同じドメイン ユーザー アカウントを使用してサーバーにログインし、ドライブを手動でマップし (「NET USE」を使用)、ログイン セッションを実行し続けると、スクリプトは期待どおりにドライブのマッピングをスキップすることがわかりました。
ドライブのマッピングを維持するためだけにライブログインセッションを維持するという考えは好きではありません。ログインユーザーのセッションに関係なく、ネットワーク共有をローカルドライブとして永続的に保持する方法はありますか?
毎回ドライブをマップしたくない理由は、頻繁な Windows 認証 (毎分) を避けたいからです。「MapNetworkDrive」vbs ステートメントを実行するたびに、Windows 認証 LSASS.exe が少量のメモリをリークすることがわかりました。もちろん、このメモリ リークの問題は別のスレッドの議論になる可能性があります。今のところ、永続的にドライブを (ネットワーク共有に) マッピングできれば、とてもうれしいです。
[ドライブ マッピング VB スクリプト、fyi]
c# - ActiveDirectory および Impersonation のリモート サーバー上の C# ファイル システム
このテーマは新しいものではありません。しかし、専門家の助けが必要です。ローカル システム (ドメインのコンピューターではない) で実行される Windows フォーム アプリケーションを作成しています。アプリケーションは、Active Directory ドメインの共有フォルダーにフォルダーといくつかのファイルを作成します。私は偽装について読み、次のようなことを試みました: LogonUser を使用した偽装
次に、次のコードを書きました。
しかし、bool の結果は常に = falseです。私は何を間違っていますか?
c# - プロセス:別のユーザーとしてネットワーク共有でexeファイルを開始します
ドメインのネットワークドライブにあるexeファイルを実行する必要があります。ドライブは「M:\」としてPCに正常に接続されていますが、ネットワーク共有にあるプロセスを開始する場合、Process.Start(string、string ...)にはファイルへのURLパスが必要です。
これは私のコードです:
面白いのはそれです:
正常に動作します。アイデアが足りなくなったのですが、誰か助けてくれませんか?
.net - ファイルをネットワーク共有にコピーしたユーザーの資格情報を取得することは可能ですか?
オブジェクトによって監視されているネットワーク共有がありFileSystemWatcher
ます...
Windowsドメイン上の複数のユーザーがこの共有にファイルをコピーするためのアクセス権を持っている場合、FileSystemWatcher
オブジェクトを使用して、またはその他の方法で、ファイルをこのネットワーク共有にコピーした人の資格情報を取得することは可能ですか?
c# - ネットワーク共有から実行されている .net アプリケーションのパフォーマンスの問題
Windows フォーム (.net 4) アプリケーションに問題があります。私たちのクライアントの 1 つは、ネットワーク共有から実行したいと考えています (私たちのアプリは、20 ~ 300 人のユーザーが同時に使用できます)。この行を app.config に追加することで、機能させることができました
プログラムの起動には少し時間がかかり、しばらくするとユーザーが作業できるようになります。残念ながら、アプリケーションがしばらく使用されておらず、再度使用したい場合、応答が非常に遅いことに注意してください (アプリを「起動」するのに約 1 ~ 3 分かかります)。少なくとも、それは私たちのコンサルタントから聞いたことです。
おそらく来週の月曜日に自分で見ることになると思いますが、まず最初に知りたいのは次のとおりです。
- この動作は正常ですか? もしそうなら、それはなぜですか?
- この問題を調査するには、どのツールを使用すればよいですか?
c# - C#を使用して利用可能なすべてのネットワーク共有でファイルを検索する方法はありますか?
共有マシンの名前に関する情報を実際に検索せずに、使用可能なすべてのネットワーク共有でファイルを検索する方法はありますか?
これが私がやろうとしていることです。サーバーの共有フォルダーに、その共有のUNC情報を指定する構成ファイルがあります。そのLAN上の別のデスクトップから、そのファイルを検索し、そのファイルの内容に基づいてドライブをそのフォルダーにマップするプログラムを実行したいと思います。
私には、これらのドライブを共有フォルダーにマップする必要がある技術サポート担当者がいます。彼らが電話をしている人々は、コンピューターに非常に不慣れである可能性があります。私は彼らの仕事をより簡単にする方法を見つけようとしています。
提供された助けをありがとう。
windows - Windows XP ネットワークはパスワードを共有し、Windows が記憶しないようにします
これはシナリオです:
さまざまなユーザー (営業担当者、マネージャーなど) がいるオフィスには約 15 台のコンピューターがあり、すべてのファイルを保存して、メインのコンピューター (Windows XP、他のすべてのコンピューターも XP) からアクセスする必要がありました。
そのため、すべてのフォルダーをメイン コンピューターに配置し、それらにアクセスできるように別のユーザーを作成しました。これまでのところ、さまざまなユーザーがフォルダーにアクセスし、表示権限を持たない可能性のある他のフォルダーを制限するようにしました。
現在の問題は、一部の従業員がマネージャ コンピュータを使用する場合があり、Windows は通常共有フォルダのパスワードを記憶しているため、機密情報にアクセスできる可能性があることです。
私たちがしなければならないことは、誰かがネットワーク上のフォルダーにアクセスする必要があるたびに、ユーザー名とパスワードを要求する必要があることです。
これを回避する方法についてのアイデアはありますか?
c# - すべての権限を持つ C# または cmd でフォルダーを共有する
読み取りと書き込みのアクセス許可を持つフォルダーを共有する必要があります。
Windows 7 では、次のコマンドを実行して共有できます。
net share temp=A:\MySharedFolder /GRANT:Everyone,FULL
Windows XP で同じコードを実行しても機能しません。ただし、実行できます:
ネット共有一時=C:\MySharedFolder
ただし、フォルダーは完全なアクセス許可で共有されません。
編集
JotaBe がリンクを投稿し、そのリンクから次のように動作するように見えるプログラムを作成しました。
c# - LAN 経由で Visual c# Windows アプリケーションを実行する
これは私の最初の Windows アプリケーションです。私は自分のプロジェクトを公開しました。いくつか質問があります。
これで、Setup.exe ファイルと ClickOnce アプリケーション配置マニフェスト ファイルの 2 つのファイルができました。ただし、どちらも私のアプリケーションをマシンにインストールします。クライアントの場所にインストールする際に頼るべき正しいファイルは何ですか? これら2つの違いは何ですか?
アプリケーションを各クライアント マシンにインストールする必要がありますか? または、アプリケーションをサーバーにインストールし、クライアント マシンから (LAN 経由で) ショートカットにアクセスしようとすると機能しますか? それはうまくいくでしょうか?LAN 経由で実行している場合、クライアント マシンに .NET Framework をインストールする必要がありますか?
どんな入力でも大歓迎です。