Jammer-Thread

Hier kann über allgemeine Themen diskutiert werden, die sonst in kein Forum passen.
Insbesondere über Szene, Games, Kultur, Weltgeschehen, Persönliches, Recht, Hard- und Software.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

d3d9.dll!CD3DDDIDX8::UpdateDirtyStreams()
Entweder stottern die DirectX-Entwickler, oder sie stehen auf dicke Titten.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Media Player Classic, der mit Abstand beste Player, ist tief im Ansehen gesunken weil er bei Crashes automatisch Dr. Dump kontaktiert: https://trac.mpc-hc.org/ticket/5450

Command Line ist Nonsens. Wenn ich auf eine Datei doppelklicke, kann ich keinen Parameter übergeben. Da müsste ich in die Registry und an die 100 ProgIDs ändern.

CrashReporter-Verzeichnis löschen ist schön und gut, wenn man weiß, dass sowas verbaut ist.

Eine Setup-Option wäre das Minimum.

Oh, und: man kann bei Dr Dump keine Kommentare hinterlassen, ohne sich zu registrieren. Ich weiß, warum der MPC abgestürzt ist (ich hatte die D3D Debug Runtime eingeschaltet, und die hat beim Schließen ein harmloses Speicherleck gemeldet), aber ich kann’s nicht mitteilen. Eigentlich gut so: Wer meine Crash Dumps klaut, hat es auch verdient, Lebenszeit sinnlos damit zu verschwenden. Eigentlich sollte ich den jetzt noch 100 weitere Male abstürzen lassen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4254
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: Jammer-Thread

Beitrag von Chromanoid »

Nachtrag zu Chrome und Unterstreichungen: Ich glaube ich war da mit meinen Anschuldigungen etwas voreilig :) Verschiedene W3C-Gremien haben sich da schon länger Gedanken drüber gemacht. Es ist einfach Zufall, dass das erst jetzt bei Chrome eingeführt wurde... Naja, ich halte es weiterhin für problematisch und war mit dem alten Aussehen zufriedener.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Bei Visual C++ kollidieren die temporären Dateien, wenn man sowohl foo.cpp als auch foo.c im Projekt hat.

> 2018
> Programme, die auf richtige Dateierweiterungen vertrauen
> idontwanttoliveonthisplanetanymore.mov
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Also ich habe sogar mehrere .cpp Dateien mit komplett identischem Dateinamen in der Solution und das hat noch keiner IDE Probleme bereitet, auch nicht VS, allerdings liegen die Dateien in unterschiedlichen Projekten, die zu unterschiedlichen statischen Bibliotheken kompilieren, welche aber wiederum durchaus am Ende zur gleichen .exe gelinkt werden.
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
B.G.Michi
Establishment
Beiträge: 163
Registriert: 07.03.2006, 20:38
Alter Benutzername: B.G.Michi
Kontaktdaten:

Re: Jammer-Thread

Beitrag von B.G.Michi »

QtCreator und qmake vertragen das auch nicht... -.-'
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

1. extern "C" unterdrückt Name Mangling.

Geil! Ich kann endlich auf die exports.def in meinem Projekt verzichten!

(später) Irgendwas stimmt mit der 32-Bit-Version nicht …

2. extern "C" unterdrückt Name Mangling, so lange die Calling Convention nicht __stdcall ist.

WTF, das hat aber doch hier funktioniert?! Sogar mit __stdcall, da bin ich mir sicher!

3. extern "C" unterdrückt Name Mangling, so lange die Calling Convention nicht __stdcall ist, oder sofern die Calling Convention __stdcall ist und Debug-Information abgeschaltet ist.

IST DAS HIER VERSTECKTE KAMERA ODER WAS
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: Jammer-Thread

Beitrag von dot »

Dass extern "C" irgendwas mit Name Mangling zu tun hätte, ist leider ein weit verbreiteter Irrtum. extern "C" ist eine linkage-specification, die besagt, dass die jeweils deklarierte Entität C language linkage haben soll. Effektiv heißt das einfach, dass sie entsprechend dem C ABI der jeweiligen Plattform übersetzt werden soll. Auf Windows gibt's wegen der ganzen verschiedenen Calling Conventions auch in der C ABI Name Mangling...
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

dot hat geschrieben:Dass extern "C" irgendwas mit Name Mangling zu tun hätte, ist leider ein weit verbreiteter Irrtum.
Nein ist es nicht. Es mag nicht dafür spezifiziert sein, aber auf Windows und mit Ausnahme der __stdcall-Extraregelung tut es unter anderem genau das.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: Jammer-Thread

