메뉴 닫기

ATL License 구하기, Activex License 찾기

  1. 라이센스 찾는코드
    BOOL RequestLicenseKey(BSTR& bstrLicenseKey, CString strProgID)
    {
    //USES_CONVERSION;
    LPCLASSFACTORY2 pClassFactory;
    CLSID clsid;
    BOOL bValidKeyReturned = FALSE;
    // Get the CLSID of the specified ProgID.
    if (SUCCEEDED(CLSIDFromProgID(OLESTR(strProgID), &clsid)))
    {
    // Create an instance of the object and query it for
    // the IClassFactory2 interface.
    if (SUCCEEDED(CoGetClassObject(clsid, CLSCTX_INPROC_SERVER, NULL,
    IID_IClassFactory2, (LPVOID *)(&pClassFactory))))
    {
    LICINFO licinfo;
    // Check to see if this object has a runtime License key.
    if (SUCCEEDED(pClassFactory->GetLicInfo(&licinfo)))
    {
    if (licinfo.fRuntimeKeyAvail)
    {
    HRESULT hr;
    // The object has a runtime License key, so request it.
    hr = pClassFactory->RequestLicKey(0, &bstrLicenseKey);
    if (SUCCEEDED(hr))
    {
    if(bstrLicenseKey == NULL)
    bstrLicenseKey = ::SysAllocString(
    L"<Object returned a NULL license key>");
    else
    // You have the license key.
    bValidKeyReturned = TRUE;
    }
    else
    // Requesting the License key failed.
    switch(hr)
    {
    case E_NOTIMPL:
    bstrLicenseKey = ::SysAllocString(
    L"<The object's class factory does not support"
    L" run-time license keys>");
    break;
    case E_UNEXPECTED:
    bstrLicenseKey = ::SysAllocString(
    L"<An unexpected error occurred when requesting the"
    L" run-time license key>");
    break;
    case E_OUTOFMEMORY:
    bstrLicenseKey = ::SysAllocString(L"<The object's class factory was unable to allocate"L" the license key>");
    break;
    case CLASS_E_NOTLICENSED:
    bstrLicenseKey = ::SysAllocString(L"<The object's class factory supports run-time licensing, but the current machine\r\nitself is not licensed. Thus, a run-time key is not"
    L" available on this machine>");
    break;
    default:
    bstrLicenseKey = ::SysAllocString(L"<An unknown error occurred when requesting the license key>");
    }
    }
    else
    bstrLicenseKey = ::SysAllocString(L"<The object has no runtime license key>");
    }
    else
    bstrLicenseKey = ::SysAllocString(L"<Unable to get the licensing capabilities of the object's class factory>");
    // Make sure you release the reference to the class factory.
    pClassFactory->Release();
    }
    else
    bstrLicenseKey = ::SysAllocString(
    L"<Unable to get the IClassFactory2 interface from the"
    L" specified object>");
    }
    else
    bstrLicenseKey = ::SysAllocString(
    L"<Unable to get the CLSID of the specified object>");
    // Return a BOOL specifying whether or not you were able to get a
    // valid license key.
    return bValidKeyReturned;
    }

 

  1. 복잡한 ActiveX Control 라이센스 간단히 얻기

2.1 요약

윈도우에서 만든 ActiveX Control을 인터넷 상에서 배포하기 위해서는 컨트롤에 대한 라이센스가 있어야 합니다.

하지만 몇가지 단계를 거치게 되어 있어 처음 접하게 되면 쉽지 않음을 느끼게 되는데

그런 분들을 위해서 자동 실행 파일을 만들어 보았습니다.

2.2 본문

준비물 : ActiveX Control 파일 ( dll), 배포할 atl.dll 파일, inf 설치 파일
첨부되어 있는 license.zip 파일을 보시면 GenCab.bat와 ClearAll.bat 라는 파일이 있습니다.

