Very helpful code!
ReplyMr Vinoj,
The article might be great (didn't look into it) but your code (app) has serious bugs. I've got quite a few bugs after the first run itself. But didn't try to run/test again because the first run wiped out the files in a partition where I tried, already.
I have notified the site administrator (he must have contacted you) and have posted a thread regarding in the feedback forum. When you upload your new re-written code (now it is unavailable due to the said fact) please make sure that you have tested the code throughly and there is no serious bugs in it.
Thank you.
ReplyOriginally posted by: Tuan Dang
Hello all,
Personally, I think the problem that lim chang yong posted was from the version of the 16-bit DLL, which was named Disk16.dll. In thunking mechanism document of Microsoft, they said that, their 16-bit Resource compile in BINW16 of Platform SDK could mark the version of 16-bit DLL with 4.0. However, up to now, I've not found this compiler yet. In my opinion, we can solve competely this problem if we get the so-called 16-bit Resource compiler from WINW16 of Microsoft Platform SDK.
BRs.
Originally posted by: lim chang yong
error : Disk32.DLL not found
GetShortPathName(cPathTmp, cPath1, MAX_PATH);
hLib = LoadLibrary(cPath1);
int ab = GetLastError();
if(hLib == NULL){
AfxMessageBox("Disk32.DLL not found");
return;
}
---------------------------------
Debug variables
---------------------------------
cPathTmp : d:\run\edit\debug\disk32.dll
hlib : 0x00000000
ab : 1114
---------------------------------
message box "Disk32.DLL not found"
---------------------------------
Originally posted by: Tuan Dang
In my opinion, the author used the thunking mechanism. This is my summary:
1. Compile thunk script (.thk) to .asm code by thunk.exe. Here is a typical command line:
thunk -t Disk -o Disk.asm Disk.thk
2. Compile .asm code to 16-bit and 32-bit .obj
(tested with MASM 6.11 and MASM 6.15, case sensitive)
ml /DIS_16 /c /W3 /nologo /Zi /Fo Thk16.obj Disk.asm
ml /DIS_32 /c /W3 /nologo /Zi /Fo Thk32.obj Disk.asm
3. Link Thk16.obj as part of Disk16.dll
4. Link Thk32.obj as part of Disk32.dll
However, the main program (Undelete) could not load Disk32.dll. GetLastError() returned code 1114, which means "A dynamic link library (DLL) initialization routine failed."
What is the actually problem and how to solve it?
BRs.
Originally posted by: Tuan Dang
Hello all,
I got a problem when compilling .asm file, which was automatically created by thunk compiler thunk.exe, to 16-bit obj. The compiler always generated these errors:
error A2004: symbol type conflict
These errors didn't occured when I compiled in 32-bit mode. My command line in 16-bit mode is:
ml /DIS_16 /c /W3 /Zi /nologo /Fo Disk16.obj Disk.asm
I think there was no problem with .asm file because it was automatically created.
Please give me some suggestions to solve this problem.
Thank you very much.
Sincerely.
Originally posted by: karthik
when i compile the program . It displays dis32.dll
not found. How can i compile and execute. Please
mail me.
Originally posted by: Koote Bi
how to find thk32.obj?3x
ReplyOriginally posted by: ChiaFong
thunk -t thk disk.thk -o disk.asm
Assemble the assembly-language file produced by the Thunk compiler as a 32-bit object module.
ml /DIS_32 /c /W3 /nologo /coff /Fo thk32.obj disk.asm
Compile the thunk script as follows (if not already compiled): (use the thunk.exe from Platform SDK)
For example: (use Microsoft Macro Assembler 6.1)
Originally posted by: Asif
can anybody tell me the steps for compiling and then working of the software. cause i couldnt find DiskUtil project file.
Reply