Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Building RemETag ISAPI Filter Problems

Posted on 2006-11-02
3
Medium Priority
?
529 Views
Last Modified: 2012-05-05
Can anyone explain how to set up a new project and build this successfully: http://blogs.msdn.com/yanno/archive/2006/03/03/543176.aspx using Microsoft Visual C++ 6?

First I followed the comments from that page and did a new ISAPI Extension Wizard with name 'RemETag' and accepted the defaults.
So I replace the content of the generated RemETag.cpp with the code from the webpage and Build, this gives error: 'remetag.cpp(75) : fatal error C1010: unexpected end of file while looking for precompiled header directive'

So I choose 'do not use precompiled headers' in settings and build, this gives error:

mfcs42d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)
mfcs42d.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj); second definition ignored
   Creating library Debug/RemETag.lib and object Debug/RemETag.exp
EAFXISD.lib(isapi.obj) : error LNK2005: _HttpFilterProc@12 already defined in RemETag.obj
EAFXISD.lib(isapi.obj) : error LNK2005: _GetFilterVersion@4 already defined in RemETag.obj
Debug/RemETag.dll : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.

I searched the error and found that it's to do with the order of the library files, but ignoring them (through settings->input) and then putting them in the library/modules box in the order they appear in the output window does not work, there are more errors from the same library files, any direction is appreciated becuase this is way above my head, but I would love to tinker with this for customizing my server.

ps. I had tried a new project and removing the generated RemETag.cpp and adding a new RemETag.c it really made no difference AFAICT.
0
Comment
Question by:qt0
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 25

Expert Comment

by:clockwatcher
ID: 17864458
Create a new Win32 DLL project (the standard DLL project-- not the MFC-based ISAPI extension).  Select the Empty DLL Project.  Add a file with your filter code to the project.  Add a DEF file to define your DLL exports (HttpFilterProc and GetFilterVersion).  Build your project.

I'd upload a sample project but www.ee-stuff.com seems to be down.

Here's an example of a .DEF file for your filter:

qfilter.DEF
------------
LIBRARY   QFILTER
EXPORTS
   GetFilterVersion   @1
   HttpFilterProc   @2
0
 
LVL 25

Accepted Solution

by:
clockwatcher earned 2000 total points
ID: 17872066
0
 

Author Comment

by:qt0
ID: 17873779
Thank you clockwatcher, the provided example files compiled with no errors, although the isapi filter doesnt seem to actually work but that's nothing to do with you.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What is C++ STL?: STL stands for Standard Template Library and is a part of standard C++ libraries. It contains many useful data structures (containers) and algorithms, which can spare you a lot of the time. Today we will look at the STL Vector. …
This article will show you some of the more useful Standard Template Library (STL) algorithms through the use of working examples.  You will learn about how these algorithms fit into the STL architecture, how they work with STL containers, and why t…
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

670 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question