Seite 2 von 4

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 01:13
von Krishty
Naja; es sind fünf Minuten pro Woche. Und sie haben den süßen Beigeschmack, es endlich geschafft zu haben. Das Ritual macht mir Spaß.

Oder meinst du den Upload zu den AV-Vendors? Avast hat dummerweise diese Woche erst sein Web-Interface für False Positives komplett auf den Kopf gestellt :( Man kann auch via E-Mail schicken, aber ich hatte – kein Witz! – AV-Labore, deren Provider meine Mails als „verdächtig“ eingestuft und den Empfang verweigert haben.

Das kann man sich gar nicht ausdenken. Man geht durch die 10-Punkte-Anleitung, wie man die Viren zippen und verschlüsseln soll und welches exakte Wording die E-Mail haben soll (ja, echt!) und an welche Adresse des Labors sie gehen muss und zurück kommt „Empfang verweigert; von unserer Firewall als potentielle Schadsoftware eingestuft.“ Und da oben in der Ecke ist die versteckte Webcam und die ganze Welt lacht sich über mich kaputt.

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 15:20
von Chromanoid
Oder meinst du den Upload zu den AV-Vendors?
Ja, das meinte ich. Das wäre wahrscheinlich sogar ein gutes Geschäftsmodell, wenn alle so verdächtig kleine und effiziente Programme schreiben würden wie Du :) Also für 5 EUR pro Jahr (?) ein automatisches Verteilen der Software an alle (Anti-)Virenhersteller...

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 17:41
von Krishty
… oder direkt für 100 € ein Zertifikat kaufen, das einmal den AV-Herstellern mitteilen (fast jeder von denen bietet eine Premium-Mitgliedschaft für Whitelisting via Zertifikat an; die sind quasi die Wegelagerer des 21. Jahrhunderts) und von dem zusätzlichen Vertrauen der Kunden in die signierte EXE profitieren.

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 18:45
von Chromanoid
fast jeder von denen bietet eine Premium-Mitgliedschaft für Whitelisting via Zertifikat an; die sind quasi die Wegelagerer des 21. Jahrhunderts
WTF Schweinehunde. Wieder was gelernt.

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 18:56
von Tiles
Ja, das ist ne üble Nummer mit den zertifizierten Installern. Ohne Zertifikat meckert ja auch schon Windows beim installieren über nen Installer rum.

Ich bin ja nach wie vor der Meinung dass es da was kostenloses geben müsste. Wie wird man denn überhaupt Zertifikatshändler? Sollte da nicht bei der Free Software Foundation was zu kriegen sein? Ich überlege mir ja echt die mal anzuschreiben.

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 19:09
von Chromanoid
Das Problem ist, dass man ja eigentlich eine Identifizierung machen muss. Sonst nützt einem ein Zertifikat als Konsument herzlich wenig. Man will ja zumindest sicher wissen, dass man die Person, die die Software verteilt, rechtlich belangen kann. Und das geht i.d.R. nicht kostenfrei. Let's Encrypt macht das ja im Web einfach über die Domäne, was bei Software ja nicht ausreicht - da will man ja eine Person hinter wissen. @Krishty kannst den Kram ja selbst verschieben, wenn es Dich nervt.

Re: [Projekt] Mein STL-Viewer

Verfasst: 13.01.2018, 23:39
von Krishty
Chromanoid hat geschrieben:
fast jeder von denen bietet eine Premium-Mitgliedschaft für Whitelisting via Zertifikat an; die sind quasi die Wegelagerer des 21. Jahrhunderts
WTF Schweinehunde. Wieder was gelernt.
Kurze Klarstellung: In den meisten Fällen scheint das kostenlos zu sein. Trotzdem, WTF. Ich wollte fefes niedrige Meinung über Antivirensoftware nie teilen, aber seit ich den Viewer veröffentlicht habe, ist meine Erfahrung zu 100 %, dass es Bullshitsoftware ist.

Diskutiert ruhig weiter.

Re: [Projekt] Mein STL-Viewer

Verfasst: 14.01.2018, 08:32
von Tiles
Tl'dr: Antivirensoftware ist Malware! Period! Bullshitsoftware triffts aber auch ^^

