Search:
Type: Posts; User: The trick
Search:
Search took 0.33 seconds.
-
It's the bad practice to use TerminateThread because there is no resource releasing in this case. It's better to notify a thread (for example PostMessage/PostThreadMessage in certain cases) you want...
-
Those dlls won't work properly and have many restrictions. It need to initialize runtime to use DLLs.
-
Only Friend methods, private ones is called using VTable.
-
-
You could make an Add-in to hijack compilation and then replace the command line arguments.
-
https://www.vbforums.com/showthread.php?881935-Rules-for-UserControl-getting-grayed-disabled-at-design-time&p=5440319&viewfull=1#post5440319
-
Apparently, one of the main ideas of vb6 passed you by.
-
Yes. That code returns the current startup project type. The following code returns the current executing project.
Option Explicit
Private Enum PTR
[_]
End Enum
Private Declare...
-
It's quite simple because DLLs have specified export (DllGetClassObect etc.), Standard EXE contains VbHeader.dwThreadsFlag 0x8 bit set.
-
Option Explicit
Private Enum PTR
[_]
End Enum
Private Declare Function GetModuleHandle Lib "kernel32" _
Alias "GetModuleHandleW" ( _
...
-
Initialization of the runtime is a complex process. It includes the several stages. The runtime requires common initialization for each thread in process that interacts with runtime. It is required...
-
If you want to export functions and call them from any language you should initialize the runtime. There are several methods to do it. The most simpler is to create an public object using Reg-Free...
-
atof (like Val/CDbl) universal function. It supports whole double range:
Private Sub Form_Load()
Dim b() As Byte
b = StrConv("0.00000000000001" & vbNullChar, vbFromUnicode)
...
-
When you pass an array item to an API (VarPtr) it locks array (SafeArrayLock), calls the API (VarPtr), unlocks array (SafeArrayUnlock). If you need to increase performance you could use a pointer...
-
You could make like this:
l = VarPtr(bb(0))
For i = 1 To 40000000
d = atof(l)
Next
To avoid locking/unlocking array and improve performance.
-
VanGoghGaming, install this and
Option Explicit
Private Declare Function atof CDecl Lib "msvcrt" (ByRef psz As Any) As Double
Private Sub Form_Load()
Debug.Print atof(ByVal "1.2345")...
-
-
For P-code you can get the addresses for all the functions. Regarding PDB, you can just remove it after patching the executable.
-
It's possible but you need to create an Add-in. This Add-in should force to produce PDB file and replace Main subroutine in VBHeader.lpSubMain to your initialization procedure which calls all the...
-
Thank you but it had a bug related to recursive releasing (just remove UnmapViewOfFile from Class_terminate to avoid this rare case bug).
-
Thank you for testing but i think it isn't related to my class. Remove all the subclassing thing and do the same with UserControl_Resize event.
...
-
Elroy, does mine crash? This should survive both the stop button and end statement.
-
I still don't understand the end goal of this idea. You can enumerate standard modules, moreover you can enumerate functions (if executable has debug symbols) but i don't understand why?
-
You could replace Main subroutine in VBHeader.lpSubMain with your initialization function after compilation but it's better to use predeclared_id objects instead.
-
You need to use any compiled code (DLL/Thunk).
-
Create a separate thread. As far as i remember you can enumerate standard modules (and their ranges) but can't enumerate functions (only heuristic analysis) in native code (only in p-code).
-
I meant we don't need to intercept any msvbvm60 functions (as VanGoghGaming wrote). So if you use an external DLL with a COM object you can use safe subclassing in IDE. Mine uses this approach but...
-
This isn't required. You just need to use an COM object which is released when the code stops.
-
https://www.vbforums.com/showthread.php?896322-Code-in-Form-vs-code-in-Module-Why-one-more-the-other&p=5567231&viewfull=1#post5567231
-
https://www.vbforums.com/showthread.php?788237-VB6-TrickControls
-
https://www.vbforums.com/showthread.php?829387-VB6-TrickSound-class-for-working-with-audio
-
Thank you so much fafalone! I can't give reputation because forum requires spreading to another user.
-
https://www.vbforums.com/showthread.php?862205-Direct2D-Typelib-for-VB6&p=5597152&viewfull=1#post5597152
https://www.vbforums.com/images/ieimages/2023/03/5.png
-
https://www.cyberforum.ru/visual-basic/thread3086025.html#post16785777
-
FOO rgFoo[] = FOO* rgFoo;
PFOO rgFoo[] = FOO** rgFoo;
-
You shouldn't ever use TerminareThread because it causes resources leaking.
-
https://learn.microsoft.com/ru-ru/archive/msdn-magazine/2013/august/directx-real-time-realistic-page-curling-with-directx-c-and-xaml
-
You could do this using Direct3D if you need true bending. It's quite simple to do a fake (without curve bending) in GDI/GDI+ using rotations.
-
Open NUL device, query handle information through ZwQuerySystemInformation SYSTEM_HANDLE_INFORMATION. Search for your handle in the list. SYSTEM_HANDLE_INFORMATION.ObjectTypeIndex contains the type...
-
http://vbstreets.ru/VB/Articles/66343.aspx
http://vbstreets.ru/VB/Articles/66404.aspx
Just open NUL device and get the type number through NtQueryObject.
|
Click Here to Expand Forum to Full Width
|