Newer Entries Older Entries

PDF 보안 제거

View Comments

소개

도구는 PDF 파일의 보안 제거하도록 해준다. 비록 다양한 테스트를 거치지는 않았지만, 보안된 PDF 파일이라면 비밀번호 없이 열리게끔 동작하도록 되어 있다.

당신은 이러한 기능을 원하는가? 많은 보안 PDF 파일들이 본문을 복사하지 못하도록 혹은 인쇄하지 못하도록 설정되어 있다. 이러한 기능은 이따금씩 짜증나도록 하는데, 특히 필요한 자료일 그렇다.

배경

예전에 PDF 파일을 담고 있는 부록 CD 포함된 수험서를 구매했었다. 그런데 안타깝게도 파일은 보안이 걸려있어서 장의 예제들을 복사할 수도 인쇄할 수도 없었다. 그래서 이런 어플리케이션을 개발하게 되었다.

코드사용

도구는 아주 간단하다. 나는 원본 PDF 읽기 위해 PDFSharp 라이브러리를 사용한다. 그리고 새로운 PDF 페이지를 복사하고 저장한다.

Private Sub Form1_Load(ByVal sender As System.Object, _

            ByVal e As System.EventArgs) Handles MyBase.Load

    'Show open file dialog box,

    'this is where you choose what file to load

    Dim ofd As New OpenFileDialog()

    'if you say OK, then continue

    If ofd.ShowDialog() <> Windows.Forms.DialogResult.OK Then

        Exit Sub

    End If

 

    'import document using PDFSharp

    Dim maindoc As PdfDocument = PdfReader.Open(ofd.OpenFile(), _

                                 PdfDocumentOpenMode.Import)

 

    'Create the Output Document as a new PDF Document

    Dim OutputDoc As PdfDocument = New PdfDocument()

 

    'Copy over pages from original document

    For Each page As PdfPage In maindoc.Pages

        OutputDoc.AddPage(page)

    Next

 

    'Show the Save File Dialog box

    Dim sfd As New SaveFileDialog()

    'if user clicks ok then continue, else dispose objects

    If sfd.ShowDialog() <> Windows.Forms.DialogResult.OK Then

        maindoc.Dispose()

        OutputDoc.Dispose()

        Exit Sub

    End If

 

    'save new document

    OutputDoc.Save(sfd.OpenFile(), True)

    'dispose of objects

    maindoc.Dispose()

    OutputDoc.Dispose()

    'close the form

    Me.Close()

End Sub


흥미로운

나는 이렇게 동작하도록 하는데 매우 간단하다는 사실이 흥미롭다. 나는 복잡하리라고 예상했었는데, 만약 그랬었다면 진작에 포기했었을지도 모른다.

 

 

출처 : http://www.codeproject.com/KB/files/PDFDeSecurer.aspx


2009/08/20 15:32 2009/08/20 15:32

8 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

PDF Parser와 FlateDecoder

View Comments

소개

여기에 담긴 전체 코드는 PDF 파일에서 스트림을 추출하고 FlateDecode 부분을 보여주는 방법을 담고 있다. 또한 SharpZipLib 소스를 담고 있어서 모든 실행은 박스 오른 쪽에서 이뤄진다.

사용자 삽입 이미지

코드사용


아래는
OpenDocument 이벤트에 대한 코드로 모든 동작방법을 보여준다.

Dim ofd As New OpenFileDialog()

Dim ow() As PDFParser.ObjectWrapper

Dim sb As New System.Text.StringBuilder()

 

ofd.Filter = "PDF|*.pdf"

ofd.InitialDirectory = _

  System.Environment.GetEnvironmentVariable("%USERPROFILE%") + "\Desktop"

 

If ofd.ShowDialog() = Windows.Forms.DialogResult.OK Then

    ow = PDFParser.Objects.GetAllObjectBlobs( _

            New System.IO.MemoryStream( _

            System.IO.File.ReadAllBytes(ofd.FileName)))