Beitrag von dot »

Krishty hat geschrieben:
dot hat geschrieben:Dass extern "C" irgendwas mit Name Mangling zu tun hätte, ist leider ein weit verbreiteter Irrtum.
Nein ist es nicht. Es mag nicht dafür spezifiziert sein, aber auf Windows und mit Ausnahme der __stdcall-Extraregelung tut es unter anderem genau das.
Es gibt keine "__stdcall-Extraregelung". Auf 32-Bit Windows hast du auch mit extern "C" immer Name Mangling (siehe vorhin verlinkter MSDN Artikel). Auf 64-Bit Windows gibt es in der C ABI kein Name Mangling weil es dort nur eine Calling Convention gibt (von __vectorcall mal abgesehen)...

Code: Alles auswählen

extern "C"
{
	void f() {}

	void __cdecl a() {}

	void __stdcall b() {}

	void __fastcall c() {}

	void __vectorcall d() {}
}
dumpbin /symbols bla.obj

Code: Alles auswählen

029 00000000 SECTA  notype ()    External     | _f
02A 00000000 SECT6  notype ()    External     | _a
02B 00000000 SECT8  notype ()    External     | _b@0
02C 00000000 SECT4  notype ()    External     | @c@0
02D 00000000 SECTC  notype ()    External     | d@@0
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Verdammt; ich vergaß, dass wir hier über exportierte Funktionen sprechen. Das konntest du nicht wissen, ja. Tut mir leid.

Also, einigen wir uns auf: Es unterdrückt das Name Mangling bei __cdecl. In einer DLL kommen deine Funktionen als f, a, _b@0, @c@0, d@@0 an.

Übrigens fügt dumpbin Dekoration hinzu. Die Unterstriche in _f und _a in deinem Dump existieren nicht wirklich. Das ist kein Witz, sondern Raymond Chen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: Jammer-Thread

Beitrag von dot »

Krishty hat geschrieben:Also, einigen wir uns auf: Es unterdrückt das Name Mangling bei __cdecl. In einer DLL kommen deine Funktionen als f, a, _b@0, @c@0, d@@0 an.
Ich bin dem Ganzen jetzt mal genauer nachgegangen und ich würde sagen: Was wirklich passiert ist, dass der Linker für per /EXPORT angegebene C ABI Symbole den undekorierten Namen als Name für den Export verwendet. Die Symbole selbst haben aber immer einen mangled Name!

Testcode:

Code: Alles auswählen

__declspec(dllexport) int x;

__declspec(dllexport) void __cdecl f() {}

extern "C"
{
	__declspec(dllexport) int y;

	__declspec(dllexport) void __cdecl a() {}

	__declspec(dllexport) void __stdcall b() {}

	__declspec(dllexport) void __fastcall c() {}

	__declspec(dllexport) void __vectorcall d() {}
}
Krishty hat geschrieben:Übrigens fügt dumpbin Dekoration hinzu. Die Unterstriche in _f und _a in deinem Dump existieren nicht wirklich. Das ist kein Witz, sondern Raymond Chen.
Nope. Wenn nicht auch noch sämtliche File Editoren und/oder File System Driver oder so kollektiv an der Verschwörung beteiligt sind, dann sind die Underscores definitiv in der Symboltable des vom Compiler ausgespuckten Object File enthalten (egal ob dllexport oder nicht):
Untitled.png
Erst wenn ich dieses Object File zu einer DLL linke, werden für die Exports dann andere Namen verwendet. Aus dem Compiler aber kommen der C Linkage entsprechend mangled Names raus (im Release nur mit /GL- sichtbar da sonst keine COFF Symbole vom Compiler generiert werden). Erst der Linker entscheidet sich offenbar, für bestimmte Symbole den unmangled Name in die Export Table einzutragen.

Der Output von link /dump /exports (und auch dumpbin /exports, was offenbar das gleiche zu sein scheint) sieht mittlerweile übrigens so aus:

Code: Alles auswählen

          1    0 00011136 ?f@@YAXXZ = @ILT+305(?f@@YAXXZ)
          2    1 00018138 ?x@@3HA = ?x@@3HA (int x)
          3    2 000110FF @c@0 = @ILT+250(@c@0)
          5    3 000110E1 _b@0 = @ILT+220(_b@0)
          4    4 0001102D a = @ILT+40(_a)
          7    5 00011069 d@@0 = @ILT+100(d@@0)
          6    6 0001813C y = _y
