Darf man das einfach so in die Anwendung reinhacken?
(Also nicht "Macht damit, was ihr wollt, aber den Code gibt's nicht.", aber so ähnlich!)
Also reinhacken darfst Du bei Deinem Code immer alles. In diesem speziellen Fall kannst Du es sogar weglassen. Denn wenn Du ein Programm schreibst, warum sollte irgendwer Rechte an Deinem Code haben? Es gibt keine Rechtspflicht, die Dich dazu zwingt, dass Du Deinen Code anderen zugänglich machst. Wenn Du also nichts reinschreiben würdest, dann gilt implizit dass jeder erstmal machen kann was er möchte und der Code nicht zur Verfügung steht (außer Du stellst den halt zur Verfügung ;-))
Anders sieht es aus, wenn Du selbst die Arbeit an einen Vertrag bindest. Zum Beispiel wirst Du in vielen Arbeitsverträgen eine Klausel finden die ganz unverschleiert und direkt sagt, dass Du alle Rechte an dem Code den Du schreibst an Deinen Arbeitgeber abtrittst, das ganze dann eben relativ pauschal gegen Arbeitslohn.
Auch bindest Du Dich daran, dass Du den Code bereitstellst, wenn Du eine Bibliothek verwendest, deren Nutzungsbedingungen eben die Veröffentlichung des gesamten Quelltextes erfordern. Die GPL 2.0 ist hier so ein Beispiel, während die LGPL sagt, dass Du bei dynamischer Bindung nur Änderungen an der Bibliothek selbst veröffentlichen musst (bei der aktuelleren 3.0 glaube ich mich zu entsinnen, dass es keine explizite Trennung der LGPL gibt).
Davon ausgehend, dass Du also keine besonderen Verträge berücksichtigen musst (für die Einhaltung haftest Du natürlich, wenn die rechtsgültig sind), dann hast Du auch keine Verpflichtungen den Code irgendwem zugänglich zu machen.
Willst Du allerdings Restriktionen durchsezten, dann sieht es schon anders aus. Hier musst Du dann schon aufpassen, dass amerikanisches Recht relativ irrelevant für Deutschland ist. Ganz bekannt ist hier immer das Beispiel mit der MS Eula, die bestimmte Restriktionen erst offenbart, wenn Du das Produkt schon gekauft hast. Erst wenn Du die Software installierst wird zum Beispiel gesagt, dass Du die nicht an Fidel, Kim Jong Il oder Gadhafi verkaufen darfst. Ok, wichtiger ist für die OEM Versionen, dass hier die Lizenzbedingungen erst nach dem Kauf (und vor der Installation) angezeigt werden. Die kannst Du aber in Deutschland getrost ignorieren, da Du denen nicht vor dem Kauf zustimmen konntest (die zeigt ja erst die Installationsroutine).
Für Dein Programm wäre es das selbe. Kann das jmd. runterladen ohne dass Du auf der Webseite auf die Lizenzbedingungen hinweist und hast Du erst in einem "About" mal die Lizenzbedingungen drin, dann sind die kaum rechtsgültig. Sonst würden Leute einfach ein tolles Spiel schreiben, veröffentlichen und irgendwann (wenn der Hype stimmt) die Lizenz ändern und sagen, dass mit jedem Start der Anwendung 900€ Gebühren fällig sind. Das steht natürlich im About, aber das liest keiner, die Leute wollen ja erstmal zocken!
Ist natürlich etwas überzogen, aber bei den Telefontarifen gab es etwas ähliches, da konnte (unbeschränkt) ein pauschales Endgelt pro Verbindung angegeben werden und findige Firmen setzten dieses auf 32.000€ (oder mehr). Heute sieht die Rechtlage anders aus und es gibt maximal Beträge. Natürlich kann eine Firma immer noch mehr verlangen, allerdings wird sich dies kaum rechtlich einfordern lassen.
Nebenbei gilt die salvatorische Klausel, nicht der ganze Vertrag ist unwirksam, nur weil ein Teil falsch ist oder angefochten werden kann. Im Besonderen kannst Du zwar OEM Datenträger von MS weiterverkaufen, die Einzelnutzung ist Dir aber vorher bekannt und Du darfst nicht eine Installation auf zig Rechnern Nutzen.