For Each wrapper As PDFParser.ObjectWrapper In ow

    sb.Append("********************" + wrapper.header + _

              "**************************" + vbCrLf)

    If wrapper.header.Contains("FlateDecode") AndAlso Not _

           wrapper.header.Contains("DecodeParms") Then

       Try

        sb.Append(PDFParser.Inflator.FlateDecodeToASCII(New _

                  System.IO.MemoryStream(wrapper.bytes)))

       Catch ex As Exception

        sb.Append("EXCEPTION: " + ex.Message)

       End Try

    End If

    sb.Append(vbCrLf)

    sb.Append("*********************************" & _

              "***************************************" + vbCrLf)

Next

txtInflatedContents.Text = sb.ToString()


세부적인
코드 사용

  1. 정적 메소드 "GetAllObjectBlobs" 사용하고 PDF 파일의 bytes 안에 전달한다.

PDFParser.Objects.GetAllObjectBlobs()

  1. 메소드는 ObjectWrappers 배열을 반환한다. 헤더와 마찬가지로 스트림 안의 bytes 모든 준다.
  2. 이제야 스크림으로 무엇을 할지 결정할 있다. 나는 간단한 디코드 메소드를 구현했다. 솔직하게 말해 어도비사의 명세서를 반영하지 않았기 때문에 암호화된 메소드들은 매번 일일이 대처하거나 비암호화된 메소드들을 보여주어야 한다.
  3. 스크림을 디코드하기로 결정했다면, "FlateDecodeToASCII" 호출하면 된다.

PDFParser.Inflator.FlateDecodeToASCII(New System.IO.MemoryStream(wrapper.bytes))

  1. 이걸로 끝이다. FlateDecode 사용하여 오브젝트 streams 추출하고 그걸 보여주도록 하는 매우 간단한 기능을 부여했다.

흥미로운

  • 코드는 암호화되지 않았다.
  • 오직 스트림이나 아스키만 가능하다.
  • 파일을 압축하지 않은 체로 실험할 알게 사실인데, FlateDecode 표기된 부분들을 갖지고 있지만 불확실한 헤더 예외를 가지고 있다.
  • 아티클은 어도비 라이브사이클 디자이너 ES 8.2 생성한 PDF에서만 실험했다.
  • 코드 예제는 VB.NET 포함되어 있고 모든 라이브러리들은 C# 있다.



출처 : http://www.codeproject.com/KB/files/PDFParser_FlateDecoder.aspx



2009/08/05 16:09 2009/08/05 16:09

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

MethodChain

View Comments

한 동안 Ajax는 화두였습니다. 지금은 예전만 못하지만, 그 당시에는 이상하다 싶을 정도로 난리법석이었죠. "Ajax"라는 단어만 들어가도 세미나는 금새 신청이 완료되었고, 신간서적의 대부분은 베스트셀러 순위에 오를 정도였으니까요. 유행이 그렇듯이 지금은 시큰둥한 반응을 보이지만, 이러한 시류와 상관없이 여전히 골몰하며 연구하는 이가 있습니다. 그 분은 <Ajax 활용>과 <Ajax prototype.js 프로토타입 완전분석>, <웹 표준 Ajax DOM 스크립팅>의 저자이신 김영보님이십니다. Ajax가 화두가 될 당시부터 지금까지 꾸준한 관심을 가지시고 열정적으로 연구하고 계시죠. 지금은 MethodChain라는 프로젝트를 진행하고 계십니다. 처음 뵈었을 때나 지금이나 변함 없는 열정을 보여주시는 김영보님께 박수를 보내면서, 여러분들께 소개합니다.

MethodChain?


MethodChain은 Ajax 라이브러리로 New Paradigm Shift입니다.

MethodChain은 코드를 연결해서 작성할 수 있는 메커니즘을 제공합니다.
MethodChain은 performance 향상 및 메모리 사용을 최소화할 수 있습니다.

코드가 연결된 형태는 시나리오와 오브젝트가 하나가 되어 물이 흘러가듯이 유연한 형태가 됩니다.
시나리오와 오브젝트의 결합을 설계하고 구현하는 과정을 통해 높은 차원의 애플리케이션을 개발할 수 있으며, 보다 높은 품질을 실현할 수 있습니다.

MethodChain은 엘리먼트 오브젝트를 생성하지 않고 HTMLElement에 접근할 수 있는 아키텍처를 제공합니다. 이로 인해 프로그램을 더욱 유연하고 편리하게 작성할 수 있습니다.