Da wird mittlerweile also nicht mehr "geschummelt" sondern einfach das Mapping von Export auf Symbol angezeigt :). Wenn man die .pdb Files löscht, dann zeigt es die originalen Symbolnamen in der Tat nicht mehr an.

__declspec(dllexport) tut effektiv nix anderes als ein entsprechendes /EXPORT Argument in die Linker Commandline zu packen:
Untitled2.png
Zusammengefasst würde ich sagen, dass es bei meiner ursprünglichen Aussage bleibt: extern "C" schaltet nicht das Name Mangling ab sondern übersetzt lediglich nach C ABI statt nach C++ ABI (hab das Ganze auch noch ohne extern "C" direkt mit dem C Compiler getestet, dort ist das Verhalten exakt das gleiche). Was es gibt ist eine Extraregelung für den Export von C ABI __cdecl Funktionen im Linker. Das ist dann aber effektiv aber auch genau so dokumentiert: https://docs.microsoft.com/en-gb/cpp/cp ... -dllimport
MSDN hat geschrieben:No name decoration is applied to exported C functions or C++ extern "C" functions using the __cdecl calling convention.
Zuletzt geändert von dot am 18.02.2018, 21:19, insgesamt 1-mal geändert.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Alles klar; danke dafür! Hast du noch eine Erklärung, warum bei Exporten das Mangling verschwindet, wenn Debug-Informationen abgeschaltet sind?
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
dot
Establishment
Beiträge: 1734
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: Jammer-Thread

Beitrag von dot »

Sicher dass das nur an den Debug Infos liegt? Wenn du Release mit Whole Program Optimization baust, dann enthalten Object Files keinen Maschinencode und keine COFF Symbole, weil die Code Generation ja in den Linker verschoben wird...
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Ah, der Wind weht anders. In dem StackOverflow-Thread hatte sich jemand beschwert, dass er mit dumpbin immer nur dekorierte Namen in seiner DLL sieht. Abschalten der Debug-Informationen bewirkt ein Löschen der PDB, und dann zeigt dumpbin die undekorierten Exporte, weil es keine PDB mehr findet.

Es ging da also die ganze Zeit nur um dumpbin, nicht um die tatsächlich exportierten Funktionen …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Visual C++ 15.5.1 hatte einen Bug, der den Optimizer in einer Endlosschleife festhielt. Es hat ein Bisschen gedauert, einen exakten Repro zu finden, aber hier ist er:

https://developercommunity.visualstudio ... n-con.html

Der Optimizer hing, wenn eine Schleife dem Limit ihres Zählers zu nahe kam. Das wurde ungefähr zur gleichen Zeit eingeführt wie, dass der Optimizer undefinierte Integer-Overflows ausnutzt.

An alle Undefined Behavior-Fans: Das könnte tatsächlich ein Fall gewesen sein, in dem Undefined Behavior bedeutete, dass der Compiler alles hinschmeißt und man nicht mehr weiterprogrammieren kann :D Vielleicht ja jemand die 15.5.1er-Version herunterladen und das tatsächlich erreichen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Tiles
Establishment
Beiträge: 1990
Registriert: 11.01.2003, 13:21
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Tiles »

git did not exit cleanly (exit code 128)