전자는 라이센스가 포함되어 있는 cab 파일을 생성하는 자동 실행 파일이며,

후자는 생성된 모든 일련의 과정을 취소하는 자동 실행파일입니다.

예제

in << GenCab.bat >>
setreg 1 true
makecert -n "CN=4CSoft" -sv %1.pvk %1.cer
cert2spc %1.cer %1.spc
cabarc -s 6144 n %1.cab atl.dll %1.dll %1.inf
signcode -spc %1.spc -v %1.pvk -n "%1" %1.cab
in << ClearAll.bat >>
del %1.spc
del %1.pvk
del %1.cer
del %1.cab
regsvr32 /u %1.dll
  1. 사용방법은 자동 실행 파일의 첫번재 인자로 Dll 이름을 넣어 주시면 됩니다. 예를 들어.

    c:\>GenCab TestDll

    이렇게 하시면 해당 폴더에 많은 파일들이 생성된것을 볼수 있고, cab 파일만 남겨놓고 나머지를 지우고자 할때는

    c:\>ClearAll TestDll

    처럼 하시면 됩니다

동전

285 Comments

  1. g with

    You actually make it seem so easy with your presentation but I find this topic to
    be actually something which I think I would never understand.
    It seems too complex and extremely broad for me. I’m looking forward for your next post, I’ll try to get the hang of it!

  2. cbd oil that works 2020

    May I just say what a comfort to uncover someone who truly
    knows what they’re talking about over the internet. You certainly realize how to
    bring an issue to light and make it important.
    A lot more people must look at this and understand this side of your story.

    It’s surprising you are not more popular since you definitely possess the gift.

  3. Leonia Shotton

    I simply want to say I am all new to blogs and seriously loved your page. Most likely I’m likely to bookmark your blog . You amazingly have exceptional articles and reviews. Appreciate it for sharing with us your blog.

  4. pure cbd oil

    This is very interesting, You are a very skilled blogger. I have joined your rss feed and look forward to seeking more of your great post. Also, I have shared your site in my social networks!

  5. security screens windows

    We absolutely love your blog and find a lot of your post’s to be what precisely I’m looking for. can you offer guest writers to write content for you personally? I wouldn’t mind composing a post or elaborating on some of the subjects you write with regards to here. Again, awesome website!

  6. security screen masters cost

    Hi would you mind letting me know which webhost you’re utilizing? I’ve loaded your blog in 3 completely different web browsers and I must say this blog loads a lot quicker then most. Can you suggest a good web hosting provider at a honest price? Kudos, I appreciate it!

  7. best web hosting

    I am extremely impressed with your writing skills and also with the
    layout on your blog. Is this a paid theme or did you customize it yourself?
    Anyway keep up the excellent quality writing, it is rare to see a
    nice blog like this one today.

  8. cbd sleep capsules

    Oh my benefits! an amazing post guy. Thanks Nonetheless I am experiencing concern with ur rss. Don?t understand why Incapable to subscribe to it. Is there any individual obtaining similar rss trouble? Any person that knows kindly respond. Thnkx

  9. Google

    When I originally left a comment I seem to have clicked the -Notify me when new comments are added- checkbox and now each time a comment is added I receive four emails with the same comment. Is there an easy method you can remove me from that service? Appreciate it!

  10. musafirdigital

    You are so interesting! I do not think I’ve read through a single thing like this before. So wonderful to find another person with genuine thoughts on this subject. Really.. thanks for starting this up. This site is something that’s needed on the internet, someone with a bit of originality!

  11. poker deposit pulsa

    Hi! I could have sworn I’ve visited this website before but after going through a few of the posts I realized it’s new to me. Regardless, I’m definitely pleased I found it and I’ll be bookmarking it and checking back often!

  12. dingdongtogel

    I would like to thank you for the efforts you’ve put in writing this blog. I am hoping to check out the same high-grade content by you in the future as well. In fact, your creative writing abilities has motivated me to get my own, personal site now 😉

  13. dingdong casino

    Having read this I thought it was very enlightening. I appreciate you spending some time and effort to put this informative article together. I once again find myself spending a significant amount of time both reading and posting comments. But so what, it was still worthwhile!

  14. Sbobet777 Indonesia

    Having read this I thought it was really enlightening. I appreciate you taking the time and energy to put this content together. I once again find myself personally spending a lot of time both reading and leaving comments. But so what, it was still worthwhile!

  15. Firmanrahman.com

    I have to thank you for the efforts you’ve put in penning this site. I’m hoping to see the same high-grade blog posts by you later on as well. In fact, your creative writing abilities has encouraged me to get my own, personal site now 😉

  16. totobet hongkong

    After I originally commented I seem to have clicked the -Notify me when new comments are added- checkbox and now each time a comment is added I recieve four emails with the same comment. Is there a means you can remove me from that service? Kudos!

  17. daftar sbobet777

    I’m impressed, I must say. Seldom do I come across a blog that’s both equally educative and engaging, and without a doubt, you have hit the nail on the head. The problem is something that not enough men and women are speaking intelligently about. Now i’m very happy I stumbled across this in my hunt for something concerning this.

  18. soi cau xsmb k8loto

    Good day! I could have sworn I’ve been to this site before but after going through many of the posts I realized it’s new to me. Regardless, I’m definitely happy I came across it and I’ll be bookmarking it and checking back frequently!

  19. joker slot apk

    Howdy, I think your blog could possibly be having internet browser compatibility problems. Whenever I take a look at your web site in Safari, it looks fine however, if opening in Internet Explorer, it’s got some overlapping issues. I just wanted to give you a quick heads up! Aside from that, excellent blog!

  20. daftar poker88

    Next time I read a blog, Hopefully it won’t fail me as much as this particular one. I mean, I know it was my choice to read through, but I truly believed you’d have something helpful to say. All I hear is a bunch of complaining about something that you can fix if you were not too busy searching for attention.

  21. login poker88

    Hello there! I could have sworn I’ve visited this web site before but after looking at a few of the posts I realized it’s new to me. Regardless, I’m definitely happy I came across it and I’ll be book-marking it and checking back often!

  22. joker123 download

    I truly love your website.. Pleasant colors & theme. Did you build this website yourself? Please reply back as I’m looking to create my own personal blog and would like to find out where you got this from or just what the theme is called. Thanks!

  23. joker123 download

    Hello, There’s no doubt that your website could be having internet browser compatibility issues. Whenever I take a look at your blog in Safari, it looks fine however, when opening in IE, it’s got some overlapping issues. I simply wanted to provide you with a quick heads up! Other than that, great site!

  24. joker apk

    Hello there! I could have sworn I’ve been to this website before but after going through many of the articles I realized it’s new to me. Regardless, I’m definitely delighted I came across it and I’ll be bookmarking it and checking back often!

  25. mybest poker

    Hello there! This blog post couldn’t be written much better! Reading through this article reminds me of my previous roommate! He continually kept preaching about this. I most certainly will send this article to him. Fairly certain he will have a good read. Thank you for sharing!

  26. download poker88

    When I originally commented I appear to have clicked on the -Notify me when new comments are added- checkbox and now whenever a comment is added I receive 4 emails with the same comment. Is there a way you are able to remove me from that service? Thanks a lot!

  27. poker idn 88

    This is the right blog for anyone who really wants to find out about this topic. You realize so much its almost hard to argue with you (not that I really will need to…HaHa). You definitely put a brand new spin on a subject that has been written about for decades. Great stuff, just excellent!

  28. daftar dingdongtogel

    May I simply say what a comfort to uncover someone that genuinely understands what they are talking about online. You certainly understand how to bring an issue to light and make it important. More people really need to read this and understand this side of your story. I was surprised you’re not more popular because you definitely possess the gift.

  29. daftar dingdong togel

    Hi, I do believe your website may be having web browser compatibility problems. Whenever I take a look at your site in Safari, it looks fine however, when opening in I.E., it has some overlapping issues. I simply wanted to give you a quick heads up! Other than that, fantastic site!

  30. Katalog Promo Terbaru

    The next time I read a blog, I hope that it won’t disappoint me just as much as this particular one. After all, I know it was my choice to read through, but I really thought you would probably have something interesting to say. All I hear is a bunch of whining about something you can fix if you weren’t too busy searching for attention.

  31. rs primaya

    Hi, I do think this is an excellent site. I stumbledupon it 😉 I may return yet again since I bookmarked it. Money and freedom is the greatest way to change, may you be rich and continue to guide other people.

  32. s1288

    This is the perfect website for anybody who wishes to understand this topic. You know so much its almost hard to argue with you (not that I really will need to…HaHa). You definitely put a new spin on a subject that has been written about for years. Great stuff, just great!

  33. sabung ayam s128

    A fascinating discussion is definitely worth comment. There’s no doubt that that you need to write more on this topic, it might not be a taboo matter but generally people don’t discuss these topics. To the next! Best wishes!!

  34. sabung ayam s128

    I’m amazed, I must say. Seldom do I come across a blog that’s equally educative and engaging, and without a doubt, you’ve hit the nail on the head. The issue is something not enough people are speaking intelligently about. Now i’m very happy I found this in my search for something relating to this.

  35. s128

    This is the perfect web site for anyone who really wants to find out about this topic. You understand a whole lot its almost tough to argue with you (not that I really will need to…HaHa). You definitely put a fresh spin on a subject that’s been discussed for years. Great stuff, just great!

  36. ituGol

    Your style is so unique in comparison to other people I’ve read stuff from. Many thanks for posting when you’ve got the opportunity, Guess I’ll just book mark this site.

  37. Asia88 Slot

    An outstanding share! I have just forwarded this onto a colleague who had been doing a little homework on this. And he in fact bought me breakfast due to the fact that I stumbled upon it for him… lol. So let me reword this…. Thanks for the meal!! But yeah, thanks for spending the time to discuss this matter here on your website.

  38. daftar pokerqq

    The next time I read a blog, I hope that it does not disappoint me just as much as this particular one. I mean, I know it was my choice to read through, nonetheless I really believed you’d have something interesting to say. All I hear is a bunch of moaning about something that you can fix if you were not too busy searching for attention.

  39. sbobet88 casino

    Hi, I do think this is an excellent website. I stumbledupon it 😉 I may come back yet again since i have saved as a favorite it. Money and freedom is the greatest way to change, may you be rich and continue to help others.

  40. Bet88 Mobile

    I must thank you for the efforts you have put in penning this website. I really hope to see the same high-grade blog posts by you later on as well. In fact, your creative writing abilities has motivated me to get my own, personal site now 😉

  41. jago s128

    An outstanding share! I have just forwarded this onto a co-worker who had been conducting a little homework on this. And he actually ordered me lunch because I stumbled upon it for him… lol. So allow me to reword this…. Thank YOU for the meal!! But yeah, thanks for spending some time to discuss this subject here on your internet site.

  42. s128h

    Hi, I do believe this is an excellent web site. I stumbledupon it 😉 I will come back once again since I saved as a favorite it. Money and freedom is the greatest way to change, may you be rich and continue to help other people.

  43. Bandarq Terpercaya

    After looking into a handful of the articles on your site, I seriously appreciate your technique of blogging. I added it to my bookmark webpage list and will be checking back in the near future. Please check out my website too and let me know your opinion.

  44. read more

    This is the appropriate blog for anyone that wishes to find out about this subject. You understand so much its almost tough to say with you (not that I in fact would want?HaHa). You definitely placed a new spin on a topic thats been discussed for years. Excellent stuff, simply terrific!

  45. judi bola

    I blog often and I really appreciate your content. This great article has really peaked my interest. I will book mark your blog and keep checking for new details about once per week. I opted in for your Feed too.

  46. http://99bandarqiuqiu.com/

    Howdy, There’s no doubt that your blog could be having internet browser compatibility issues. Whenever I look at your website in Safari, it looks fine but when opening in Internet Explorer, it’s got some overlapping issues. I simply wanted to give you a quick heads up! Besides that, excellent site!

  47. king4d

    Aw, this was an exceptionally nice post. Spending some time and actual effort to make a very good article… but what can I say… I put things off a whole lot and don’t seem to get anything done.

  48. login totobet

    After exploring a number of the blog articles on your blog, I honestly like your way of writing a blog. I saved as a favorite it to my bookmark site list and will be checking back in the near future. Take a look at my web site too and let me know how you feel.

  49. daftar totobet

    An outstanding share! I have just forwarded this onto a coworker who was conducting a little research on this. And he in fact ordered me lunch simply because I discovered it for him… lol. So allow me to reword this…. Thank YOU for the meal!! But yeah, thanks for spending time to talk about this issue here on your web site.

  50. cara daftar totobet

    The next time I read a blog, I hope that it won’t fail me as much as this particular one. After all, Yes, it was my choice to read through, nonetheless I actually thought you’d have something useful to talk about. All I hear is a bunch of crying about something that you can fix if you weren’t too busy searching for attention.

  51. dominobet

    Having read this I thought it was extremely enlightening. I appreciate you taking the time and energy to put this article together. I once again find myself personally spending a significant amount of time both reading and posting comments. But so what, it was still worth it!

  52. Judi Bandarq

    I really love your site.. Pleasant colors & theme. Did you build this amazing site yourself? Please reply back as I’m hoping to create my own website and would love to find out where you got this from or exactly what the theme is named. Cheers!

  53. 21naga

    I’m impressed, I have to admit. Seldom do I come across a blog that’s both educative and engaging, and without a doubt, you’ve hit the nail on the head. The issue is an issue that not enough people are speaking intelligently about. I’m very happy that I came across this in my hunt for something relating to this.

  54. csn

    Howdy! I could have sworn I’ve been to this blog before but after browsing through many of the articles I realized it’s new to me. Nonetheless, I’m certainly happy I discovered it and I’ll be book-marking it and checking back regularly!

  55. dominobetqq

    Hi, I believe your site could be having browser compatibility issues. When I look at your web site in Safari, it looks fine however when opening in IE, it has some overlapping issues. I merely wanted to give you a quick heads up! Apart from that, wonderful website!

  56. kamera4d

    Good day! I could have sworn I’ve been to this site before but after going through many of the posts I realized it’s new to me. Regardless, I’m certainly pleased I stumbled upon it and I’ll be bookmarking it and checking back often!

  57. https://sosbobet.cc/

    Hello there! This blog post could not be written much better! Looking at this post reminds me of my previous roommate! He always kept talking about this. I’ll send this information to him. Pretty sure he’s going to have a great read. Thanks for sharing!

  58. Kursus Bahasa Inggris

    I was very happy to find this great site. I wanted to thank you for ones time due to this fantastic read!! I definitely enjoyed every little bit of it and i also have you saved as a favorite to check out new stuff in your web site.

  59. s128

    An outstanding share! I’ve just forwarded this onto a co-worker who was doing a little research on this. And he in fact ordered me dinner simply because I stumbled upon it for him… lol. So let me reword this…. Thank YOU for the meal!! But yeah, thanks for spending the time to talk about this issue here on your web page.

  60. s128

    Next time I read a blog, Hopefully it does not fail me just as much as this one. After all, I know it was my choice to read through, but I really thought you’d have something useful to talk about. All I hear is a bunch of whining about something that you could possibly fix if you were not too busy seeking attention.

  61. content

    I?m amazed, I have to state. Really seldom do I come across a blog site that?s both educative and enjoyable, and let me tell you, you have actually hit the nail on the head. Your concept is impressive; the issue is something that inadequate individuals are speaking wisely about. I am very pleased that I came across this in my search for something connecting to this.

  62. MyStarGarden

    Can I just say what a comfort to uncover someone that really knows what they are discussing on the net. You certainly realize how to bring an issue to light and make it important. A lot more people must look at this and understand this side of your story. I can’t believe you’re not more popular given that you certainly have the gift.

  63. QQ77Bet

    Oh my goodness! Awesome article dude! Many thanks, However I am experiencing issues with your RSS. I don’t understand why I am unable to subscribe to it. Is there anyone else having identical RSS issues? Anyone who knows the solution will you kindly respond? Thanx!!

  64. vivo slot

    Next time I read a blog, Hopefully it doesn’t disappoint me as much as this particular one. I mean, I know it was my choice to read, nonetheless I actually thought you’d have something helpful to say. All I hear is a bunch of moaning about something that you could possibly fix if you were not too busy looking for attention.

  65. joker388

    An outstanding share! I have just forwarded this onto a co-worker who has been conducting a little research on this. And he in fact ordered me lunch because I found it for him… lol. So allow me to reword this…. Thank YOU for the meal!! But yeah, thanx for spending the time to discuss this matter here on your web site.

  66. s1288

    Oh my goodness! Impressive article dude! Thanks, However I am experiencing difficulties with your RSS. I don’t understand the reason why I am unable to join it. Is there anybody else getting identical RSS problems? Anyone who knows the solution can you kindly respond? Thanx!!

  67. joker 188

    Hi, I do believe this is a great web site. I stumbledupon it 😉 I will return once again since I book marked it. Money and freedom is the greatest way to change, may you be rich and continue to guide other people.

  68. idnplay poker

    This is the right web site for anybody who hopes to find out about this topic. You understand so much its almost hard to argue with you (not that I personally would want to…HaHa). You definitely put a brand new spin on a subject that’s been discussed for ages. Wonderful stuff, just great!

  69. sbobet88.com

    I blog quite often and I really appreciate your content. Your article has truly peaked my interest. I’m going to bookmark your blog and keep checking for new information about once a week. I subscribed to your RSS feed as well.

  70. sv388

    Hi, I do think this is a great web site. I stumbledupon it 😉 I am going to revisit once again since I bookmarked it. Money and freedom is the best way to change, may you be rich and continue to help other people.

  71. Kertas puyer

    When I originally commented I appear to have clicked on the -Notify me when new comments are added- checkbox and now each time a comment is added I recieve 4 emails with the same comment. There has to be an easy method you are able to remove me from that service? Cheers!

  72. joker slot

    You are so cool! I don’t think I’ve truly read through a single thing like this before. So good to find another person with original thoughts on this topic. Seriously.. many thanks for starting this up. This site is something that’s needed on the internet, someone with some originality!

  73. joker123.net

    Howdy, There’s no doubt that your blog could possibly be having web browser compatibility problems. Whenever I look at your website in Safari, it looks fine however, when opening in I.E., it’s got some overlapping issues. I simply wanted to give you a quick heads up! Aside from that, great blog!

  74. joker123

    Hi, I believe your web site may be having web browser compatibility problems. Whenever I look at your website in Safari, it looks fine however, if opening in Internet Explorer, it has some overlapping issues. I simply wanted to provide you with a quick heads up! Besides that, great website!

  75. best printer

    An impressive share! I’ve just forwarded this onto a friend who had been conducting a little research on this. And he actually bought me dinner because I discovered it for him… lol. So let me reword this…. Thanks for the meal!! But yeah, thanx for spending some time to discuss this subject here on your internet site.

  76. Samsung Printer

    The next time I read a blog, I hope that it does not fail me just as much as this one. After all, I know it was my choice to read through, however I genuinely believed you would probably have something helpful to talk about. All I hear is a bunch of moaning about something that you can fix if you were not too busy seeking attention.

  77. baca selengkapnya

    I blog often and I really thank you for your content. This great article has truly peaked my interest. I will bookmark your site and keep checking for new details about once per week. I subscribed to your Feed as well.

  78. Sofa Sudut Minimalis

    Next time I read a blog, I hope that it doesn’t fail me as much as this one. I mean, I know it was my choice to read through, however I genuinely thought you’d have something useful to talk about. All I hear is a bunch of crying about something that you can fix if you weren’t too busy seeking attention.

  79. https://ardusat.org/

    Good day! I could have sworn I’ve visited your blog before but after going through some of the articles I realized it’s new to me. Regardless, I’m definitely happy I discovered it and I’ll be bookmarking it and checking back regularly!

  80. joker 888

    Having read this I believed it was very enlightening. I appreciate you spending some time and effort to put this article together. I once again find myself personally spending a lot of time both reading and leaving comments. But so what, it was still worth it!

  81. helpful resources

    Youre so awesome! I don’t suppose Ive read anything similar to this prior to. So good to discover someone with some initial thoughts on this subject. realy thank you for starting this up. this internet site is something that is needed online, a person with a little creativity. useful work for bringing something new to the internet!

  82. joker123 apk

    A fascinating discussion is worth comment. There’s no doubt that that you ought to publish more about this subject matter, it may not be a taboo matter but usually folks don’t discuss these subjects. To the next! Many thanks!!

  83. apk joker123

    I’m impressed, I must say. Rarely do I come across a blog that’s both equally educative and interesting, and without a doubt, you’ve hit the nail on the head. The issue is something that not enough men and women are speaking intelligently about. Now i’m very happy I came across this in my search for something relating to this.

  84. link joker123

    Next time I read a blog, I hope that it does not disappoint me just as much as this particular one. After all, Yes, it was my choice to read through, nonetheless I really believed you would probably have something useful to talk about. All I hear is a bunch of crying about something you could fix if you weren’t too busy seeking attention.

  85. daftar sbobet

    I truly love your blog.. Very nice colors & theme. Did you develop this web site yourself? Please reply back as I’m looking to create my own personal blog and would like to find out where you got this from or what the theme is called. Kudos!

  86. sbobet bola

    After looking into a number of the articles on your site, I really like your technique of blogging. I book-marked it to my bookmark site list and will be checking back in the near future. Please visit my web site as well and tell me your opinion.

  87. https://hermes21.net/

    I have to thank you for the efforts you have put in penning this blog. I really hope to check out the same high-grade blog posts from you in the future as well. In truth, your creative writing abilities has inspired me to get my own website now 😉

  88. Google

    Howdy! I could have sworn I’ve visited this site before but after looking at many of the posts I realized it’s new to me. Nonetheless, I’m definitely delighted I stumbled upon it and I’ll be bookmarking it and checking back frequently!

  89. you could try here

    An outstanding share, I simply given this onto a coworker who was doing a little evaluation on this. And also he as a matter of fact acquired me morning meal due to the fact that I discovered it for him. smile. So let me rephrase that: Thnx for the treat! However yeah Thnkx for investing the moment to review this, I really feel strongly regarding it and enjoy learning more on this topic. When possible, as you come to be knowledge, would you mind updating your blog site with more details? It is extremely practical for me. Large thumb up for this article!

  90. https://hermes21.net/

    You are so awesome! I do not believe I’ve read through anything like that before. So great to find somebody with some unique thoughts on this subject. Seriously.. many thanks for starting this up. This website is one thing that is needed on the internet, someone with a little originality!

댓글 남기기

이메일은 공개되지 않습니다.