더 자세한 내용은 공식홈페이지에서 확인해보세요.

MethodChain
http://www.methodchain.com

2009/04/25 14:39 2009/04/25 14:39

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

소프트웨어 개발자를 꿈꾸는 학생 여러분들을 위한 설문조사에 참여하세요!!

View Comments

저희는 여러분이 하고 계시는 것 과 같은 기관별 컴퓨터과학 교육에 대해 중요한 연구를 수행중입니다. 따라서 귀하의 소중한 의견을 듣고 싶습니다.

http://www.academicsurveyonline.com/Default.aspx?alias=www.academicsurveyonline.com/korea-student09

2009/03/28 15:35 2009/03/28 15:35

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

"IT기업 `과감한 선택`만이 살길"

View Comments

출처 : 디지털타임즈 ""IT기업 `과감한 선택`만이 살길""


새로운 기술로 경영효율화… 인재ㆍ마케팅 투자 오히려 늘려야

프로스트앤설리번 보고서


올해 최악의 경기침체가 예상되는 가운데 IT 기업들이 살아남기 위해서는 직원해고, 가격경쟁 등 근시안적 접근보다는 과감한 전략적 선택을 통해 장기적인 성장 동력을 확보해야 한다는 지적이 나왔다.

시장조사업체 프로스트앤설리번은 최근 `암담함 속에서 희망찾기(Every cloud has a silver lining) : 불황기 IT 기업의 생존 및 성공 전략'이라는 제목의 보고서를 발표했다.

보고서는 올해 경기침체로 대부분의 기업들이 IT 투자를 삭감할 것이 분명해 보인다며 그러나 이럴 때 IT 기업들마저 직원해고, 저가경쟁, 마케팅 및 광고비 삭감 등 근시안적으로 대응해서는 안된다고 지적했다.

대신 보고서는 이제 과감한(tough) 선택을 해야 할 시기라고 규정했다. 성장 추구인지, 긴축정책인지, 혼자 경쟁 또는 파트너십이나 인수합병(M&A) 등 전문분야와 인력, 자산, 파트너 생태계, 공략 시장 등 특수상황을 고려해서 운영해야 한다는 것이다.

보고서는 이를 위한 IT 기업들의 대응책을 ▲비용과 자산관리 부문과 ▲제품과 고객관리 측면에서 구분해 제시했다.

먼저 내부적으로는 새로운 기술을 통해 비용 절감과 생산성 향상에 나설 것을 주문했다. 통합커뮤니케이션(UC) 솔루션이나 컨퍼런싱, 협업 툴 등을 통해 출장 경비를 줄이고 사업모델 변화에 따라 유연하게 인력을 재배치할 수 있다는 것이다. 운영비용 삭감 목표치를 두돼 달성한 직원에 대해 인센티브를 주는 방식으로 이런 기술을 적극 활용할 수 있도록 격려하라고 조언했다.

보고서는 장기적인 성장을 위한 전략적 투자도 중요하다고 지적했다. 특히 불황기 인적 투자는 미래를 위한 가장 저렴하면서도 효과적인 전략이라며 새로운 위치와 과제를 기꺼이 받아들이는 재원을 확보하는데 치중할 것으로 제안했다. 이를 위해 창의적인 보상체계를 마련하는 것도 고려해 볼만하다고 조언했다.

마케팅 및 광고비 삭감도 재고할 것을 주문했다. 소비자의 선택이 까다로워지는 시기인 만큼 경쟁 제품 대비 장점을 더 많이 노출하라는 것. 실제로 지난 90년대 불경기에 마케팅 예산을 늘리고 새로운 인재를 영입한 기업의 시장점유율이 2배 가까이 늘어났다고 보고서는 덧붙였다.

보고서는 외부적으로 제품과 고객관리에 있어서 보안, IP 텔리포니 등 비교적 경기를 덜 타는 제품과 리스, 서비스로서 소프트웨어(SaaS) 등 초기 도입 비용을 줄일 수 있는 제품군을 강화할 필요가 있다고 지적했다. 또 경쟁이 극심한 경기상황이야말로 고객과의 관계에 거름을 뿌리고 신뢰받는 조언자 이미지를 쌓을 수 있는 절호의 기회이므로 고객이 솔루션 구성요소를 자사 상황에 맞춰 고를 수 있도록 하고 모듈화하고 컨설팅 영업을 강화할 필요가 있다고 조언했다.

마지막으로 보고서는 기업과 개인들의 과도한 불안심리가 시장 상황을 더욱 악화시킬 수도 있다며 기업과 고객, 서비스제공자 등 시장의 주요 주체들이 수요와 공급 측면에서 더 신뢰감 있는 태도를 유지한다면 시장은 기대보다 더 빨리 정상화될 수 있을 것이라고 전망했다.

---

인재양성과 적절한 대우, 하드웨어와 소프트웨어의 균형 잡힌 성장 등 개선해야 할 곳이 적잖은데, 이번 위기를 통해 진정한 IT 강국으로 거듭났으면 좋겠습니다.

2009/01/02 00:19 2009/01/02 00:19

2 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

웹 어플리케이션을 위한 ClientCallback 사용자정의 컨트롤

View Comments

사용자 삽입 이미지


소개

이 시나리오에서는 페이지의 한 곳에 많은 항목들의 목록을 가지고 있으며(목록은 순서대로 혹은 계층적으로 나열되어야 한다) 이 목록에서의 항목 선택은, 이것과 관련된 모든 세부사항들은 페이지의 다른 한쪽에 보여지게 된다. 이 모든 것은 포스트백과 플리커(flicker) 없이도 사용자에게 부드럽고 좋은 느낌을 주어야 한다.

예를 들어, 웹 어플리케이션과 관련된 자산(finance)을 가지고 있다. 포트폴리오 내의 stock 스크립트에 관련된 세부사항들을 봐야한다(상당한 스크립트들이 동일한 페이지에 기재되어 있다). 지금 현재 스크립트가 선택되었고, 모든 세부사항들과 스크립트의 현재 상태는 어떠한 포스트백이나 플리커 없이 동일한 페이지에 보여진다.

여기서, 위에 언급한 시나리오는 ASP.NET 2.0에서 소개된 클라이언트 콜백 기능을 사용하면 된다. 이렇게 쉽게 사용할 수 있는 사용자정의 컨트롤 내에 삽입될 수 있는 이러한 기능과 관련된 상당한 코드를 발견했다. 더욱이, 페이지에서 콜백을 여러 번 사용한다면, 상당한 코드를 줄여야 한다. 그래서, 나는 클라이언트 콜백 기능을 사용하기 위해 "사용자 친화적인" 사용자정의 컨트를 개발하려고 한다.

배경

프로젝트에서, 다른 부분을 조작하는 곳은 범주화되어 있다(범주 내에서의 계층적 구조 때문에, 트리 뷰 컨트롤로 결정하였다). 한 곳에서의 선택(노드)을 통해, 동일한 페이지에 있는 그리드 내에 관련된 상태와 자료를 보여주려고 한다. 성능은 고객의 주요 요구 사항들 가운데 하나다. 그래서, 그 요구를 충족시키기 위해, 클라이언트 콜백 기능을 사용하기로 결정했다. 이 예제는 이러한 경험에 기반을 두고 있다.

코드사용

먼저, 사용자정의 컨트롤의 중요한 코드 부분들:

WebControl에서 상속받고, 또한 ICallbackEventHandler 에서 상속받는다.

public class MyCustomCallBackControl : WebControl, ICallbackEventHandler {}


컨트롤의
OnInit() 메서드는 재정의하였다. 컨트롤에 대한 콜백 스크립트는 다음과 같이 삽입되어 있다.

// OnInit was overriden in order to attach a callback handler to the control

protected override void OnInit(EventArgs e)

{

     base.OnInit(e);

           

     string callback = Page.ClientScript.GetCallbackEventReference(this, "input",

                       string.Concat(ID, "OnSuccess"), "context");

     Page.ClientScript.RegisterClientScriptBlock(typeof(MyCustomCallBackControl),

                       ID, string.Concat("function ", ID,

            "Callback(input, context) { ", callback, "; }"), true);

     //Above line - Script added during runtime:

     //function MyCustomCallBackControl1Callback(input, context)

     //{     

     //    WebForm_DoCallback('MyCustomCallBackControl1',

     //          input,MyCustomCallBackControl1OnSuccess,context,null,false);     

     //}

 

     //General meaning of it:

     // WebForm_DoCallback(eventTarget, eventArgument, eventCallback,

     //                    context, errorCallback, useAsync)

}


ICallbackEventHandler 인터페이스 구현과 관련된 GetCallBackResult RaiseCallBackEvent 메서드를 작성해야 한다.

// Event handler for code logic at server side on client-callback

// Event bubbling done here

public event EventHandler MyCallBackEvent;

public void RaiseCallbackEvent(string eventArgument)

{

      argumentParameter = eventArgument;

      if (MyCallBackEvent != null)

      {

          MyCallBackEvent(this, EventArgs.Empty);

      }

}

 

public string GetCallbackResult()

{

      //Returns back the output set during the callback

      return renderedOutput;

}


이제
클라이언트 콜백 사용자정의 컨트롤을 사용할 준비가 되었다.

이제는 페이지에서 컨트롤을 사용하는 방법을 보여주도록 하겠다. 페이지에 컨트롤을 갖다 놓고, 코드 비하인드 핸들러(code-behind handler) 정의하는데, 기본적으로, 서버 코드는 콜백 컨트롤이 호출될 실행된다.

// Bubbled event for Callback control placed

// One can handle the operations required during the callback out here.

protected void CallBackControl_Perform(object sender, EventArgs e)

{

    DataTable dt = RetrieveDataTable(((

      MyCustomControls.MyCustomCallBackControl)sender).ArgumentParameter);

    gvTest.DataSource = dt;

    gvTest.DataBind();

 

    //Setting of the response output for callback

    using (System.IO.StringWriter sw = new System.IO.StringWriter())

    {

        gvTest.RenderControl(new HtmlTextWriter(sw));

        ((MyCustomControls.MyCustomCallBackControl)sender).RenderedOutput = sw.ToString();

    }

}


예제에서는, 콜백 컨트롤에 노드를 바인딩하도록 하겠다. 작업은 자바스크립트를 사용하면 된다.

//Client Side callback event attached

tNode.NavigateUrl = "javascript:OnNodeClick('" + tNode.Value + "');";


이젠
사용자정의 콜백 컨트롤에 첨부된 자바스크립트 함수들의 정의를 남겨두었다. 함수들은 위에 정의된
OnNodeClick 메서드 안에 바인딩된다.

//Node Callback Click Event

function OnNodeClick(nodeID)

{        

    // Method name to call has a fixed naming convention

    // CustomCallbackControl name + "Callback"

        // Parameters to the function would be:

            // 1st : Input

            // 2nd : Context                     

    MyCustomCallBackControl1Callback(nodeID, null);

}       

 

// Function name has a fixed naming convention

// CustomCallbackControl name + "OnSuccess"

function MyCustomCallBackControl1OnSuccess(responseText)

{      

    // Based on responseText, action taken on client side    

    document.getElementById("tdGridView").style.display = "block";

    document.getElementById("gvTest").outerHTML = responseText;  

}


이제
컨트롤에 대한 사용을 마무리하였다. 자바스크립트 함수들을 위한 명명 규칙(naming conventions) 정의되었고,  이에 맞춰 작성해야 한다.

흥미로운

성능은 실제로 좋은데, 아주 간편하고 미끈한 UI는 아주 훌륭하다. 이것은 UpdatePanel과 콜백 컨트롤을 사용하여 둘 간의 비교와 차이를 배우시케 아주 좋은 경험이 된다.

이렇게 만든 사용자정의 컨트롤은 대단히 유용하다. 초보자조차도 내부동작원리에 대한 많은 지식이 없이도 사용할 수 있다(동일한 페이지에 여러 번 사용할 수 있다). 이 컨트롤은 사용하기 쉽고, 나의 웹 자산에 유용한 도구가 된다! :)



출처 :
http://www.codeproject.com/KB/ajax/CallBackCustomControl.aspx


2008/12/22 23:45 2008/12/22 23:45

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

패왕넷 도서나눔 이벤트!!!

View Comments

주인장의 책장정리를 위한 이벤트입니다. 연말을 맞아 책장을 깔끔하게 정리하면서, 도서나눔을 동시에 할수 있으니 얼마나 좋습니까~* 추운 겨울이지만, 이런 나눔으로 훈훈한 겨울되시길.


실용주의 프로그래머 시리즈를 제외한 모든 책은 한 권씩만 신청해주세요. 예전엔, 신청하는데로 보내드렸으나 더 많은 사람들에게 나눠주기 위해 1인당 1권으로 제한하겠습니다.

* 사정이 생겨서 목록이 수정되었습니다. 목록에 있었던 책을 신청하신 분들에게는 죄송하다는 말씀 전합니다.


1.실용주의 프로그래머를 위한 버전 관리 using CVS  발송
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200406020007

2. 실용주의 프로그래머를 위한 단위 테스트 with JUnit  발송
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200411020003

3. 실용주의 프로그래머를 위한 프로젝트 자동화 : 빌드,디플로이,모니터링
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200503230004

4. Effective C++ 3판  발송
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200605300011

5. 한글판 Professional Ajax  발송
http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200611160013


책 상태는 상급입니다. 완전 새 책도 있고, 한 번만 읽은 책도 있고, 아예 안 읽은 책도 있습니다. 간혹 색연필로 중요부분만 밑줄 그었거나 메모를 남긴 책도 있지만, 대체로 깨끗합니다. 필요하시다면, 덧글로 받을 주소지와 연락처 남겨주시기 바랍니다. 매주 금요일 오후나 토요일에 배송해드릴 예정이고, 운송료는 착불(수신자 부담)입니다.

* 착불인 경우에는 수신자 연락처를 반드시 써야하므로, 잊지말고 남겨주세요. 개인정보 노출방지를 위한 비밀덧글은 센스~

2008/12/14 22:11 2008/12/14 22:11

14 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

야후에게 다시 찾아온 기회

View Comments

출처 : 연합뉴스 "MS 발머 "빨리 야후 검색사업 인수 원해""


(서울=연합뉴스) 마이크로소프트(MS)사의 스티브 발머 최고경영자(CEO)는 야후의 검색사업 부문을 가급적 빨리 인수하고 싶다는 강력한 의사를 표시했다.

   발머 CEO는 6일 MS 온라인사업부문의 신임 퀴 루 사장과 합동 기자회견을 갖는 자리에서 MS, 야후 두 회사가 하루 빨리 이 문제에 합의해야 한다면서 이같이 말했다고 경제전문 월 스트리트 저널지 인터넷판이 보도했다.

   그는 현재 양사가 이 거래에 관해 논의중이지는 않다고 전제하고 야후 검색사업 인수를 "더 늦지 않게" 타결해야 할 것이라면서 그같은 거래는 현재 온라인 검색 및 광고시장을 주도하고 있는 구글에 대항할 "확실한 경쟁자"를 탄생시킨다는 장점을 갖는다고 강조했다.

   발머 CEO는 "좋은 아이디어는 보통 천천히 진행하기 보다는 신속히 실행하는 것이 더 낫다. 따라서 가급적 빨리 야후의 검색사업을 인수한다면 우리 모두에게 좋을 것이며 특히 야후에겐 확실히 좋을 것"이라고 덧붙였다.

   야후사 대변인은 이에 대한 논평을 회피했다.

   한편 소식통들은 야후 이사회가 MS와 이 문제로 협상할 지에 대해 아직 결정하지 못한 상태라고 전했다. 그러나 야후의 이사이기도 한 '기업사냥꾼' 칼 아이칸은 공공연하게 MS와 그 거래에 나서야 할 것으로 주장하고 있다.

   MS는 금년 초 야후의 전체 사업을 주당 31달러, 총 475억 달러에 인수하겠다고 발표했다가 야후로 부터 거부당한 뒤 인수가액을 주당 33 달러로 올렸으나 결국 인수의사를 포기한 바 있다.

   양사는 이후 야후의 검색부문을 놓고 협상을 벌였으나 야후사는 MS측의 10억 달러에 5년간 매 해 23억 달러를 추가 지불한다는 제안 마저 퇴짜 놓기도 했다.

   한편 MS의 신인 루 사장은 지난 8월까지 야후사 검색.광고기술 부문 부사장을 역임한 바 있는데 이날 야후 내부에는 MS사를 존경하는 분위기가 많다고 소개하면서 특히 시간이 지날수록 제품의 질이 향상되는, 그 경쟁력을 높게 보고 있다고 전했다.

   야후사에서는 뤼 사장에 앞서 검색기술 부문 부사장 출신의 신 수크터가 MS에 영입돼 오는 22일 실리콘 밸리내 검색기술센터 총지배인에 취임하게 된다.

---

스티브 발머가 야후의 검색사업 부문을 인수하고 싶다는 의사를 표명했습니다. 구글과의 광고 제휴 실패로 MS의 인수 제안을 기다릴 수 밖에 없을 야후로서는 암흑속에 비추는 희미한 빛과 같은 소식이 아닐 수 없습니다. 야후는 MS의 최대 약점으로 꼽히는 인터넷 사업 부문에 대한 노하우를 제공해주고, MS는 야후의 자금난은 해소시켜 줄테니 서로 윈윈하는 거래가 될 수 있을겁니다. 물론, 야후의 지속적인 존립에 대한 문제는 해결되지 않을테지만 말입니다. 아무튼 야후로서는 MS와의 인수 문제와 함께 미래를 위한 혁신에 대한 대안을 내놓아야 할 시기임은 분명합니다.

2008/12/08 17:33 2008/12/08 17:33

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

디버깅 페스티벌 2008 강의 동영상

View Comments

디버깅 페스티벌 2008의 강의 동영상이 공개됐습니다. 윈도우즈의 디버깅에 관심 있으시면 꼭 보세요.


Windows Program Reverse Engineering
http://naggingmachine.tistory.com/420

Windows Exploit
http://naggingmachine.tistory.com/421

Windows Handle
http://naggingmachine.tistory.com/422
2008/12/06 15:12 2008/12/06 15:12

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

V3 Lite의 선전을 기대합니다

View Comments

오랜 기간 국내 백신 프로그램의 대명사이자 절대강자로 군림하던 V3. 국내 백신 업계의 자부심이기도 합니다. 해외 백신 프로그램과의 성능비교에서 여러 문제점이 지적되어 경쟁력을 갖추지 못했다는 지적을 받아왔고, 막강한 무료 백신 프로그램이 보급되면서 점유율이 급격하게 떨어져 버렸지요. 안연구소 입장에서는 절대강자의 위치에 있다가 대안 가운데 하나로 전략했으니 자존심이 많이 구겨졌을겁니다. 얼마전에는 네이버 PC 그린에 엔진을 제공하지 않기로 결정해서 "소프트웨어 무료 제공 + 광고 수익 모델"이 대세가 되어가는 국내업계의 현실에 반하는 결정이라는 우려의 목소리가 높았습니다. 그후 한 동안 잠잠했었는데, 이번에 V3 Lite라는 무료 백신 프로그램을 공개했습니다.


V3 Lite
http://www.v3lite.com/


V3 Lite의 공개로 백신 시장에 다시 한번 지각변동이 일어날지... 그리고, 현재 점유율 1위를 차지하고 있는 알약은 "소프트웨어 무료 제공 + 광고 수익 모델"을 가지고 있는데, V3 Lite의 수익원은 무엇일지 궁금합니다. 알약은 업데이트 때마다 광고 팝업이 뜨는데 반해, V3 Lite는 광고가 전혀 없는데 어디서 수익을 창출해낼지 궁금할 따름입니다. 일단은 성능에서 우위를 갖추고, 안정적인 수익모델도 갖출 수 있길 바랍니다. 이번에 멋진 소프트웨어를 공개한 안철수연구소에 감사함을 표하면서, V3 Lite의 선전을 기대합니다!
2008/11/28 20:57 2008/11/28 20:57

댓글0 Comments (+add yours?)

트랙백0 Tracbacks (+view to the desc.)

Newer Entries Older Entries