Und ich hatte nichts geändert. Und nichts hilft. Ich kann weder ein neues Repo klonen, noch mein eigenes updaten. Vermutlich habe ich es jetzt eher noch schlimmer gemacht mit meinen Versuchen das zu fixen. Das Lustige ist, auf meinem Laptop geht alles. Nur auf meinem Desktop streikts. Bin grade komplett ratlos :(

EDIT, die Jungs auf Github haben wohl irgendwas abgeschaltet was ich verwende. February 22, 2018 19:00 UTC (11:00 am PST): Permanently disable deprecated algorithms.

https://githubengineering.com/crypto-removal-notice/

Aber kein Wort was ich da jetzt machen soll. Und wieso merke ich das erst dadurch dass es nimmer geht? Und so richtig spassig ist ja dass es auf meinem Lappy tadellos geht. Mit den alten Dingern. Github. Danke Jungs, habta toll hinbekommen -.-
Free Gamegraphics, Freeware Games https://www.reinerstilesets.de
Die deutsche 3D Community: https://www.3d-ring.de
Benutzeravatar
Biolunar
Establishment
Beiträge: 154
Registriert: 27.06.2005, 17:42
Alter Benutzername: dLoB

Re: Jammer-Thread

Beitrag von Biolunar »

Tiles hat geschrieben:git did not exit cleanly (exit code 128)

Und ich hatte nichts geändert. Und nichts hilft. Ich kann weder ein neues Repo klonen, noch mein eigenes updaten. Vermutlich habe ich es jetzt eher noch schlimmer gemacht mit meinen Versuchen das zu fixen. Das Lustige ist, auf meinem Laptop geht alles. Nur auf meinem Desktop streikts. Bin grade komplett ratlos :(

EDIT, die Jungs auf Github haben wohl irgendwas abgeschaltet was ich verwende. February 22, 2018 19:00 UTC (11:00 am PST): Permanently disable deprecated algorithms.

https://githubengineering.com/crypto-removal-notice/

Aber kein Wort was ich da jetzt machen soll. Und wieso merke ich das erst dadurch dass es nimmer geht? Und so richtig spassig ist ja dass es auf meinem Lappy tadellos geht. Mit den alten Dingern. Github. Danke Jungs, habta toll hinbekommen -.-
Was für eine Steinzeitsoftware verwendet noch TLS 1.0 oder 1.1 bei dir?
Benutzeravatar
Tiles
Establishment
Beiträge: 1990
Registriert: 11.01.2003, 13:21
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Tiles »

Wenn ich das wüsste wäre ich nicht so am fluchen. Ich habe da Tortoisegit hinten dran hängen. Vermutlich das. Aber ich habe auch auf meinem Lappy Tortoisegit hinten dran. Und da tuts. Und schon das einfache klonen mit Git hat gemeckert. Also ist es wohl ein Git Problem.

Im Moment versuche ich Git und Tortoisegit sauber zu deinstallieren. Und bin zumindest mal den TLS Error losgeworden. Nun ist es von der Git Konsole nur noch der 128er, ohne irgendeinen Hinweis wo es klemmt. Da müssen also noch irgendwo alte Settings rumgammeln. In der Registry oder in den Userprefs, oder was weiss ich wo. Ich habe sogar gitconfigs in meinem C:\User\ Ordner gefunden. Das Vieh verewigt sich wirklich systemweit. Und ich muss immer noch rausfinden wo Tortoisegit immer wieder seine Credentials Einstellungen herzaubert. Und meinem Repo fehlen auch grade die grünen Symbole. Sehr nice alles grade ^^

Uninstaller ohne die Möglichkeit auch die Programm-Settings zu entsorgen sind jedenfalls gruselig -.-
Free Gamegraphics, Freeware Games https://www.reinerstilesets.de
Die deutsche 3D Community: https://www.3d-ring.de
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Warum zur Hölle macht Microsoft mit jedem Visual Studio-Update Dinge kaputt, die früher mal funktionierten? Aktuell ist es das Tippen(!).

Sagen wir, ich habe diesen Text:

  Bezeichner();

Nun möchte ich vor den Anfang Foo:: tippen. Ich tippe also …

  Foo:|Bezeichner();
      ^ Caret ist hier


wenn ich nun den zweiten Doppelpunkt tippe, ändert sich der Text sofort zu:

  FooBezeichner::|();
                 ^ Caret ist plötzlich hier; Doppelpunkte sind weggesprungen; WTF


Das beste: Ich habe die ganze Autokorrektur-Grütze abgeschaltet, der Editor darf also gar nichts an meinem Quelltext ändern. Es nervt mich. Es nervt, dass Visual C++ was anderes hinschreibt als ich mit der Tastatur vorgebe. Es nervt, dass das nur manchmal passiert. Es nervt, dass mit jedem Update neue nervige Bugs kommen. Es nervt, nervt, nervt, nervt.

Nachtrag: Microsoft fährt seit Windows 8 eine extreme Gleichmachereipolitik. Man soll alle ihre Programme nur noch in der Standardeinstellung nutzen – weil das den Testaufwand reduziert. Darum setzt Windows 10 auch nach Updates alle Einstellungen zurück. Das Ergebnis ist seit Jahren sinkende Qualität ihrer Software, wenn man mal doch irgendwo eine Einstellung ändert.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Wenn ich eine Funktion __vectorcall deklariere, und dann Datentypen à __m128 by-value übergebe, kann ich im Visual Studio Debugger nicht ihre Werte sehen.

Da ist immer nur m128_f32=0xcccccccccccccccc { ??? ??? ??? ??? }.

Es nervt mich seit Jahren. Ich muss dauernd lokale Kopien meiner Parameter anlegen, damit ich überhaupt debuggen kann.

Dazu gibt es keinen Bug Report. In all den Jahren nicht. Bin ich der einzige, bei dem das passiert?!
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

MSDN – WriteFile function hat geschrieben:nNumberOfBytesToWrite [in]
The number of bytes to be written to the file or device.

A value of zero specifies a null write operation. The behavior of a null write operation depends on the underlying file system or communications technology.
Für manche Communications Technologies bedeutet dieser Satz: „Wird eine Exception im Kernel auslösen und das Programm zum Absturz bringen, falls ihr nicht drauf vorbereitet seid“ oder wird niemals gelingen.

Falls ihr einen Wrapper für WriteFile() habt, solltet ihr den nun öffnen und bei Nullgröße vorzeitig zurückkehren lassen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
DerAlbi
Establishment
Beiträge: 269
Registriert: 20.05.2011, 05:37

Re: Jammer-Thread

Beitrag von DerAlbi »

Hmmh. Es ist aber wirklich geräteabhängig... es ist gut möglich, dass man da im Treiber etwas hat, was auf 0 mit Spezialverhalten reagiert (flush, hardware handshake und zeugs), evtl ein leerer HID-USB-Transport also Kommando an ein HID oder so.
Zumindest gibt es einen Grund, warum die bei MS da eine 0 zulassen wollten. Es generell zu blocken würde ich auch der Ebene oben drüber überlassen.
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Können wir uns nun endlich einig werden, dass TAB+SPACE beim Login auf Webseiten die Option „Angemeldet bleiben“ aktiviert?

Dass das zweite Element mit Tastaturfokus bitte NICHT Werbung ist, die dann öffnet? NICHT „Passwort vergessen“, das mich mit Mail bombardiert? NICHT „Neu registrieren“?

(ZFX macht das perfekt. Aber 50 % der Seiten da draußen sind Arschlöcher für das motorische Gedächtnis.)
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

ARGH. Das kommt raus, wenn sich Microsoft vornimmt, endlich Domain-Specific Languages zur Umwickelung von COM-APIs zu werfen und zu "reinem" Standard-C++ zurückzukehren ...
https://github.com/Microsoft/cppwinrt/b ... undation.h
https://github.com/Microsoft/cppwinrt/b ... nrt/base.h
(Jep, jede Datei zwischen 1k-5k Zeilen autogenerierter Redirection-Templates, mehrschichtige Wrapper-Vererbungshierarchien orthogonal zu COM, Funktionstemplates die Parameter ein- und auspacken, ABI Conversions durchführen, Fehler checken, und dann zu COM-Calls weiterleiten. Und weils eh schon zu spät ist, inline noch ein paar Custom Array Types, SHA und andere Hashes, die 10te Kopie von com_ptr, ...)

Dagegen ist sogar die OpenGL-Extension-Architektur leichtgewichtig und elegant :-/
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Jammer nicht! Ich bin froh, dass da überhaupt was geht. Als ich letztes Mal WinRT-Funktionalität in meine Programme einbinden sollte (damals, im Ferienlager, …), habe ich einfach nach drei Stunden ABI-Forschung aufgegeben. Jetzt gibt es immerhin diese … verwuchterten Missgeburten, die man in eine weit entfernte CPP wrappen kann.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Nächster IDE-Bug … ) } > : in String Literal lösen Auto-Formatting aus
https://developercommunity.visualstudio ... r-ind.html
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8229
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