Naja, einen Virenscanner brauchst du. Aber die Dinger wie Kaspersky, Avira oder Avast sind ja keine Virenscanner mehr. Sondern üble Systembremsen mit immer noch mehr Sinnlos Features die dem User Sicherheit vorgaukeln sollen. Die graben sich tief ins System ein, greifen in den Standardeinstellungen lustig deine Daten ab, und legen es dir im Namen der Sicherheit stellenweise bis zur Unbenutzbarkeit lahm. Und die kostenlosen Varianten blenden dir dafür auch noch Werbung ein.

Und weil das ein Businessmodell ist muss so eine Antivirensoftware natürlich Erfolge vorweisen. Das geht meist auf Kosten von Fehlalarmen, und klemmt dann eben so Leute wie uns von der Userschaft ab. Und deswegen haben die auch gar kein grosses Interesse wirklich alle Fehlalarme abzuschaffen. Weil ja jeder Alarm dem User zeigt wie oh so wichtig und unverzichtbar die Antivirensoftware ist.

Für mich waren die Antivirendinger in dem Moment gestorben als Avira mir ohne Nachfrage* Teile der Ask Toolbar auf mein System gepackt haben. Eine Antivirensoftware die offen mit dem Feind zusammenarbeitet, ich mein, wie offensichtlich kann es denn noch sein? Das zeigt dir auch gleich wo die Reise schon seit Jahren hingeht. Und das nicht nur bei Avira.

*Die (Insert Schimpfwort hier) haben das hinterher natürlich geleugnet. Aber es gab bei der Umstellung damals tatsächlich eine Weile keinerlei Nachfrage ob man das als User wirklich zulassen will. Das hat bei Altkunden wie mir einfach die Virendatenbank und das Programm aktualisiert und den Mist gleich noch mit runtegeladen. Und selbst mit einem Zulassen Dialog ist das mit der Ask Toolbar einfach eine bodenlose Frechheit.

Sorry fürs ranten ^^

Re: [Projekt] Mein STL-Viewer

Verfasst: 14.01.2018, 09:12
von Tiles
Hab mal die FSFE bezüglich kostenlosen Zertifikaten angeschrieben. Mal sehn was die meinen, und ob ich überhaupt Antwort bekomme :)

Re: [Projekt] Mein STL-Viewer

Verfasst: 17.01.2018, 01:54
von Krishty
Oh toll. Avast hat den False Positive automatisch behoben, aber AVG …
  • User bekommt Virusmeldung und macht Screenshot
  • ich melde es AVG durch deren Webformular, in dem ich auch meine Datei hochlade
  • drei Tage vergehen
  • eine E-Mail kommt: ich soll eine weitere Kopie meiner Datei auf deren FTP-Server hochladen; und danach den FTP-Link und Screenshots vom AVG-Produkt und der Datenbankversion via E-Mail an sie zurücksenden
  • also gebe ich das an den armen User weiter (der jetzt einen Datenbankscreenshot machen soll, obwohl er nur am SA kurz mein Programm testen wollte) und springe durch die FTP-Reifen und mache die Mail fertig (um die 15 Schritte, weil alles bestimmte Namen und Betreffs haben muss und so)
  • wieder 30 Minuten meines Lebens futtsch für so einen Dreck
  • das ist bereits das dritte Mal mit AVG

Bild

Ich lese da nur „Wir beschützen dich vor der furchtbaren, SCHRECKLICHEN, LEBENSGEFÄHRLICHEN Welt da draußen. Gut, dass du uns Geld gegeben hast!

Jetzt sag dem Sack von der Webseite, dass wir dich nicht durchlassen, bevor er uns 10 E-Mails geschrieben hat oder uns auch Geld gibt.”



Übrigens wird der Build von heute Nacht nicht von AVG erkannt. Aber wieder von Webroot (die einzigen, deren False Positive Reporting NOCH nervenaufreibender ist). Also vom Regen in die Traufe. lol fml

Re: [Projekt] Mein STL-Viewer

Verfasst: 17.01.2018, 07:23
von Schrompf
Das Bild lädt nicht. Ansonsten: es ist gruselig, hier von Deinen Erfahrungen zu lesen. Ich hatte ja schon immer keine hohe Meinung von Antiviren-Programmen, aber langsam degeneriert die Branche echt zu Wegelagerern.

Re: [Projekt] Mein STL-Viewer

Verfasst: 20.01.2018, 03:04
von Krishty
Jau. Ich habe gestern eine Mail von AVG erhalten, dass mein Installer nicht erfolgreich auf deren FTP hochgeladen wurde und dass sie ihn deshalb nicht analysieren können. Wenn ich den Upload erneut versuche, bekomme ich die Meldung, dass ich keine existente Datei überschreiben darf – die Datei ist also da.

