プログラミング

プロおよび熱狂的プログラマーのためのQ&A

7
Linux端末から1行でメールを送信する[終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?Stack Overflowのトピックとなるように質問を更新します。 3年前休業。 この質問を改善する mailLinuxにはコマンドラインからメールを送信するコマンドがあることは知っています。端末から1行で簡単なメールを送信するにはどうすればよいですか? 例えば: mail user@gmail.com [subject] [body] また、ユーザーに確認やプロンプトなしでメールを送信しましたか? その理由は、javaプログラムで特定のイベントが発生したときに簡単なメッセージを電子メールで自分に送信したいからです。私の考えは、プログラムからRuntime.getRuntime()を送信するために…などを使用することです。mail commandjava 私が使用しcron、過去に似た何かをするが、現在の実装では使用しませんcron、私が代わりにこれを試してみる必要があるので、。
148 linux  email 

26
長い単語が私のdivを壊すのを防ぐ方法は?
TABLEレイアウトからDIVレイアウトに切り替えて以来、1つの共通の問題が残っています。 問題:DIVに動的テキストを入力すると、必然的にdiv列の端を超えて非常に長い単語が存在し、サイトが専門外のように見えます。 RETRO-WHINING:これは、テーブルレイアウトでは発生しませんでした。表のセルは常に最も長い単語の幅にうまく拡張されます。 重大度:この問題は、ほとんどの主要なサイト、特に「速度制限」などの一般的な単語でさえ非常に長いドイツのサイト(「Geschwindigkeitsbegrenzung」)でも見られます。 誰かがこれに対して実行可能な解決策を持っていますか?
148 css  layout  html 


15
WatiNまたはSelenium?[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。私たちは回答が事実、参考文献、専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 プレゼンテーションの自動テストのコーディングをすぐに開始します。誰もがWatiNとSeleniumを推奨しているようです。ASP.NET Webフォームの自動テストでどちらを好みますか?これらの製品のどれがあなたのためによりよく働きますか? 補足として、WatiN 2.0が2008年3月からCTPに参加していることに気付きましたが、それは懸念事項ですか?

5
「デコレータ」とは何ですか?
AngularJSのデコレーターの正確なところを知りたいです。AngularJSのドキュメントの言い訳や、YouTubeビデオでの(興味深いものの)簡単な言及を除いて、デコレーターのためのオンラインの情報はあまりありません。 Angularの連中が言うように、デコレータは次のとおりです。 サービスの装飾。デコレータがサービスインスタンスの作成をインターセプトできるようにします。返されるインスタンスは、元のインスタンスか、元のインスタンスに委任された新しいインスタンスです。 それが何を意味するのか本当にわかりませんし、なぜこのロジックをサービス自体から切り離すのかわかりません。たとえば、異なる条件下で異なるものを返したい場合は、関連する関数に異なる引数を渡すか、そのプライベート状態を共有する別の関数を使用します。 私はまだAngularJSの初心者なので、私が気付いたのは単に無知や悪い習慣だと思います。

8
@synthesizeは正確には何をしますか?
次のコードを確認しました。 //example.h MKMapView * mapView1; @property (nonatomic, retain) MKMapView * mapView; //example.m @synthesize mapView = mapView1 関係は何であるmapViewとはmapView1?それはsetとgetメソッドを作成しmapView1ますか?

11
Javaの関数ポインター
これは一般的で些細なことかもしれませんが、具体的な答えを見つけるのに苦労しているようです。C#にはデリゲートの概念があり、これはC ++からの関数ポインターの概念に強く関連しています。Javaに同様の機能はありますか?ポインタがいくらか欠けていることを考えると、これについての最良の方法は何ですか?明確にするために、ここではファーストクラスについて話します。

15
java.lang.IllegalArgumentException:ビューがウィンドウマネージャにアタッチされていません
AsyncTaskを開始し、操作中に進行状況ダイアログを表示するアクティビティがあります。アクティビティは、回転またはキーボードスライドによって再作成されないと宣言されています。 <activity android:name=".MyActivity" android:label="@string/app_name" android:configChanges="keyboardHidden|orientation" > <intent-filter> </intent-filter> </activity> タスクが完了したら、ダイアログを閉じますが、一部の電話(フレームワーク:1.5、1.6)では、このようなエラーがスローされます。 java.lang.IllegalArgumentException: View not attached to window manager at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:356) at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:201) at android.view.Window$LocalWindowManager.removeView(Window.java:400) at android.app.Dialog.dismissDialog(Dialog.java:268) at android.app.Dialog.access$000(Dialog.java:69) at android.app.Dialog$1.run(Dialog.java:103) at android.app.Dialog.dismiss(Dialog.java:252) at xxx.onPostExecute(xxx$1.java:xxx) 私のコードは: final Dialog dialog = new AlertDialog.Builder(context) .setTitle("Processing...") .setCancelable(true) .create(); final AsyncTask<MyParams, Object, MyResult> task = new …
148 android 