ZFX-TODO für das Wochenende wieder nur halb geschafft: … also nächstes Wochenende … :roll:
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Tiles
Establishment
Beiträge: 1990
Registriert: 11.01.2003, 13:21
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Tiles »

Jetzt wäre ich endlich so weit dem Firefox seinen wohlverdienten Tritt zu verpassen und auf Chrome zu wechseln. Und als Belohnung darf ich jetzt so um die 300 Passwörter neu von Hand eingeben weil die meisten Passwörter nicht portiert werden :/

EDIT sagt, und jetzt weiss ich auch wieso. Da wird irgendwo auf dem Weg aus einem Passwort Buchstaben & ein %26 . Und schon mag der Chrome das nicht mehr importieren. Also wirklich alle von Hand checken ...
Free Gamegraphics, Freeware Games https://www.reinerstilesets.de
Die deutsche 3D Community: https://www.3d-ring.de
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Warum willst du die denn unbedingt in Chrome importieren? Dann hast du doch beim nächsten Browserwechsel in ein paar Jahren das gleiche problem wieder mit dann vermutlich noch mehr Passwörtern. Importiere sie doch lieber in einen browserunabhängigen Passwortmanager. Dann hast du deine Ruhe bei Browserwechseln und brauchst Passwörter für vom Browser separate Programme nicht noch mal separat verwalten, sondern kannst alle Passwörter zentral managen.
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Antworten