Es ist wie in Asterix & Obelix, der Lauf durch die Bürokratie. Ich bin mir sicher, dass sie das tun, damit ich die Fresse halte und sie in Ruhe lasse. LOLFU. Einfach weiter nerven, niemals nachgeben.

Re: [Projekt] Mein STL-Viewer

Verfasst: 20.01.2018, 08:40
von Tiles
Mein Beileid :/

Die FSFE hat sich übrigens nicht gemeldet.

Re: [Projekt] Mein STL-Viewer

Verfasst: 20.01.2018, 21:34
von Krishty
Sie haben mich wieder auf die automatische Seite verwiesen. Ganz großes Kino. Aber vielleicht kriege ich dann ja einen neuen Sachbearbeiter …

… seit gestern ist übrigens eine neue Version online. Die 32-Bit-Version wird von mehr Virenscannern bemängelt als vorher (5 statt 3); die 64-Bit-Version von weniger (0 statt 2). AVG und Avast sind diesmal nicht mehr dabei. Vielleicht hat das Meckern ja was gebracht …

Re: [Projekt] Mein STL-Viewer

Verfasst: 23.02.2018, 18:15
von Krishty
3D-Druck ist ja noch weitgehend monochrom. Der Workaround sind Mehrfach-Extruder.

Dabei spuckt das Programm mehrere STLs aus – für jede Farbe eine. Man füttert jeden Druckkopf mit andersfarbigem Plastik, und jeder druckt dann die dazugehörige STL. Aber synchron, so dass ein solides Modell rauskommt (nichts zum Zusammenstecken).

Ein schönes Beispiel ist 2-color tree frog auf Thingiverse. Der eine Extruder greift sich diese Datei und wird mit grünem Plastik gefüttert:
Bild

Der andere schnappt sich diese und wird mit schwarzem Plastik gefüttert:
Bild

Heraus kommt dann das:
Bild

Der Umgang mit solchen Daten ist furchtbar nervig, weil man halt beide Dateien synchron bearbeiten muss.

Das war eine lange Einleitung … Mein Viewer kann jetzt bis zu vier Einzelteile importieren, überlagern, und jedem eine eigene Farbe zuweisen:


(Ist das hämisch, Tux in ein Windows-Programm zu laden? Aber es ist eben so ein schönes Modell! :P )
Untitled.png
Das ist noch nicht perfekt, aber ein erster Schritt. Ich möchte die UI gern einfacher bedienbar machen, aber dafür habe ich gerade einfach keine Zeit. Besser als nichts …

… jetzt werde ich das erstmal in ein paar Experten-Foren veröffentlichen und abwarten, was für Feedback ich bekomme. Falls es unnütz ist, fliegt’s halt wieder raus.

Re: [Projekt] Mein STL-Viewer

Verfasst: 24.02.2018, 08:43
von Schrompf
Ich find's beeindruckend.

Re: [Projekt] Mein STL-Viewer

Verfasst: 24.02.2018, 17:53
von Psycho
Prima!
Warum die Begrenzung auf 4 Dateien?

Re: [Projekt] Mein STL-Viewer

Verfasst: 28.02.2018, 10:38
von Krishty
Psycho hat geschrieben:Warum die Begrenzung auf 4 Dateien?
Kurz gesagt: Weil’s noch im Prototypen-Stadium ist :D
  • Spart Code für Memory Allocation
  • Ich habe nicht den geringsten Plan, wie ich mehr als vier Schaltflächen zur Farbauswahl in der UI anordnen soll (ich kann ja schlecht hundert Buttons reinklatschen)
Ich spiele mit dem Gedanken, das Material im Tree View neben der Datei anzuzeigen. Damit wäre die Farbauswahl endlos skalierbar. Leider sind die Schaltflächen in Tree Views immer so winzig; das beeinträchtigt vielleicht die Handhabbarkeit … ich werde am Wochenende ein Bisschen testen.

Re: [Projekt] Mein STL-Viewer

Verfasst: 28.02.2018, 11:24
von Chromanoid
Vielleicht ein Panel mit Farbtopf, Thumbnail und Baumansicht pro Datei?
[Add new file]
______________________
-frog01.stl--[Ø][-][X]
____________
|
| Thumbnail
|____________

