windows.h

Previous topic - Next topic

Kitty Hello

Das hier in eine eigene Datei:
windows.gbas
Quote
// --------------------------------- //
// Project: _poo
// Start: Tuesday, January 29, 2008
// IDE Version: 5.150


INLINE

}
#define HINSTANCE W32HINSTANCE
#define HINSTANCE__ W32HINSTANCE__
#undef LPSTR
#undef DECLARE_HANDLE
#undef LPCTSTR
#undef DWORD
#undef LPWSTR
#undef LPCWSTR
#define HWND W32HWND
#define HWND__ W32HWND__
#define HANDLE W32HANDLE
#undef MAX_PATH
#undef TCHAR
#define WIN32_LEAN_AND_MEAN
#define WinMain WinMain2
#include <windows.h>
namespace __GLBASIC__ {

ENDINLINE


FUNCTION MoveWindow: iw, x, y

INLINE
   ::MoveWindow((HWND)(void*)(int)iw, x,y,320,240, TRUE);
ENDINLINE

ENDFUNCTION

trucidare

Daaanke :)
MacBook Pro 2,2 GHz Core 2 Duo, 4 GB RAM, 160 GB HDD, 8600M GT
Core i3 - 3,07 GHz, 8 GB Ram, 2.5 TB HDD, Geforce GTX 260+ OC

Schranz0r

GEIL, funzt wie Sau !

THX Gernot... :nw:
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

Heiko

kannst du das für die winbase.h auch machen?
brauch dort nämlich FreeLibraryAndExitThread

Schranz0r

ist die nicht in User32.dll ?
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

Heiko

da bin ich überfragt.
hab jetzt mal mit process explorer geschaut, was da so passiert, aber so richtig schlau werd ich da nicht draus.

Schranz0r

So, das ist in der kernel32.dll !

Kannste einfach mit DECLARE einfügen im INLINE.(die DLL ist ja bei jeden im WINDOWS\System32 , also musst du diese auch nicht mit in den Ordner vom Projeckt tun ;) )
Obs dann geht, hab ich keine Ahnung :D
Schau mal ob "Xors3D" schon deklariert ist in dem PB-Beispiel!

Hab nämlich keinen Plan, wie das Exit genau funktioniert.
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

Heiko

Code (glbasic) Select
Global XORS=LoadLibraryM(?XR): If Not XORS:End:EndIf
       Global xEntityShader.xEntityShaderProto=GetProcAddressM(XORS,"_xEntityShader@4")


Code (glbasic) Select
Procedure Xors3D_End()
       FreeLibraryM(XORS)
     EndProcedure
     DataSection
      XR:IncludeBinary "Xors3D.Dll"
     EndDataSection


so ist das dort.
an dem beispiel vom ersten post oben von gernot, wie würdest du das schreiben.

achja, hab den process explorer gestartet(mach das ach mal)
dann die .exe von glb gestartet, dann im process explorer ctrl+e drücken.
in der suche den namen der .exe eingeben und da hast du im hauptfenster dann eine liste, und da ist die squall.dll plötzlich als einzige so lila unterlegt.
ich hab zwar keine ahnung was das bedeutet, aber vielleicht weißt du ja was damit anzufangen.

ich versteh das so oder so nicht ganz.

ist es nicht normalerweise so, dass alles was mit glb als dll geladen wird, und auch dessen anhang, beim schliessen automatisch mit gekickt werden müsste?