I have created a C++ Win32 Dll.
I have created a .def File which contains the names of the functions in Win32.Dll
As: 1Win32.cpp includes a class library file named gs.tlb
It has functions named sum, strupper

1win32.def as
LIBRARY "1WIN32"

EXPORTS
sum
strupper

When i try to register the DLL i am getting error
The module 1Win32.dll loaded but the entry-point DllRegisterServer was not found.

How to register the dll to be used at different places/environments ?
I am using COM components.

Help would be really appreciated.

Recommended Answers

All 3 Replies

Not all DLLs have to be registered. Just because it uses COM doesn't mean it has to be registered. Just put it in one of the folders in the PATH environment variable.

Ita giving me same error.
External component thrown an error.

I have different functions for shrinking the file, growing the file, checking the version, testng crc.
Example of shrinking function is above. Implementation is same which calls functions from my Class library.
I hope u got a bit idea about my application.

Let me know if can help me to create DLLRegisterServer function.

Thanks

Currently my DLL function is something like

extern "C" __declspec(dllexport)
int _stdcall Shrink(char *largeFile, char *smallFile, int version)
{
    //Initialize COM.
    HRESULT hr = CoInitialize(NULL);

    IShrinkGrowDPtr psShrinkGrowD(__uuidof(ShrinkGrowD));
    long sResult = 0;

    psShrinkGrowD->Shrink(_bstr_t(largeFile), _bstr_t(smallFile), version, &sResult);

    // Uninitialize COM.
    CoUninitialize();
    return sResult;
}

is anytihng wrong with this ? I am a bit new to Win32

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.