[COLOR]

[o]File
|-[o]Object
______________________
-frog02.stl--[Ø][-][X]
____________
|
| Thumbnail
|____________

[COLOR]

[o]File
|-[o]Object
______________________

Re: [Projekt] Mein STL-Viewer

Verfasst: 29.04.2018, 22:10
von Krishty
Kleines Update: Ich zeichne nun Rückseiten von Polygonen. (Hier muss ich das zum Glück weniger ausführlich erklären als anderswo :D Ich muss das echt verpeilt haben; es gibt eigentlich keinen Grund, es nicht zu tun.)

Download wie immer unter https://papas-best.com/stlviewer_de

Virustotal sagt, dass mir dieses Mal alle Schlangenölprogramme außer Qihoo360 und Webroot aus dem Weg gehen. Trotzdem hat sich direkt jemand beschwert, dass Avira meckern würde. False Positive Report ist abgeschickt.

Kurze technische Erläuterung: Das große Problem bei doppelseitigem Zeichnen ist, dass man auf der Rückseite auch die Normale invertieren muss, sonst ist die Beleuchtung falsch. Zum Glück hat Direct3D bool SV_IsFrontFace als Pixel Shader-Parameter. Theoretisch müsste das zu einem Shift und einem XOR kompilieren. Praktisch muss ich das erst noch herausfinden. (Gibt es dafür gute Tools? Den AMD GPU Shader Analyzer hat man ja leider nicht fortgeführt. Mann war der gut für sowas …)

Chromanoid, dir zu antworten steht noch immer auf meiner TODO.

Re: [Projekt] Mein STL-Viewer

Verfasst: 01.05.2018, 15:54
von lolumad
Warum stellst du den Sourcecode nicht zur Verfügung? :shock:

Re: [Projekt] Mein STL-Viewer

Verfasst: 01.05.2018, 18:49
von Krishty
lolumad hat geschrieben:Warum stellst du den Sourcecode nicht zur Verfügung? :shock:
Tue ich doch:
Psycho hat geschrieben:Hast Du Überlegungen, den Quelltext ebenfalls zu veröffentlichen?
Krishty hat geschrieben:Klar – wer interessiert ist, kann sich melden und kriegt eine PM :)
Warum so? Weil’s Arbeit ist, so einfach ;)

Edit:
Gelöschte Datei
Erfordert Visual Studio 2017. Falls du die verteilte EXE 1:1 rekonstruieren möchtest, musst du zusätzlich dieses CFF-Explorer-Skript nutzen und die Systemuhr auf Sonntag, 17:58 zurückdrehen.

Re: [Projekt] Mein STL-Viewer

Verfasst: 02.05.2018, 07:45
von Krishty
MasterQ32 hat geschrieben:Sehr geil! Startet auch unter Linux64/Wine problemlos und lädt die Files echt flott.
Könntest du bitte nochmal die aktuelle Version testen? Jemand beschwert sich, dass sie auf seinem Linux/Wine nicht funktioniert … was hattest du denn genutzt – die portable Version oder den Installer?

Re: [Projekt] Mein STL-Viewer

Verfasst: 02.05.2018, 21:39
von Biolunar
Krishty hat geschrieben:
MasterQ32 hat geschrieben:Sehr geil! Startet auch unter Linux64/Wine problemlos und lädt die Files echt flott.
Könntest du bitte nochmal die aktuelle Version testen? Jemand beschwert sich, dass sie auf seinem Linux/Wine nicht funktioniert … was hattest du denn genutzt – die portable Version oder den Installer?
Ich habe die portablen x86_64 und die x86 mit den default Wine profilen für Win7 und Win10 getestet und konnte keine Probleme feststellen.

Re: [Projekt] Mein STL-Viewer

Verfasst: 02.05.2018, 23:00
von Krishty
Super; ich danke dir vielmals dafür!

Re: [Projekt] Mein STL-Viewer

Verfasst: 19.05.2018, 23:31
von Krishty
Neue Version, aber ohne neue Features. Dafür umso mehr für ZFX – ich habe ein Bisschen Technische Schuld aufgeholt:


Versionierung überarbeitet

