問題タブ [software-distribution]
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.
security - かなりオープンなUNIX製品のライセンスおよび/または同時使用の強制メカニズム?
エンドユーザーが名目上ソースコードを持っている(または可能である)(UNIXベースの)ソフトウェア製品にライセンスキーの適用または同時ユーザー制限の適用を追加する方法についての提案に感謝します。おそらく、それを実行しているサーバーは彼らの敷地内にあるなどので、比較的簡単に入手できます。
明らかに、私は、そうする意欲の高い人や、そのような優れた1337h4x0rsによって回避できない技術を求めたり期待したりしていません。このような著作権侵害対策メカニズムのポイントは、ユーザーが本当にやりたいことをするのを妨げることではなく、単にお金を払うだけの比較的簡単なことと比較して、面倒なことをする価値がないことを十分に煩わしくすることです。別の(安価な)ライセンス-少なくとも、単なる平均的な能力のエンドユーザー向け。
それには、隠すことによる単なるセキュリティよりも洗練されたものが必要です(これは、設定を変更する意図がなくても、偶然に遭遇する可能性のあるユーザーに笑われることもあります)が、ミサイルサイロを保護するために必要なものに近いものはありません。「はい、この製品は実際にあなたが購入したものに使用を制限します」と言うのに十分です。名声と幸運を求める人がそれをクラックする方法についてブログエントリを投稿するように動機付けるのに十分興味深いものであってはなりませんが、理想的には、製品がどれほどニッチで安価であるかを考えると、それはそうではないと思います懸念。
私が考えることができる唯一の実際のテクニックは、プログラムの残りの部分に機能的に不可欠ないくつかのルーチンを静的または動的なバイナリのリロード可能なオブジェクトにコンパイルし、それとともにチェックを含めることです。ルーチンは、その特定の条件を人為的にチェックするのではなく、切り離せない点で重要である必要があります。そうしないと、ユーザーは関数の呼び出しを無効にすることができます。関数の呼び出しを無効にすると、他の魅力のない結果も生じるという考え方です。
これは、賢いハッカーが分解できないことではありません。明らかに、関数が他の目的のないバイナリに組み込むのに十分なほど些細なものである場合、その関数の外部でも再実装するのに十分なほど簡単です。しかし、それは典型的なエンドユーザーがわざわざ経験するよりも多くの努力です。そしてもちろん、要点は著作権侵害を機械的に阻止することではなく、製品が純粋に名誉システムで機能しないように少し制限を設けることですが、多くの企業バイヤーにとってはそれで十分だと確信しています米国で。
これは一般的なアプローチですか?より良いものはありますか?
java - 商用配布のための Java ライセンス
Java を使用してプログラムを作成し、いつか販売することを考えています。私はJavaを初めて使用するので、確認するために考慮しなければならないライセンスを持っている(開発から配布、ユーザーのマシンへのユーザーフレンドリーなインストールまで)必要なツール/ソフトウェア/などの種類を尋ねなければなりません彼らは販売やクローズドソースコードなどを許可していますか?
ユーザーがすでに少なくとも 1 つの Java アプリを実行していて、マシンにかなり新しいバージョンの Java がインストールされていると想定する必要がありますか?
また、この目的に確実に適した特定のツールの推奨事項はありますか?
licensing - ソフトウェアライセンスをマシン/環境に制限するための最良の方法は?
ソフトウェアライセンスキーを作成する必要があります。要件の1つは、イメージの重複を避けるために、キーを特定のサーバーにバインドすることです。1.このタスク(CPU、MAC、その他)を達成するための好ましい方法は何ですか?2.仮想マシンで実現できますか?
クロスプラットフォームアプローチへの追加クレジット:)
java - 異なる OS での Java アプリケーションのリリース
さまざまなプラットフォームのユーザーがダブルクリックして実行できるように、exe または dwg などとしてリリースしたい Java アプリケーションがあります。しかし、私のコードが本当にうまく機能するためには、それがWindowsサービスとして機能する必要があり、他のOSでこれに相当するものは何でも. 私が理解しているように、クライアントマシンがシャットダウンした場合、ユーザーはexeを再度ダブルクリックする必要があるため、Java Web Startを使用することは解決策ではありません。Java サービス ラッパーを試しましたが、リリース可能にする方法がわかりません。
ありがとうプラナベシュ
linux - Linuxディストリビューション全体にバイナリアプリケーションを配布する
まだオープンソースではないアプリケーションを作成しました。実行可能ファイルをさまざまなLinuxディストリビューションに配布したいと思います。これを行うための最良の方法は何ですか。.rpmと.debのパッケージを少し調べましたが、それがバイナリに使用できるかどうかはわかりません。理想的には、OS XのPackageMakerや、Windowsの通常のインストーラーのように/ usr/binに自動的にコピーするものが欲しいです。それは.rpmおよび.debパッケージの目的ですか、それとも自動的に実行するシェルスクリプトをバンドルする必要がありますか?
database - クライアント/サーバー アプリケーションを小売製品として開発する場合、どのデータベースを使用する必要がありますか?
私たちは、すぐに販売できるクライアント/サーバー ソフトウェア (C#、Net 2.0) を開発中です。この製品は医療ドメインにあります。
次の条件に最適なデータベースを提案できる人はいますか。
- 顧客に無料で配布できるはずです。
- 顧客は、画像もデータベースに追加できる必要があります。
- 小さな足跡。
- 高速、安定、安全、クラッシュしません。
MSSQL 2005 Express と Mysql 5.0 に取り組んでいます。あなたが提案できるより良いデータベースはありますか?
ruby - Rubyスクリプトが与えられた場合、それが何に依存しているかを把握する方法は?
ruby スクリプトが有用なので、多くの友人に配布したいと考えています。しかし、他に何をインストールする必要があるかをどうやって知ることができますか? つまり、スクリプトの上部には次のようなものがあります。
これにより、何をインストールする必要があるかがわかりますが、前回、友人のコンピューター (Linux) で試してみたところ、上記のそれぞれに移動パッケージが必要であることが判明しました。たとえば、activesupport にはデータベースが必要です。このスクリプトの場合は sqlite3 です。そのため、sqlite3 と多数の lib、さらには開発パッケージをインストールする必要がありました。
インストール手順に含めることができるように、すべての依存関係のリストを収集するためのツールまたは方法はありますか? またはさらに良いことに、それらを簡単なインストーラーにパッケージ化する方法はありますか?
maintenance - ソフトウェアのユーザー数と比較したソフトウェア保守時間の比率の傾向を観察した人はいますか?
たとえば、1,000 人のユーザーが使用しているソフトウェアのサポート リクエストの量が、わずか 50 人のユーザーと比べて大きく異なっていることに気付きましたか? それとも、ソフトウェアが実際にどれだけしっかりしているかに関係していますか? ソフトウェアを適切に作成するために余分な時間を費やすことがどれほど価値があるかを計算するようなものです。