15
ソリューションからnugetパッケージの復元を削除する
'Enable NuGet Package Restore'を使用して、最近のnugetパッケージの復元機能をソリューションに追加しました:http ://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages ただし、ビルドサーバーが破損し、修正する時間がなかったため、削除しました。私の知る限り、そのためのオプションはないので、すべての* .csprojファイルから次の行を手動で削除しました。 <Import Project="$(SolutionDir)\.nuget\nuget.targets" /> ここでの問題は、*。csprojファイルがチェックアウトされるか、ソリューションを開くたびに、行が自動的に再度追加され、誤ってチェックインするとビルドが壊れてしまうことです:( どのように私はそれを永久に削除することができますか? 更新:以下の答えにもかかわらず、ソリューションを開くと、同じ問題を抱えている人はまだ戻ってきますか?

12
ConcurrentHashMapと同期HashMap
ラッパークラスを使用しての違いは何であるSynchronizedMap上、HashMapとはConcurrentHashMap? それHashMapを反復しながら(ConcurrentHashMap)を変更できるだけですか?
148 java  core 

18
スケーラブルなTcp / Ipベースのサーバーを作成する方法
私は、長時間実行接続のTCP / IP接続を受け入れる新しいWindowsサービスアプリケーションを作成する設計段階にあります(つまり、これは多くの短い接続があるHTTPのようなものではなく、クライアントが接続して数時間または数日間接続を維持するか、またはでも数週間)。 ネットワークアーキテクチャを設計するための最良の方法のアイデアを探しています。サービス用に少なくとも1つのスレッドを開始する必要があります。Asynch API(BeginRecieveなど)の使用を検討しています。これは、同時に接続するクライアントの数(おそらく数百)がわからないためです。接続ごとにスレッドを開始したくありません。 データは主にサーバーからクライアントに送信されますが、クライアントから送信されるコマンドがときどきあります。これは主に、私のサーバーが定期的にステータスデータをクライアントに送信する監視アプリケーションです。 これを可能な限りスケーラブルにするための最良の方法に関する提案はありますか?基本的なワークフロー?ありがとう。 編集:明確にするために、私は.netベースのソリューションを探しています(可能な場合はC#ですが、.net言語でも機能します) バウンティ注:バウンティを獲得するには、単純な答え以上のものを期待します。ダウンロードできるものへのポインタとして、またはインラインでの短い例として、ソリューションの実用的な例が必要です。また、.netおよびWindowsベースである必要があります(.net言語であればどれでもかまいません)。 編集:私は良い答えをくれたすべての人に感謝したいと思います。残念ながら、私は1つしか受け入れることができず、よりよく知られているBegin / Endメソッドを受け入れることにしました。Esacの解決策はもっと良いかもしれませんが、それでもまだ十分に新しいので、どのように機能するかはわかりません。 私は良いと思ったすべての回答に賛成票を投じました。皆さんのためにもっとできることを望んでいます。再度、感謝します。
148 c#  .net  networking  tcp  scalability 

7
SHA-1はパスワードの保存に対して安全ですか?
結論: SHA-1は、プリイメージ攻撃に対して何よりも安全ですが、計算は簡単です。つまり、ブルートフォース攻撃や辞書攻撃を実装する方が簡単です。(SHA-256などの後継者についても同じことが言えます。)状況によっては、(bcryptなどの)計算コストが高くなるように設計されたハッシュ関数の方が適している場合があります。 「SHA-1が壊れている」という発言を頻繁に投げかける人もいるので、それが何を意味するのかを理解しようとしています。SHA-1パスワードハッシュのデータベースがあり、攻撃者が最先端のSHA-1破壊アルゴリズムと100,000台のマシンを備えたボットネットにアクセスするとします。(10万台の家庭用コンピューターを制御できるということは、1秒あたり約10 ^ 15の操作ができることを意味します。) 一人のユーザーのパスワードを見つけますか? 与えられたユーザーのパスワードを見つけますか? すべてのユーザーのパスワードを調べますか? ユーザーの1人としてログインする方法を見つけますか? 特定のユーザーとしてログインする方法を見つけますか? パスワードがソルトされている場合、どのように変化しますか?ソルティングの方法(プレフィックス、ポストフィックス、その両方、またはxor-ingのようなより複雑なもの)は重要ですか? これは、ググリングした後の私の現在の理解です。誤解した場合は正解してください。 ソルトがない場合、レインボー攻撃はすべてのパスワード(非常に長いパスワードを除く)をすぐに見つけます。 十分に長いランダムソルトがある場合、パスワードを見つける最も効果的な方法は、ブルートフォースまたは辞書攻撃です。衝突攻撃やプリイメージ攻撃は実際のパスワードを見つけるのに役立ちません。そのため、SHA-1に対する暗号攻撃はここでは役に立ちません。どのアルゴリズムを使用するかは問題ではありません。MD5またはMD4を使用することもでき、パスワードも同じように安全です(SHA-1ハッシュの計算が遅いため、わずかな違いがあります)。 「同じくらい安全」であるかどうかを評価するために、1回のsha1の実行に1000の操作が必要で、パスワードに大文字、小文字、数字(つまり、60文字)が含まれていると仮定します。つまり、攻撃者は1 日に 10 15 * 60 * 60 * 24/1000〜= 10 17個の潜在的なパスワードをテストできるということです。ブルートフォース攻撃の場合、これはすべてのパスワードを3時間で最大9文字、1週間で最大10文字、1年で最大11文字までテストすることを意味します。(1文字追加するごとに60倍かかります。)辞書攻撃ははるかに速く(1台のコンピューターを使用している攻撃者でも数時間で攻撃を阻止できます)、弱いパスワードしか見つかりません。 ユーザーとしてログインするために、攻撃者は正確なパスワードを見つける必要はありません。同じハッシュになる文字列を見つけるだけで十分です。これは最初のプリイメージ攻撃と呼ばれます。私の知る限り、SHA-1に対するプリイメージ攻撃はありません。(ブルートフォース攻撃は2 160回の操作が必要です。つまり、理論上の攻撃者がそれを阻止するには10〜30年必要です。理論的な可能性の限界は約2 60回の操作で、攻撃には数年かかります。)プリイメージ攻撃があります。影響がごくわずかなSHA-1の削減バージョンに対して(80ではなく44ステップを使用する削減SHA-1の場合、攻撃時間は2 160オペレーションから2 157に減少)。SHA-1に対する衝突攻撃がありますが、理論的な可能性の範囲内です(私が見つけた最善の方法は、時間を2 80から2 52に減らします)が、ソルトがなくても、パスワードハッシュに対しては役に立ちません。 つまり、SHA-1でパスワードを保存することは完全に安全に思えます。私は何か見落としてますか? 更新: Marceloは、2 106操作での2番目のプリイメージ攻撃について言及している記事を指摘しました。(編集:として、トーマスは説明して、この攻撃は現実のシナリオには適用されません仮想的な構造です。)私はまだかかわらず、鍵導出関数としてSHA-1を使用するためにどのようにこの呪文の危険性が表示されません。衝突攻撃または2番目のプリイメージ攻撃が最終的に1番目のプリイメージ攻撃に変わる可能性があると考えるのに、一般的に十分な理由はありますか?
148 cryptography  hash  sha1 

5
WebClientクラスでのCookieContainerの使用
以前はHttpWebRequestおよびHttpWebResponseセッションでCookieContainerを使用していましたが、今はWebClientで使用したいと思います。私が理解している限り、HttpWebRequests(request.CookieContainer)のように組み込みのメソッドはありません。CookieContainerでWebClientからCookieを収集するにはどうすればよいですか? 私はこれをググって、次のサンプルを見つけました: public class CookieAwareWebClient : WebClient { private readonly CookieContainer m_container = new CookieContainer(); protected override WebRequest GetWebRequest(Uri address) { WebRequest request = base.GetWebRequest(address); HttpWebRequest webRequest = request as HttpWebRequest; if (webRequest != null) { webRequest.CookieContainer = m_container; } return request; } } これはそれを行うための最良の方法ですか?

9
最近起動したプログラムを再実行するためのEclipseのショートカットはありますか?
私がEclipseで最も頻繁に行うことの1つは、最後のプログラムを再実行することです。私は、に行くことによってそれを行う実行履歴> - -ファイル名を指定して実行> [最上位のアイテム]。 これを行うショートカットキーはありますか? CTRL+ は知ってF11いますが、これはうまくいきません。現在アクティブなクラス(ソースコードを編集しているクラス)にmainメソッドがない場合にのみ、最新のプログラムを起動します。含まれている場合は、このクラスをプログラムのエントリポイントとして使用し、実行履歴リストのエントリポイントとして使用しません。
148 eclipse  ide 

23
Jquery UIダイアログに「確認」ダイアログを実装する方法は?
醜いjavascript:alert()ボックスを置き換えるためにJQuery UIダイアログを使用しようとしています。私のシナリオでは、アイテムのリストがあり、それらの各個人の隣に、各アイテムの[削除]ボタンがあります。擬似HTMLセットアップは次のようになります。 <ul> <li>ITEM <a href="url/to/remove"> <span>$itemId</span> <li>ITEM <a href="url/to/remove"><span>$itemId</span> <li>ITEM <a href="url/to/remove"><span>$itemId</span> </ul> <div id="confirmDialog">Are you sure?</div> JQパートでは、ドキュメントの準備ができたら、最初にdivを必要なボタンを備えたモーダルダイアログに設定し、次のように、削除する前にそれらの "a"を確認のために起動するように設定します。 $("ul li a").click(function() { // Show the dialog return false; // to prevent the browser actually following the links! } OK、ここに問題があります。初期化時間中、ダイアログには誰(アイテム)が起動するのか、またアイテムID(!)もわかりません。これらの確認ボタンの動作を設定して、ユーザーがまだ[はい]を選択した場合、リンクをクリックして削除する方法を教えてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.