Ich wollte die Versionierung immer so einfach wie möglich halten, und habe sie deshalb im Quelltext mit __DATE__ und __TIME__ gemacht und im Setup von Hand. Das hat Nachteile:
  1. … „von Hand“.
  2. Builds sind nicht reproduzierbar, weil man immer mit anderem Datum kompiliert.
  3. __DATE__ und __TIME__ sind lokale Zeit statt UTC. Das ist recht verwirrend, vor allem mit dem Dateidatum.
  4. Ich möchte demnächst z.B. zwei Viewer in einem Setup kombinieren, und das geht damit nicht.
  5. Ich konnte bisher nur alle Projekte auf einmal deployen, nicht einzeln. Unsinn!
Also musste das mal ausgemistet werden.

Die Versionsnummern werden nun automatisch erzeugt, in UTC. Einfaches Batch-Skript. Die überflüssigen Nullen sind raus. (18.5.19 statt 18.05.19).

Ich habe gelernt, dass man WiX Umgebungsvariablen übergeben kann. Im Setup-Skript also SET WIX_PAPA_STLVIEWER_VERSION=… und im WiX-Skript Version='$(env.WIX_PAPA_STLTHUMBNAILS_VERSION)'. Nichts mehr händisch. Fuck yea.

Ich habe gelernt, dass man dem CFF Explorer Parameter für seine Skripte übergeben kann, indem man sie in die Kommandozeile hinter den Skriptnamen schreibt. Nun habe ich nur noch ein Skript zum Säubern aller EXEs/DLLs statt eines pro Datei. Fuck yea.


Neue WiX-Version.

WiX ist furchtbar zu nutzen, aber trotz allen Jammerns habe ich gerade keine Zeit, das Deployment auf was anderes umzusatteln. Also mache ich erstmal das Beste draus und halte es aktuell.

WiX hatte ein Sicherheitsproblem. Soweit ich das sehe, waren aber keine Setups betroffen, sondern nur Entwicklerrechner. Nagut. Neue Version, alles kompiliert noch, nichts ist größer geworden.


Neue Visual Studio-Version

Der Umstieg auf 2017.7 barg eine gute und eine schlechte Überraschung. Die gute war, dass Funktionsenden und if-Blöcke besser optimiert werden – solider Win in der Größe des Viewers.

Die schlechte war, dass eine Optimierung mit memcmp() weniger stark durchgeführt wird – solider Verlust in der Größe.

Unter’m Strich war der selbe Code fast ein KiB größer. Ich konnt’s aber mit anderen Änderungen ausbügeln:


Keine Microsoft-Header mehr

Ich habe noch an genau einer Stelle externe Header aus dem Windows SDK benutzt: Wenn ich benachbarte Dateien in einem Verzeichnis aufzähle, damit man mit den Pfeiltasten durchspringen kann.

Diesen Code wollte ich schon lange isolieren, aber es ist so eine richtig blöde Pfriemelarbeit. Ich nutze um die zehn COM-Interfaces der Windows-Shell, und muss jede einzelne Deklaration abkopieren, überarbeiten, und prüfen. Das hatte ich nun zwei Jahre vor mir hergeschoben. Hauptgrund: VARIANT. Guckt euch die Struktur an, sonst glaubt ihr es nicht. Die Kompatibilitäts-Workarounds. Die unions. Die structs mit und ohne Namen. Das nachzubauen war die Hölle.

Nun sind’s 1000 Zeilen eigener Code statt 300 Zeilen + Windows-, COM-, und Shell-Header. Die Kompilierzeit ist von „langsamste Datei des Projekts“ zu „nicht mehr messbar“ gesprungen.

Ich habe dabei gemerkt, dass ich einen String umständlich kopiert habe (StrRetToStr()), wo COM ihn direkt ausgeben kann (StrRetToBuf()). Ist nun etwas schneller, Fehlerbehandlung ist entfallen und der Viewer braucht einen COM-Import weniger. Größe geschrumpft.

An einer anderen Stelle hatte ich noch __uuidof() benutzt, statt händisch die UID der Schnittstelle anzugeben. Als ich das entfernt habe, ist die Größe geschrumpft. Ich hab’s nicht kontrolliert, aber Visual Studio scheint die UIDs nicht zu mergen, wenn sie durch Spracherweiterungen an COM-Deklarationen gebunden wurden. Wieder was gespart (und zusätzlich standardkonform geworden).

Dann habe ich von Hand Funktionen geinlinet, die nur einmal aufgerufen werden. Visual Studio sollte das seit 2017.6 angeblich von selber können, aber ich hab’s noch nie erlebt. Wieder 250 unnütze Bytes zurückgewonnen. Nun ist die neue Version kompakter als die vorherige.

