در یافت ارور Microsoft MSXML is not installed
با سلام
من یه پروژه ساده درست کردم که به یک وب سرویس وصل بشه و اطلاعاتی رو بگیره.
وقتی بر روی دکمه واقع بر روی فرم بروزر در زمان اجرا کلیک میکنم تا نتیجه رو نشون بده پیغام خطای زیر نمایش داده میشه
نقل قول:
Microsoft MSXML is not installed
مشکل از کجاست؟
ممنون
نقل قول: در یافت ارور Microsoft MSXML is not installed
این دو سایت رو بررسی کنید احتمالا به جواب می رسید (مخصوصا اولین سایت) که میگه Add a call to CoInitialize(nil) in the app's initialization. Both versions then work fine.
http://qc.embarcadero.com/wc/qcmain.aspx?d=108838
https://forums.embarcadero.com/threa...threadID=78702
نقل قول: در یافت ارور Microsoft MSXML is not installed
سلام
این تاپیک ها رو قبلا خونده بودم اما نمیدونم این CoInitialize(nil) زو کجا باید بنویسم؟!
الان منزل هستم و به وب سرویس دسترسی ندارم. آیا
set the property ComInitialization in the ServerController
همین کار رو انجام نمیده؟
نقل قول: در یافت ارور Microsoft MSXML is not installed
شما باید قبل از فرا خوانی دستورات این تابع رو فراخوانی کنید این دستور چیزی شبیه به کرییت هست
نقل قول: در یافت ارور Microsoft MSXML is not installed
حالا اصلا MSXML رو نصب کردید یا نه؟
از ورژن ۶ شروع کنید و برید بالا تا کار کنه.نمیدونم الان ورژن چندش اومده.فکر میکنم آخریش ۸ باشه.
نقل قول: در یافت ارور Microsoft MSXML is not installed
سلام.
فقط نسخه آخرشو دانلود کردم و تست کردم که نشد.
حالا فرا دستوری که دوستمون گفتن تست میکنم نتیجشو اینجا مینویسم
نقل قول: در یافت ارور Microsoft MSXML is not installed
سلام.
پروپرتی که در بالا بهش اشاره کردم "ComInitialization " رو به "ciNormal" تنظیم کردم و به درستی کار کرد!
البته دستور "CoInitialize(nil)" رو هم تست کردم اما نمی شناخت و نمی دونستم کدوم یونیت رو باید اضافه کنم پس بی خیالش شدم.
ممنون از پاسخ دوستان
نقل قول: در یافت ارور Microsoft MSXML is not installed
سلام
دوست عزیز منم هم به همین مشکل برخورد کردم در نوشتن سرویس و ارتباط با وب سرویس
ولی
ComInitialization هر چی گشتم متوجه نشدم شما این Property رو در کجا set کردید و نتیجه گرفتید ؟
ممنون میشم بگی از کجا set کنم
نقل قول: در یافت ارور Microsoft MSXML is not installed
نقل قول:
نوشته شده توسط
homatorabi
سلام
دوست عزیز منم هم به همین مشکل برخورد کردم در نوشتن سرویس و ارتباط با وب سرویس
ولی
ComInitialization هر چی گشتم متوجه نشدم شما این Property رو در کجا set کردید و نتیجه گرفتید ؟
ممنون میشم بگی از کجا set کنم
سلام
من توی اون پروژه(که یک پروژه ساده بود) از اینتراوب استفاده کرده بودم
نقل قول: در یافت ارور Microsoft MSXML is not installed
برای برخی عملیات مثل ارتباط با بانک اطلاعاتی توسط ADO یا پردازش فایلهای XML با MSXML ، برنامه از رابط COM ویندوز استفاده می کنه
هر Thread به صورت جداگانه باید رابط COM رو فراخوانی کنه، در یک برنامه تحت ویندوز، برای Thread اصلی برنامه به صورت پیشفرض یک بار رابط COM فراخوانی میشه اما اگر درون برنامه Thread دیگه ای بسازید و در اون نیاز به استفاده از رابط COM داشته باشید، در شروع کار اون Thread باید تابع CoInitialize رو فراخوانی کنید تا رابط COM فراخوانی بشه
برای پروژه تحت وب مثل Intraweb به صورت پیشفرض رابط COM فراخوانی نمیشه ، با تنظیم ComInitialization برای سرور میتونید تنظیم کنید که رابط COM برای Thread اصلی یا سایر Thread های برنامه فراخوانی بشه اما در صورتی که خودتون Thread حدیدی بسازید باز باید دستور CoInitialize رو فراخوانی کنید و در پایان کار هم با دستور CoUnInitialize اون رو آزاد کنید
Uses
ComObj;
...
CoInitialize(nil);
try
...
finally
CoUnInitialize;
end;
نقل قول: در یافت ارور Microsoft MSXML is not installed
نقل قول:
نوشته شده توسط
hp1361
سلام.
پروپرتی که در بالا بهش اشاره کردم "ComInitialization " رو به "ciNormal" تنظیم کردم و به درستی کار کرد!
البته دستور "CoInitialize(nil)" رو هم تست کردم اما نمی شناخت و نمی دونستم کدوم یونیت رو باید اضافه کنم پس بی خیالش شدم.
ممنون از پاسخ دوستان
بنده هم همین کارو کردم و درست شد.
ممنون از لطف شما و دوستان