Solved

windows firewall priviligies code problem

Posted on 2008-10-12
2
259 Views
Last Modified: 2012-05-05
Hello Experts,
i am trying to put a useful coding regarding the windows firewall but i am getting some problem,it doesn't work.




ps
i checked with "regedit" for the right path and everything seems ok
char path[512];

char dspname[] = "Winservice";
 
 
 

int AddToWindowsFirewall(char *displayname,char * path)

{

    

    

    HKEY hKey;

    

    char filedata[MAX_PATH] = "";
 

    wsprintf(filedata,"%s:*:Enabled:%s",path,displayname);
 

    if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"System\\ControlSet001\\Services\\SharedAccess\\Parameters\\FirewallPolicy\\StandardProfile\\AuthorizedApplications\\List",0,KEY_ALL_ACCESS,&hKey)) return 0;

    //if(RegSetValueEx(hKey,path,0,REG_SZ,(unsigned char*)filedata,sizeof(filedata),37)) 

    if(RegSetValueEx(hKey,path,0,REG_SZ,reinterpret_cast<const BYTE*>(filedata),58)) return 0;

    

    RegCloseKey(hKey);

    

}    
 
 
 

int WINAPI WinMain( HINSTANCE,  HINSTANCE, LPSTR, int)

    
 

{

  some code here
 

  AddToWindowsFirewall(dspname,path);
 

 other code here
 
 

}

Open in new window

0
Comment
Question by:kagami01
2 Comments
 
LVL 6

Accepted Solution

by:
ChristianWimmer earned 300 total points
Comment Utility
I think you need to use the Firewall COM API : http://msdn.microsoft.com/en-us/library/aa366453(VS.85).aspx
There is also an example available: http://msdn.microsoft.com/en-us/library/aa364726(VS.85).aspx

If you can read Delphi code you can also check out the whole usage of this API:
http://jedi-apilib.svn.sourceforge.net/viewvc/jedi-apilib/jwscl/trunk/source/JwsclFirewall.pas?revision=645&view=markup
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

Templates For Beginners Or How To Encourage The Compiler To Work For You Introduction This tutorial is targeted at the reader who is, perhaps, familiar with the basics of C++ but would prefer a little slower introduction to the more ad…
There is an easy way, in .NET, to centralize the treatment of all unexpected errors. First of all, instead of launching the application directly in a Form, you need first to write a Sub called Main, in a module. Then, set the Startup Object to th…
This theoretical tutorial explains exceptions, reasons for exceptions, different categories of exception and exception hierarchy.
The viewer will learn additional member functions of the vector class. Specifically, the capacity and swap member functions will be introduced.

728 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

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now