Meine PDBs sind übrigens mit Verbannung der MS-Header satte 15 % kleiner geworden …

Re: [Projekt] Mein STL-Viewer

Verfasst: 29.05.2018, 13:09
von Jonathan
Habs nur ganz kurz angesehen, aber da du nach Verbesserungsvorschlägen gefragt hast: Es gibt keine Drag'n'Drop Unterstützung? Mein normaler Workflow sieht so aus, dass ich ein Explorerfenster mit meinem Projekt offen haben, ein Programm über eine Verknüpfung zu starten und das Modell ins Fenster zu ziehen mache ich da wahnsinnig gerne, weil es viel schneller ist, als über den Öffnen-Dialog erst mühsam zum richtigen Ordner zu navigieren.

Re: [Projekt] Mein STL-Viewer

Verfasst: 29.05.2018, 14:43
von antisteo
Krishty hat geschrieben:Ja; ich wurde gerade eben gefragt, noch andere Programme zu testen. Darunter fstl, den „fastest STL Viewer“. Der ist tatsächlich *viel* schneller als die anderen Programme (ich habe meine Seite entsprechend aktualisiert), braucht für Binärdateien aber noch fast doppelt so lang wie ich.

Für ASCII-Dateien braucht er sogar 10-Mal so lang. Da sind die meisten anderen Programme sowieso fast um den Faktor 100 langsamer als ich; aber das kann ich ja nicht hinschreiben, glaubt mir doch keiner …

Geschlagen werde ich im RAM-Verbrauch. Das liegt zum einen daran, dass ich Farben unterstütze (fstl & Co nicht) und zum anderen daran, dass ich die Normalenvektoren aus der Datei verwende, statt sie im Geometry Shader neu zu berechnen, weil ich halt zeigen möchte, wie die Datei ist statt wie sie sein sollte. (Das ist hoffentlich eine ausreichende Entschuldigung, aber ich schaue mal, ob ich’s irgendwann optimiert kriege.)
Hoffentlich bringst du bald einen eigenen Compiler heraus, der auch ohne manuelles Herumwurschteln "Aufgaben" in Maschinencode zu übersetzen kann, die nicht irgendwelchen strukturellen Overhead haben.

Re: [Projekt] Mein STL-Viewer

Verfasst: 29.05.2018, 20:59
von Krishty
Jonathan hat geschrieben:Habs nur ganz kurz angesehen, aber da du nach Verbesserungsvorschlägen gefragt hast: Es gibt keine Drag'n'Drop Unterstützung? Mein normaler Workflow sieht so aus, dass ich ein Explorerfenster mit meinem Projekt offen haben, ein Programm über eine Verknüpfung zu starten und das Modell ins Fenster zu ziehen mache ich da wahnsinnig gerne, weil es viel schneller ist, als über den Öffnen-Dialog erst mühsam zum richtigen Ordner zu navigieren.
Verdammt, du hast recht. Ich bin normalerweise auch totaler Drag’n’Drop-Fan, aber die Abhängigkeitshölle (da hängen COM-Schnittstellen dran) war mir kurzfristig zu aufwendig zu wrappen und dann hab ich’s vergessen. Ist nun wieder auf der To-do.

Re: [Projekt] Mein STL-Viewer

Verfasst: 04.06.2018, 20:10
von Krishty
Drag & Drop ist drin (erstmal nur für einzelne Dateien): https://papas-best.com/stlviewer_de
  • Die „neue“ Windows-NT-Schnittstelle (IDropTarget) ist wirklich höllisch kompliziert und unheimlich schwer nutzbar. Ich bin fast dran verzweifelt und nutze stattdessen …
  • … die alte Win-3.1-Schnittstelle (WM_DROPFILES). Ist viel einfacher und kompakter. Man kann halt nur nichts filtern, nicht den Cursor ändern, oder COM-Objekte wie Streams ablegen.
  • Das Feature ist mit 168 B zu buche geschlagen. Wenn ich statt dem WS_EX_ACCEPTFILES-Stil explizit DragAcceptFiles() aufrufen würde, wären es nochmal 36 B mehr – darum immer alles schön statisch in die Templates kompilieren!
Als weitere Verbesserung rotiert nun die Lichtquelle mit dem Betrachter mit; es gibt also keine schattigen Stellen mehr. (Der Wunsch kam via E-Mail.)